OpenStack 二 Keystore组件实验

前言

  • 部署openstack组件时,需先行安装认证服务(keystone),而认证服务是使用Apache运行的,安装完成后才可以创建、管理账号,然后安装镜像服务(glance)、计算服务(nova)、网络服务(neutron)

  • 接着OpenStack 手动部署环境配置,继续配置,为openstack安装keystone组件,以下操作全部在控制节点ct上操作

一.创建数据库实例和数据库用户

mysql -u root -p
create database keystone;
GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'localhost' IDENTIFIED BY 'KEYSTONE_DBPASS';
GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'%' IDENTIFIED BY 'KEYSTONE_DBPASS';
flush privileges;
exit

在这里插入图片描述

二.安装、配置keystone、数据库、Apache

yum -y install openstack-keystone httpd mod_wsgi
cp -a /etc/keystone/keystone.conf{,.bak}
grep -Ev "^$|#" /etc/keystone/keystone.conf.bak > /etc/keystone/keystone.conf

openstack-config --set /etc/keystone/keystone.conf database connection mysql+pymysql://keystone:KEYSTONE_DBPASS@ct/keystone
openstack-config --set /etc/keystone/keystone.conf token provider fernet

在这里插入图片描述
在这里插入图片描述

三.初始化认证服务数据库

su -s /bin/sh -c "keystone-manage db_sync" keystone

在这里插入图片描述

四.初始化fernet 密钥存储库

keystone-manage fernet_setup --keystone-user keystone --keystone-group keystone
keystone-manage credential_setup --keystone-user keystone --keystone-group keystone

在这里插入图片描述

五.配置bootstrap身份认证服务

keystone-manage bootstrap --bootstrap-password ADMIN_PASS \   #初始化openstack,会把openstack的admin用户的信息写入到mysql的user表中,以及url等其他信息写入到mysql的相关表中
--bootstrap-admin-url http://ct:5000/v3/ \                    #admin-url是管理网(如公有云内部openstack管理网络),用于管理虚拟机的扩容或删除;如果共有网络和管理网是一个网络,则当业务量大时,会造成无法通过openstack的控制端扩容虚拟机,所以需要一个管理网
--bootstrap-internal-url http://ct:5000/v3/ \                 #internal-url是内部网络,进行数据传输,如虚拟机访问存储和数据库、zookeeper等中间件,这个网络是不能被外网访问的,只能用于企业内部访问
--bootstrap-public-url http://ct:5000/v3/ \                   #public-url是共有网络,可以给用户访问的(如公有云) #但是此环境没有这些网络,则公用同一个网络
--bootstrap-region-id RegionOne

在这里插入图片描述

六.配置Apache HTTP服务器

echo "ServerName controller" >> /etc/httpd/conf/httpd.conf    #将指定的controller节点追加到apache配置文件中

在这里插入图片描述

七.创建配置文件

ln -s /usr/share/keystone/wsgi-keystone.conf /etc/httpd/conf.d/  #创建软连接到apache配置目录下

systemctl enable httpd      #设置开机自启动
systemctl start httpd       #开启apache服务

在这里插入图片描述

八.配置管理员账户的环境变量

cat >> ~/.bashrc << EOF
export OS_USERNAME=admin		        #用户admin	
export OS_PASSWORD=ADMIN_PASS	        #密码ADMIN_PASS
export OS_PROJECT_NAME=admin            #项目名称admin
export OS_USER_DOMAIN_NAME=Default      #默认用户名
export OS_PROJECT_DOMAIN_NAME=Default   #默认项目名
export OS_AUTH_URL=http://ct:5000/v3    #身份认证
export OS_IDENTITY_API_VERSION=3        #身份认证api版本3
export OS_IMAGE_API_VERSION=2           #镜像api版本2
EOF

source ~/.bashrc                        #加载全局变量
openstack user list                     #显示所有用户

在这里插入图片描述
在这里插入图片描述

九.创建OpenStack 域、项目、用户和角色

openstack project create --domain default --description "Service Project" service 

在这里插入图片描述

十.创建角色

openstack role create user  #创建角色user
openstack role list         #查看角色列表

openstack token issue       #查看是否可以不指定密码就可以获取到token信息并验证认证服务

在这里插入图片描述
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/LI_MINGXUAN/article/details/114867908