OpenStack 认证服务 KeyStone连接和用户管理(五)

时间:2022-11-03 14:26:42

一) 创建环境变量链接keyston

vim adminrc
export OS_USERNAME=admin
export OS_PASSWORD=redhat
export OS_PROJECT_NAME=admin
export OS_USER_DOMAIN_NAME=Default
export OS_PROJECT_DOMAIN_NAME=Default
export OS_AUTH_URL=http://controller:357/v3   #设置keystone的admin(35357)端口,v3是用第三个版本
export OS_IDENTITY_API_VERSION=3                 #配置认证API版本

 

二) 创建域、项目、用户和角色

2.1创建default域

# openstack domain create --description  "Default Domain"  default

OpenStack 认证服务 KeyStone连接和用户管理(五)

提示:--description是域的描述,最后一个是域的名称

2.2 创建admin项目

# openstack project create --domain default --description  "Admin Project"  admin

作用:管理所有的云主机

OpenStack 认证服务 KeyStone连接和用户管理(五)

2.3 创建admin用户

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

OpenStack 认证服务 KeyStone连接和用户管理(五)

2.4 创建admin角色

在一个项目里面有多个角色,我们只能创建在配置文件中设置的角色。

配置文件路径/etc/keystone/policy.json,我们可以在这个文件自定义新的角色。

# source   adminrc

OpenStack 认证服务 KeyStone连接和用户管理(五)

2.5 添加admin角色到admin项目和用户上

把admin用户,添加到admin项目,并授权admin的角色

或者可以说:admin项目添加一个admin用户,它的角色是admin

openstack role add --project admin --user admin admin

小结:前三个环境变量是为了连接到keystone上,后面的就是为了创建项目用户角色,给域、项目、用户和角色做了一个关联。

 

三)demo环境

  • 创建一个demo项目

3.1 demo项目就类似于我们去阿里云上注册了一个账号,基本流程跟创建admin是一样的

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

3.2 创建demo

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

3.3 创建user角色

openstack role create user

3.4 添加user角色到demo项目和用户

openstack role add --project demo --user demo user

 

四)重要服务与keystone

  • 创建一个service项目 

4.1 各个服务(Glance、Nova、Neutron)之间需要去访问keystone,那么访问keystone就需要做认证,就需要我们创建用户,这些用户需要属于一个项目。所以我们要先创建一个service项目,我们还需要给每个项目单独创建一个用户。

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

4.2 创建glance用户

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

4.3 授权

openstack role add --project service --user glance admin

4.4 创建nova用户

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

4.5 授权

openstack role add --project service --user nova admin

4.6 创建neutron用户

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

4.7 授权用户

openstack role add --project service --user neutron admin