openstack-o版安装keystone
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了openstack-o版安装keystone相关的知识,希望对你有一定的参考价值。
Keustone身份认证组件是openstack项目中默认的身份认证管理系统,所有的服务都需要keystone认证、根据用户的等级分配相应的权限。
那么我们现在配置最新版本openstack的认证服务keystone
前提准备:Centos7.3、163yum源、openstack-o版源、DNS、时间同步、数据库、rabbitmq、memcache
创建数据库
create database keystone;
为数据库用户赋予权限(赋予一个本地用户权限,一个远程登入权限)
GRANT ALL PRIVILEGES ON keystone.* TO ‘keystone‘@‘localhost‘ IDENTIFIED BY ‘111‘;
GRANT ALL PRIVILEGES ON keystone.* TO ‘keystone‘@‘%‘ IDENTIFIED BY ‘111‘;
查看数据库
安装openstack客户端软件以及keystone的相关软件
yum install python-openstackclient openstack-keystone httpd mod_wsgi -y
如果报错的话,说明你没有配置openstack的源
我们需要配置openstack的源(仅供参考)
配置源成功后,
[[email protected] ~]# yum clean all
[[email protected] ~]# yum makecache
接下来我们配置keystone,配置文件在/etc/keystone/keystone.conf
把配置文件做备份:
[[[email protected] ~]# cp /etc/keystone/keystone.conf /etc/keystone/keystone.conf.ds.bak
配置keystone
[[email protected] ~]# cat /etc/keystone/keystone.conf.ds.bak | grep -v ^# | uniq > /etc/keystone/keystone.conf
[[email protected] ~]# sed -i ‘/^\[database\]$/a\connection = mysql+pymysql://keystone:[email protected]/keystone‘ /etc/keystone/keystone.conf
[[email protected] ~]# sed -i ‘/^\[token\]$/a\provider = fernet‘ /etc/keystone/keystone.conf
同步数据库
[[email protected] ~]# su -s /bin/sh -c "keystone-manage db_sync" keystone
注意:O版的会有38个表
初始化fernet keys
[[email protected] ~]# keystone-manage fernet_setup --keystone-user keystone --keystone-group keystone
创建访问该实体的三个api端点
[[email protected] ~]# keystone-manage bootstrap --bootstrap-password ADMIN_PASS \
> --bootstrap-admin-url http://wang02:35357/v3/ \
> --bootstrap-internal-url http://wang02:5000/v3/ \
> --bootstrap-public-url http://wang02:5000/v3/ \
> --bootstrap-region-id RegionOne
配置apache服务
[[email protected] ~]# vi /etc/httpd/conf/httpd.conf
[[email protected] ~]# ln -s /usr/share/keystone/wsgi-keystone.conf /etc/httpd/conf.d/
创建环境变量
[[email protected] ~]# export OS_USERNAME=admin
[[email protected] ~]# export OS_PASSWORD=ADMIN_PASS
[[email protected] ~]# export OS_PROJECT_NAME=admin
[[email protected] ~]# export OS_USER_DOMAIN_NAME=Default
[[email protected] ~]# export OS_PROJECT_DOMAIN_NAME=Default
[[email protected] ~]# export OS_IDENTITY_API_VERSION=3
[[email protected] ~]# export OS_AUTH_URL=http://wang02:35357/v3
创建一个域
[[email protected] ~]# openstack project create --domain default \
> --description "Service Project" service
创建一个demo的项目
[[email protected] ~]# openstack project create --domain default \
> --description "Demo Project" demo
创建一个demo用户
[[email protected] ~]# openstack user create --domain default --password DEMO_PASS demo
创建一个demo的角色
[[email protected] ~]# openstack role create user
将demo角色加入到demo项目中的demo用户中
[[email protected] ~]# openstack role add --project demo --user demo user
编辑/etc/keystone/keystone-paste.ini
在[pipeline:public_api], [pipeline:admin_api], and [pipeline:api_v3] 三个地方
移走:admin_token_auth
取消刚才设置的环境变量
unset OS_AUTH_URL OS_PASSWORD
验证操作:
[[email protected] ~]# openstack --os-auth-url http://wang02:35357/v3 \
> --os-project-domain-name default --os-user-domain-name default \
> --os-project-name admin --os-username admin token issue
Password:
密码是 ADMIN_PASS
到此为止,keystone搭建成功。
为了每次都得输入环境变量,我们创建一个脚本
[[email protected] ~]# vi 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=ADMIN_PASS
export OS_AUTH_URL=http://wang02:35357/v3
export OS_IDENTITY_API_VERSION=3
export OS_IMAGE_API_VERSION=2
验证一下脚本:
[[email protected] ~]# . admin-openrc
[[email protected] ~]# openstack token issue
到这里我们的keystone算是搭建完成。如果搭建过程中遇到问题或有不对的地方,大家可提出来,我们共同进步。
以上是关于openstack-o版安装keystone的主要内容,如果未能解决你的问题,请参考以下文章
OpenStack Train版-2.安装keystone身份认证服务