openstack安装(13)

2021-05-06 10:35:36 浏览数 (1)

创建服务实体和api端点

[root@controller ~]# export OS_URL=http://controller:35357/v3 #配置端点URL

[root@controller ~]# export OS_IDENTITY_API_VERSION=3 #配置认证 API 版本

[root@controller ~]# export OS_TOKEN=db771afcb68c09caee6d #配置认证令牌

[root@controller ~]# env|grep ^OS #查看设置是否生效

OS_IDENTITY_API_VERSION=3

OS_TOKEN=db771afcb68c09caee6d

OS_URL=http://controller:35357/v3

在Openstack环境中,认证服务管理服务目录。服务使用这个目录来决定您的环境中可用的服务。

[root@controller ~]# openstack service create --name keystone --description "OpenStack Identity" identity #为身份认证服务创建服务实体

------------- ----------------------------------

| Field | Value |

------------- ----------------------------------

| description | OpenStack Identity |

| enabled | True |

| id | 351c5f4d5174430eacb38b16a6403d40 |

| name | keystone |

| type | identity |

------------- ----------------------------------

身份认证服务管理了一个与环境相关的 API 端点的目录。服务使用这个目录来决定如何与您环境中的其他服务进行通信。

OpenStack使用三个API端点变种代表每种服务:admin,internal和public。默认情况下,管理API端点允许修改用户和租户而公共和内部APIs不允许这些操作。在生产环境中,处于安全原因,变种为了服务不同类型的用户可能驻留在单独的网络上。对实例而言,公共API网络为了让顾客管理他们自己的云在互联网上是可见的。管理API网络在管理云基础设施的组织中操作也是有所限制的。内部API网络可能会被限制在包含OpenStack服务的主机上。此外,OpenStack支持可伸缩性的多区域。[root@controller ~]# openstack endpoint create --region RegionOne identity public http://controller:5000/v2.0 #创建认证服务的 API 端点

-------------- ----------------------------------

| Field | Value |

-------------- ----------------------------------

| enabled | True |

| id | 1ee55eac378f4d179bacb4ea3d1850d1 |

| interface | public |

| region | RegionOne |

| region_id | RegionOne |

| service_id | 351c5f4d5174430eacb38b16a6403d40 |

| service_name | keystone |

| service_type | identity |

| url | http://controller:5000/v2.0 |

-------------- ----------------------------------

[root@controller ~]# openstack endpoint create --region RegionOne identity internal http://controller:5000/v2.0

-------------- ----------------------------------

| Field | Value |

-------------- ----------------------------------

| enabled | True |

| id | 00da46788e874f529f67046226c7b0c9 |

| interface | internal |

| region | RegionOne |

| region_id | RegionOne |

| service_id | 351c5f4d5174430eacb38b16a6403d40 |

| service_name | keystone |

| service_type | identity |

| url | http://controller:5000/v2.0 |

-------------- ----------------------------------

[root@controller ~]# openstack endpoint create --region RegionOne identity admin http://controller:35357/v2.0

-------------- ----------------------------------

| Field | Value |

-------------- ----------------------------------

| enabled | True |

| id | fab8917d632a4a8c8ccb4290cbd382c6 |

| interface | admin |

| region | RegionOne |

| region_id | RegionOne |

| service_id | 351c5f4d5174430eacb38b16a6403d40 |

| service_name | keystone |

| service_type | identity |

| url | http://controller:35357/v2.0 |

-------------- ----------------------------------

注:每个添加到OpenStack环境中的服务要求一个或多个服务实体和三个认证服务中的API 端点变种。

为进行管理操作,创建管理的项目、用户和角色

[root@controller ~]# openstack project create --domain default --description "Admin Project" admin #创建 admin 项目

------------- ----------------------------------

| Field | Value |

------------- ----------------------------------

| description | Admin Project |

| domain_id | default |

| enabled | True |

| id | 839cdfc946e1491c8004e3b732d17f9a |

| is_domain | False |

| name | admin |

| parent_id | None |

------------- ----------------------------------

[root@controller ~]# openstack user create --domain default --password-prompt admin #创建 admin 用户

User Password: #密码设置为123456

Repeat User Password:

----------- ----------------------------------

| Field | Value |

----------- ----------------------------------

| domain_id | default |

| enabled | True |

| id | d4f0c9b24be84306960e29a7961d22a3 |

| name | admin |

----------- ----------------------------------

[root@controller ~]# openstack role create admin #创建 admin 角色

------- ----------------------------------

| Field | Value |

------- ----------------------------------

| id | ebab14b851254fe69abb49132f3b76a2 |

| name | admin |

------- ----------------------------------

[root@controller ~]# openstack role add --project admin --user admin admin #添加 admin 角色到 admin 项目和用户上,这个命令执行后没有输出

每个服务包含独有用户的service 项目。创建``service``项目

[root@controller ~]# openstack project create --domain default --description "Service Project" service

------------- ----------------------------------

| Field | Value |

------------- ----------------------------------

| description | Service Project |

| domain_id | default |

| enabled | True |

| id | cfbdca3af1a043d8ace0f47724312e60 |

| is_domain | False |

| name | service |

| parent_id | None |

------------- ----------------------------------

常规任务应该使用无特权的项目和用户,作为示例,创建一个demo项目和用户

[root@controller ~]# openstack project create --domain default --description "Demo Project" demo #创建demo 项目,当为这个项目创建额外用户时,不要重复这一步。

------------- ----------------------------------

| Field | Value |

------------- ----------------------------------

| description | Demo Project |

| domain_id | default |

| enabled | True |

| id | 2003811a2ad548e7b686f06a55fe9ce9 |

| is_domain | False |

| name | demo |

| parent_id | None |

------------- ----------------------------------

[root@controller ~]# openstack user create --domain default --password-prompt demo #创建 demo 用户

User Password:

Repeat User Password:

----------- ----------------------------------

| Field | Value |

----------- ----------------------------------

| domain_id | default |

| enabled | True |

| id | d4ffbeefe72d412187047a79e3a51d00 |

| name | demo |

----------- ----------------------------------

[root@controller ~]# openstack role create user #创建 user 角色

------- ----------------------------------

| Field | Value |

------- ----------------------------------

| id | a1b9a999563544daa808e5ee1e0edaf0 |

| name | user |

------- ----------------------------------

[root@controller ~]# openstack role add --project demo --user demo user #添加 user 角色到 demo 项目和用户 ,你可以重复此过程来创建额外的项目和用户。

0 人点赞