OpenStack双节点部署—M Keystone(身份认证服务)
Keystone安装
- 一、数据库配置
- 二、安装并配置Keystone
- 三、配置Apache服务
- 四、创建Service和API Endpoints
- 五、创建domain、project、user、role
- 六、验证Keystone服务
一、数据库配置
Controller节点
# mysql -uroot -p123456 MariaDB [(none)]> create database keystone; (创建keystone数据库) MariaDB [(none)]> grant all privileges on keystone.* to 'keystone'@'%' identified by '123456'; (为数据库的Keystone用户授予所有权限并支持远程登录) MariaDB [(none)]> grant all privileges on keystone.* to 'keystone'@'localhost' identified by '123456'; (为数据库的Keystone用户授予所有权限并支持本地登录) MariaDB [(none)]> exit
二、安装并配置Keystone
Controller节点
1.安装Keystone软件包
# yum install -y openstack-keystone httpd mod_wsgi
2.生成一个随机值作为初始配置期间的管理令牌:
# openssl rand -hex 10 147d2a4150e44cb2c536
3.编辑/etc/keystone/keystone.conf
做如下配置与修改,并使用刚刚生成的随机值替换:
注:在vi编辑器中使用 “冒号+反斜杠+搜索内容” 去找到存在“搜索内容”地方,按N键可以继续跳转到其他以你“搜索内容”相同的其他地方,“搜索内容”可以含有符号
# vi /etc/keystone/keystone.conf 配置admin_token [DEFAULT] admin_token = 147d2a4150e44cb2c536 配置数据库连接: [database] connection = mysql+pymysql://keystone:123456@controller/keystone 配置provider: [token] provider = fernet
4.同步数据库:
同步成功后无返回值
# su -s /bin/sh -c "keystone-manage db_sync" keystone
注:进入Keystone数据库查看是否有数据表,验证是否同步成功。
5.初始化密匙:
# keystone-manage fernet_setup --keystone-user keystone --keystone-group keystone
三、配置Apache服务
Controller节点
1.编辑/etc/httpd/conf/httpd.conf文件
找到ServerName,去掉注释符号#,将www.example.com:80改为controller
# vi /etc/httpd/conf/httpd.conf ServerName controller
将/opt/mitaka/目录下的wsgi-keystone.conf文件拷贝至/etc/httpd/conf.d/
不知道wsgi-keystone.conf文件在哪可以使用命令查找(filename为你所想查找的文件名)
# find / -name filename # cp -rvf /opt/mitaka/wsgi-keystone.conf /etc/httpd/conf.d/
# systemctl enable httpd.service # systemctl start httpd.service
四、创建Service和API Endpoints
Controller节点
1.配置身份认证令牌 # export OS_TOKEN=147d2a4150e44cb2c536 2.配置端点URL # export OS_URL=http://controller:35357/v3 3.配置API版本 # export OS_IDENTITY_API_VERSION=3
4.为Keystone本身创建服务 # openstack service create --name keystone --description "OpenStack Identity" identity
然后创建Keystone身份认证服务的端点:
身份认证服务管理了一个与环境相关的API端点目录,使用这个目录来决定如何与创建环境中的其他服务进行通信。
Openstack使用三个API端点代表每种服务:admin、internal和public,默认情况下,管理API端点允许修改用户和租户,而公共和内部API不允许这些操作,此次安装为所有端点和默认“RegionOne”区域都使用管理网络。
1.创建公共端点 # openstack endpoint create --region RegionOne identity public http://controller:5000/v3 2.创建外部端点 # openstack endpoint create --region RegionOne identity internal http://controller:5000/v3 3.创建管理端点 # openstack endpoint create --region RegionOne identity admin http://controller:35357/v3
五、创建domain、project、user、role
Controller节点
1.创建默认(defaultt)的domain
# openstack domain create --description "Default Domain" default
2.创建名字为admin的project
# openstack project create --domain default --description "Admin Project" admin
3.创建名字为admin的user
# openstack user create --domain default --password-prompt admin
(回车之后输入自定密码,我设为:123456)
4. 创建名字为admin的role
# openstack role create admin
5. 进行关联
# openstack role add --project admin --user admin admin (无返回值)
6.创建名为service的project
# openstack project create --domain default --description "Service Project" service
7. 创建名为demo的project
# openstack project create --domain default --description "Demo Project" Demo
8. 创建名为demo的user
# openstack user create --domain default --password-prompt demo
(回车之后输入自定义密码,我设为:123456)
9. 创建名为demo的role
# openstack role create user
10. 进行关联
# openstack role add --project demo --user demo user (无返回值)
六、验证Keystone服务
Controller节点
1.不生效临时变量
# unset OS_TOKEN OS_URL
2.查看admin用户,请求身份验证令牌
# 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
(回车之后,输入你之前设置的admin用户的密码:123456)
3. 查看demo用户,请求身份验证令牌
# openstack --os-auth-url http://controller:35357/v3 --os-project-domain-name default \ --os-user-domain-name default --os-project-name demo --os-username demo token issue
(回车之后,输入你之前设置的admin用户的密码:123456)
4. 写入环境变量
创建/root/admin-openrc文件
添加:
# vi /root/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:35357/v3 export OS_IDENTITY_API_VERSION=3 export OS_IMAGE_API_VERSION=2
创建/root/demo-openrc文件
添加:
# vi /root/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
5.生效并验证
# . /root/admin-openrc # openstack token issue
阅读更多
- OpenStack 认证服务 KeyStone部署(三)
- juno版OpenStack部署流程--添加认证服务(keystone)(2)
- 简易手动部署多节点的Openstack(L版)——贰(安装Keystone服务)
- OpenStack-M版(Mitaka)搭建- – -身份认证服务(Keystone)篇
- Centos7手动部署Openstack Mitaka版安装配置--(三)安装keystone认证服务
- OpenStack Newton版本部署----认证服务(keystone)
- openstack实战部署Keystone认证服务及理论介绍
- OpenStack(Kilo版本)控制节点基本环境和身份验证服务的安装部署
- OpenStack实践系列②认证服务Keystone
- [ Openstack ] OpenStack-Mitaka 高可用之 认证服务(keystone)
- OpenStack 认证服务 KeyStone [二]
- cenos7.1 安装openstack kilo 心得之六 添加身份认证服务
- Openstack组件部署 — Keystone功能介绍与认证实现流程
- OpenStack 认证服务 KeyStone [二]
- openstack安装部署6——网络服务(控制节点&计算节点)
- Openstack 网络服务 Neutron计算节点部署(十)
- OpenStack入门修炼之nova服务(计算节点)的部署与测试(11)
- OpenStack主要逻辑模块–Keystone身份验证服务