进行管理,没有用户,只能用token登录,之前我们创建了一个10个字节的随机数作为token使用,写在了配置文件中,现在要使用这个token:
export OS_TOKEN=78870e7a240c3463dd4c
export OS_URL=http://192.168.179.140:35357/v3
export OS_IDENTITY_API_VERSION=3
export PS1='[\u@\h \W(keystone_tokenv3)]\$ '
P.S.: 使用v3验证,记得要加domain:
记住: 如果我们使用v3验证的话,除了role外,其他我们还要指定domain
创建domain
查看帮助:
openstack --help | grep domain
创建管理命令:
openstack domain create
openstackdomain set --disable
openstackdomain delete
openstackdomain show
用户管理: v3注意domain
用户管理:
openstack role create _member_
这里需要注意的是:除了角色不需要指定domain以外,其他的比如用户,项目都要指定domain
创建项目project: 创建admin和servicesproject
新建keystone_admin_v3
unset OS_TOKEN
unset OS_URL
unset OS_IDENTITY_API_VERSION
export OS_PROJECT_DOMAIN_NAME=default
export OS_USER_DOMAIN_NAME=default
export OS_PROJECT_NAME=admin
export OS_USERNAME=admin
export OS_PASSWORD=redhat
export OS_IDENTITY_API_VERSION=3
export OS_AUTH_URL=http://192.168.179.140:5000/v3
export OS_IMAGE_API_VERSION=2
export PS1='[\u@\h \W(keystone_adminv3)]\$ '
使用keystone_adminv3来验证出现如下信息,说明我们没有定义services
切换到token登录并创建service和endpoint
用户(无论是Dashboard, API Client)都需要访问Keystone获取服务列表,以及每个服务的地址(Openstack中称为Endpoint).访问服务的地址.
Endpoint可以理解为访问服务url
有管理员服务 adminurl
内部服务 internalurl
公共服务publicurl
openstack service create --name keystoneidentity
keystonev2的方法如下:
openstackendpoint create --region RegionOne --publicurl '' --internalrul '' --adminurl''
keystonev3的方法如下:
openstack endpoint create --region RegionOneidentity public http://192.168.179.140:5000/v3
openstack endpoint create --region RegionOneidentity internal http://192.168.179.140:5000/v3
openstack endpoint create --region RegionOneidentity admin http://192.168.179.140:35357/v3
添加完服务和endpoint之后,source keystone_adminv3,即可切换到用户密码登录。
删除v3的配置: