Keystone安装
一、安装之前需创建数据库
mysql -u root -p123456 以root用户身份连接到数据库服务器
CREATE DATABASE keystone; 创建keystone数据库
GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'localhost' \
IDENTIFIED BY '123456';授权
GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'%' \
IDENTIFIED BY '123456';授权
安装配置文件
yum install openstack-keystone httpd mod_wsgi 安装软件包
(mysql数据库报错yum install openstack-keystone httpd mod_wsgi 未解决)
二、编辑/etc/keystone/keystone.conf
openssl rand -hex 10 取一个随机数 67a7d61471561e776664
1在该[database]部分中,配置数据库访问:
[database]
connection = mysql+pymysql://keystone:123456@controller/keystone
2在该[token]部分中,配置Fernet令牌提供程序:
[token]
provider = fernet 打开注释
3 admin_token = 67a7d61471561e776664
三、执行
su -s /bin/sh -c "keystone-manage db_sync" keystone 填充身份数据库
keystone-manage db_sync 这个才是数据库吧
四、初始化Fernet密钥存储库
keystone-manage fernet_setup --keystone-user keystone --keystone-group keystone
keystone-manage credential_setup --keystone-user keystone --keystone-group keystone
五、引导身份服务
keystone-manage bootstrap --bootstrap-password 123456 --bootstrap-admin-url http://controller:35357/v3/ --bootstrap-internal-url http://controller:5000/v3/ --bootstrap-public-url http://controller:5000/v3/ --bootstrap-region-id RegionOne
配置Apache HTTP服务器
/etc/httpd/conf/httpd.conf 配置
ServerName controller
ln -s /usr/share/keystone/wsgi-keystone.conf /etc/httpd/conf.d/创建连接
# systemctl enable httpd.service 自启动
# systemctl start httpd.service 启动
$ export OS_USERNAME=admin
$ export OS_PASSWORD=123456
$ export OS_PROJECT_NAME=admin
$ export OS_USER_DOMAIN_NAME=Default
$ export OS_PROJECT_DOMAIN_NAME=Default
$ export OS_AUTH_URL=http://controller:5000/v3
$ export OS_IDENTITY_API_VERSION=3
(报错,前几部来一遍
创建一个域,项目,用户和角色
创建新域管理员
openstack domain create --description "An Example Domain" example
创建service 项目管理员
openstack project create --domain default --description "Service Project" service
非管理员创建demo项目和用户
创建demo项目
openstack project create --domain default --description "Demo Project" demo
创建demo用户
openstack user create --domain default --password-prompt demo
创建用户角色
openstack role create user’
添加用户角色
openstack role add --project demo --user demo user
验证keystone
unset OS_AUTH_URL OS_PASSWORD 取消环境变量
作为管理员用户请求token
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
作为demo用户获取token
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
使用脚本配置管理员还是客户demo
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:5000/v3
export OS_IDENTITY_API_VERSION=3
export OS_IMAGE_API_VERSION=2
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
执行脚本之后,使用
openstack token issue