Keystone

  • region: 地域,有点类型于阿里云上的地区:华南华北。openstack有一个默认的RegionOne,一般只会用到这一个

  • domain: 域,一个domain只属于一个region。openstack中有一个默认的Default

  • project: 项目,类似于我们所说的租户,openstack中的资源一定是属于某个project的。一个project只属于某个domain。openstack中有一个默认的admin项目

  • user: 用户,user只属于某个domain。openstack中有一个默认的admin用户

  • role: 角色,role可以是全局的,也可以只属于某个domain;我们可以为一个用户(user)在中赋予一定的(role),一个用户(user)可以在不同的(project)中充当不同的角色(role)。全局的admin角色可以访问任何project的资源。openstack中有一个默认的admin角色

  • service: 服务,常见的服务类型(Service_Type)有身份服务identity、镜像服务(image)、计算服务(compute)、网络服务(network`)等。service是全局的,不属于某个region。

  • endpoint: 端点,可以理解为service的URL。比如,镜像服务的Endpointhttp://x.x.x.x:9292。一个服务一般会有三类Endpoint,admininternalpublic。其中admin类型用于组件之间的相互访问,public用于从外部访问,internal用于内部访问。一个service在不同的region中可以对应不同的endpoint,比如在华南区镜像服务的endpoint可以为http://x.x.x.x:9292,在华北区镜像服务的endpoint可以为http://y.y.y.y:92929。我们可以通过如下的命令,查看RegionOne中镜像服务的endpoint:

$ openstack endpoint list --service image
+----------------------------------+-----------+--------------+--------------+---------+-----------+------------------------+
| ID                               | Region    | Service Name | Service Type | Enabled | Interface | URL                    |
+----------------------------------+-----------+--------------+--------------+---------+-----------+------------------------+
| 32b86cccfa2e4618a8e98adbb1a55653 | RegionOne | glance       | image        | True    | admin     | http://controller:9292 |
| 4abac6b0c52b44f28ac0712c3312646b | RegionOne | glance       | image        | True    | public    | http://controller:9292 |
| a30db34ca833453db70a46363048c9e5 | RegionOne | glance       | image        | True    | internal  | http://controller:9292 |
+----------------------------------+-----------+--------------+--------------+---------+-----------+------------------------+

那么问题来了,我们使用一个用户登录,需要哪些信息呢?

在正常的租户-用户-角色系统中,登录需要提供用户名,登录进去后可以选择该用户所属的租户,这样就可以操作这个租户下的资源。(to be continued)

Last updated

Was this helpful?