感谢指剑大佬发表的博客与视频!感谢所 爱大佬的支持!
本章节全是在controller节点操作
1.创建keystone数据库
进入数据库
mysql -uroot -p000000
创建keystone数据库
create database keystone;
创建keystone用户并授予所有权限本地登陆并设置密码
grant all privileges on keystone.* to 'keystone'@'localhost' identified by '000000';
创建keystone用户并授予所有权限任意地点登陆并设置密码
grant all privileges on keystone.* to 'keystone'@'%' identified by '000000';
退出
\q
截图如下
2.创建随机密码作为管理员令牌
生成伪随机字节输出结果为16位进制数据并指定随即长度10
openssl rand -hex 10
3.安装openstack-keystone,httpd,mod_wsgi服务并配置
1.下载相关服务
yum -y install openstack-keystone httpd mod_wsgi
2.编辑keystone.conf配置文件
vi /etc/keystone/keystone.conf
在[DEFAULT]下添加 admin_token = ADMIN_TOKEN #此处的ADMIN_TOKEN为上一步生成的随机数,请用随机数替换 ADMIN_TOKEN #配置数据库连接 在[database]下添加 connection = mysql+pymysql://keystone:000000@controller/keystone #配置Fernet UUID令牌提供者 在[token]下添加 provider = fernet
部分截图如下
这里的token可能和上面获取的值不同,是因为我获取了两次(前一次的值当时不知道,就再次获取)。
4.初始化Keystone身份认证数据库连接并验证
初始化数据库
su -s /bin/sh -c "keystone-manage db_sync" keystone
检查数据库是否同步
mysql -uroot -p000000 -e 'show tables from keystone;'
截图如下
5.初始化Fernet keys
keystone-manage fernet_setup --keystone-user keystone --keystone-group keystone
6.配置Apache服务(Http)并启动
1.编辑配置文件httpd.conf
vi /etc/httpd/conf/httpd.conf
修改 ServerName controller
2.把镜像中Keystone的配置文件复制到Apache的配置文件下
cp -p /opt/mitaka/wsgi-keystone.conf /etc/httpd/conf.d/
3.开启httpd,并设置开机自启
systemctl start httpd systemctl enable httpd
截图如下
7.创建服务实体和API端点
1.查看admin_token
head /etc/keystone/keystone.conf |grep admin_token
找个地方,保留admin_token 值,建议就文本文档。
2.配置认证令牌
export OS_TOKEN=ADMIN_TOKEN #配置认证令牌,此处ADMIN_TOKEN为之前生成的随机数,请自行替换,
3.配置端点URL
export OS_URL=http://controller:35357/v3
4.配置认证 API 版本
export OS_IDENTITY_API_VERSION=3
5.创建服务实体和身份认证服务
openstack service create --name keystone --description "OpenStack Identity" identity
截图如下
6.创建认证服务的 API 端点
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
截图如下