$export OS_URL=http://Controller:35357/v3 $ export OS_IDENTITY_API_VERSION=3
创建服务实体和API端点 $openstack service create \\
--name keystone --description \
$ openstack endpoint create --region RegionOne \\ identity public http://Controller:5000/v3
$ openstack endpoint create --region RegionOne \\ identity internal http://Controller:5000/v3
$ openstack endpoint create --region RegionOne \\ identity admin http://Controller:35357/v3
11
创建域、工程、用户及角色
创建默认域
$openstack domain create --description \
创建管理工程
$ openstack project create --domain default \\ --description \
创建admin用户
$openstack user create --domain default \\ --password-prompt admin User Password:(123456)
Repeat User Password:(123456)
12
创建角色
$openstack role create admin
增加管理角色至admin工程和用户
$ openstack role add --project admin --user admin admin
与以上操作类似,创建一个包含一个唯一用户的服务工程 $ openstack project create --domain default \\ --description \
$ openstack project create --domain default \\ --description \ $ openstack user create --domain default \\ --password-prompt demo (passwd:123456)
$ openstack role create user
$openstack role add --project demo --user demo user
验证操作
在管理节点上执行以下操作
A. 鉴于安全因素,移除临时的token认证授权机制
#vim /etc/keystone/keystone-paste.ini
将[pipeline:public_api], [pipeline:admin_api],和[pipeline:api_v3]中的admin_token_auth移除,注意不是删除或注释该行。 B. 取消设置环境变量
$ unset OS_TOKEN OS_URL C. 请求认证环
利用admin用户请求
$openstack --os-auth-url http://Controller:35357/v3 \\
--os-project-domain-name default --os-user-domain-name default \\ --os-project-name admin --os-username admin token issue
13
利用demo用户请求
$openstack --os-auth-url http://Controller:5000/v3 \\
--os-project-domain-name default --os-user-domain-name default \\ --os-project-name demo --os-username demo token issue
创建OpenStack客户端环境脚本
前面操作是利用环境变量及OpenStack客户端命令行方式与认证服务交互,OpenStack可以通过OpenRC脚本文件来提高认证效率。
$ vim admin-openrc
export OS_PROJECT_DOMAIN_NAME=default export OS_USER_DOMAIN_NAME=default export OS_PROJECT_NAME=admin export OS_USERNAME=admin export OS_PASSWORD=123456
export OS_AUTH_URL=http://Controller:35357/v3 export OS_IDENTITY_API_VERSION=3 export OS_IMAGE_API_VERSION=2
$ vim demo-openrc
export OS_PROJECT_DOMAIN_NAME=default export OS_USER_DOMAIN_NAME=default export OS_PROJECT_NAME=demo export OS_USERNAME=demo export OS_PASSWORD=123456
export OS_AUTH_URL=http://Controller:5000/v3 export OS_IDENTITY_API_VERSION=3 export OS_IMAGE_API_VERSION=2
增加脚本执行权限
$ chmod +x admin-openrc $ chmod +x demo-openrc
可以通过执行以上脚本来快速切换工程及用户,例如: $ . admin-openrc 请求认证Token
$ openstack token issue
14
镜像服务
基本配置
登录mysql客户端,创建表及用户,并授予相应的数据库权限 $ mysql -u root –p
CREATE DATABASE glance;
GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'localhost' \\ IDENTIFIED BY 'GLANCE_DBPASS';
GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'%' \\ IDENTIFIED BY 'GLANCE_DBPASS'; (注:密码采用了默认)
用户认证
利用客户端脚本获取认证 $ . admin-openrc
创建glance用户
$openstack user create --domain default --password-prompt glance User Password:(123456) Repeat User Password:
$ openstack role add --project service --user glance admin $ openstack service create --name glance \\ --description \
15