ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

OpenStack部署(二、有更新)keystone

2021-12-18 18:33:58  阅读:166  来源: 互联网

标签:domain 部署 -- export keystone openstack OpenStack OS


目录

创建Keystone数据库

在控制节点(controller)的MariaDB上创建Keystone数据库:

mysql -uroot -p123456	
# -u root指定登录mariaDB的用户为root
#-p123456 root用户登录maraiDB的密码为“123456”

创建Keystone数据库:

CREATE DATABASE keystone;

创建keystone数据库用户keystone,并开放本地/远程登录,登录密码为“123456”

GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'localhost' IDENTIFIED BY '123456';
GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'%' IDENTIFIED BY '123456';
# 按ctrl + c从数据库退出

安装keystone组件

在控制节点(controller)上安装keystone组件:

yum install openstack-keystone httpd mod_wsgi -y  

配置keystone配置文件:

备份原始配置文件

cp /etc/keystone/keystone.conf /etc/keystone/keystone.conf.bak

将原始配置文件去掉带”#“号行:

cat /etc/keystone/keystone.conf.bak | grep -v ^# | uniq > /etc/keystone/keystone.conf

编辑配置文件 /etc/keystone/keystone.conf

cat <<EOF > /etc/keystone/keystone.conf
	[database]
connection=mysql+pymysql://keystone:123456@controller/keystone 
[token]
provider = fernet
EOF

填充keystone数据库:

su -s /bin/sh -c "keystone-manage db_sync " keystone
# 无返回任何结果则表示填充正常!

初始化Fernet key库:

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

引导身份认证服务,配置keystone的相关认证信息:(未来openstack登录界面的管理员密码,在此设置)

keystone-manage bootstrap --bootstrap-password 123456 \
  --bootstrap-admin-url http://controller:5000/v3/ \
  --bootstrap-internal-url http://controller:5000/v3/ \
  --bootstrap-public-url http://controller:5000/v3/ \
  --bootstrap-region-id RegionOne

参数说明:
–bootstrap-password:keystone管理员密码
–bootstrap-admin-url:管理员认证URL
–bootstrap-internal-url:内部认证URL
–bootstrap-public-url:外部认证URL
–bootstrap-region-id:指定区域名

配置Apache服务:

在Apache配置文件中设置ServerName为本机主机名,的第96行加入”ServerName controller“

vi +96 /etc/httpd/conf/httpd.conf

为wsgi-keystone.conf创建链接到Apache服务目录:

ln -s /usr/share/keystone/wsgi-keystone.conf /etc/httpd/conf.d/

重启httpd服务,并加入开机自启:

systemctl enable httpd.service
systemctl start httpd.service
 
systemctl status httpd.service

验证

创建环境脚本

我们可以模拟一个帐号登录环境,比如管理员登录,那就需要创建一个环境脚本:
cat <<EOF >> /root/admin-openrc
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
EOF
参数说明:

export OS_USERNAME=admin:登录keystone的admin(管理员)帐号
export OS_PASSWORD=123456:keystone预设的密码
export OS_PROJECT_NAME=admin:指定Openstack的项目类型
export OS_USER_DOMAIN_NAME=Default:指定Openstack用户所属域
export OS_PROJECT_DOMAIN_NAME=Default:指定Openstack项目所属域
export OS_AUTH_URL=http://controller:35357/v3:指定认证链接
export OS_IDENTITY_API_VERSION=3:指定认证版本
执行脚本:. /root/admin-openrc
查看当前环境:env | grep OS

openstack token issue

鉴权通过,创建一个domain(域),名为“example”,描述为“Test Example”

openstack domain create --description "Test Example" example

在默认域(default domain)下,创建一个project(项目),名为“service”,描述为“Service Project”

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

查看当前环境下的所有项目(project)

openstack project list

一般情况下,除了管理员外,我们还需要一些非特权项目以及用户

在默认域下(default domain)下,创建一个project(项目),名为“demo”,描述为“Demo Project”

openstack project create --domain default --description "Demo Project" demo

在默认域下创建一个用户,名为“leon”,后置手动设置密码(下图红框处)

openstack user create --domain default --password-prompt leon

创建Openstack的“普通用户”角色,名为“user”

openstack role create user 

查看当前都有哪些角色

openstack role list

将用户“leon”在“demo”项目中的角色,规划为“普通用户”的角色

openstack role add --project demo --user leon user
# (指令不会返回结果)

验证登录:

unset OS_AUTH_URL OS_PASSWORD #取消环境变量的密码

用户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
password:123456

用户leon登录:

openstack --os-auth-url http://controller:5000/v3 \
  --os-project-domain-name Default --os-user-domain-name Default \
  --os-project-name demo --os-username leon token issue
password:123456

标签:domain,部署,--,export,keystone,openstack,OpenStack,OS
来源: https://blog.csdn.net/qq_52572989/article/details/122014611

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有