1.获取keystone
# apt-get insatll -y keystone
2.修改配置文件
文件路径: /etc/keystone/keystone.conf
最后文件中的配置如下:
admin_token = openstack
admin_bind_host=0.0.0.0
admin_port=35357
public_port=5000
public_endpoint=http://localhost:%(public_port)s/
admin_endpoint=http://localhost:%(admin_port)s/
debug = True
verbose = True
log_file=/var/log/keystone/keystone.log
connection = mysql://keystoneuser:openstack@localhost/keystone
3.创建keystone数据库
# mysql -uroot -p -e "CREATE DATABASE keystone"
# mysql -uroot -p -e "GRANT ALL PRIVILEGES ON keystone.* TO'keystoneuser'@'localhost'IDENTIFIED BY 'openstack';"service keystone status
初始化数据库的表结构
# keystone-manage db_sync
4.重启keystone服务
# service keystone restart
5.创建keystone用户
创建一个tenant
# keystone tenant-create --name=admin
创建一个用户
# keystone user-create --name=admin --pass="opensatck"
创建一个角色
# keystone role-create --name=admin
关联角色,用户和tenant
# keystone user-role-add --user admin --role admin --tenant admin
6.定义services和API endpoints
# keystone service-create --name keystone --type identity --description 'OpenStack Identity'
为了以后访问方便,我将无限网卡设置为静态IP 192.168.0.101
# keystone endpoint-create --service-id 01fa6ef7e6f847c4a684bfd29c2e9fb5 --publicurl 'http://192.168.0.101:5000/v2.0' --adminurl 'http://10.80.80.10:35357/v2.0' --internalurl 'http://10.80.80.10:5000/v2.0'
7.创建一个认证文件
文件存放位置可以在默认登陆的用户文件夹下,方便访问,我放在了 /root 下,文件名可以自己拟定,我跟树种保持一致,叫做openstackrc,文件内容如下:
export OS_TENANT_NAME=admin
export OS_USERNAME=admin
export OS_PASSWORD=openstack
export OS_AUTH_URL="http://192.168.0.101:5000/v2.0/"
这样以后每次登陆时运行
# source openstackrc
即可导入以上环境变量,没有这个环境变量是不能访问keystone 的。
注意:如果读者需要自行修改用户名称或者密码,请注意各处保持一致,我因为一处拼写错误耽误了很长时间。