第3章 全局服务类部署(上)
3.1 认证服务
3.1.1 服务简介
做为云操作系统的Keystone认证服务,主要提供两个功能:
①用户身份认证:为系统提供是否为合法用户的判断功能。对user的管理和保存,管理user的tenant、role、group、domain等,保存user的存放、验证、令牌管理等。
②服务目录列表:显示系统提供的服务列表。其他服务通过keystone来注册其服务的Endpoint(服务访问的URL),任何服务之间的相互调用,需要经过keystone的身份验证来获得目标服务的Endpoint来找到目标服务。
认证服务中出现的名词介绍及运行方式:
User用户:一个使用OpenStack云服务的人、系统或者服务的数字表示。用户需要登录,然后被分配token去访问资源。用户可以被分配到一个tenant。
Credential用户证据:用来证明用户身份的证据,可以是用户名和密码、用户名和API key,或者一个Keystone分配的身份token。
Authentication身份验证:验证用户身份的过程。Keystone服务通过检查用户的Credential来确定用户的身份。最开始,使用用户名/密码或者用户名/API key作为credential。当用户的credential被验证后,Keystone会给用户分配一个authentication token供该用户后续的请求使用。
Token令牌:一个用于访问OpenStack API和资源的alpha数字字符串。一个token可能在任何时间被撤销(revoke),因此其有效期是有限的。OpenStack中,token是和特定的tenant绑定的,因此如果user如果访问多个tenant的话他就需要多个token。
Tenant租户:一个用于分组或者隔离资源的容器。一个tenant可能对应一个客户、账号、组织或者项目。在OpenStack中,用户至少必须在一个tenant中。tenant容器的可使用资源的限制成为Tenant Quota,它包括tenant内各子资源的quota。
Service服务:一个OpenStack服务,比如Nova、Swift或者Glance等。每个服务提供一个或者多个endpoint供用户访问资源以及进行操作。
Endpoint端点:一个网络可访问的服务地址,通过它你可以访问一个服务,通常是个URL地址。不同region有不同的service endpoint。endpoint告诉也可告诉OpenStack service去哪里访问特定的service。比如,当Nova需要访问 Glance服务去获取image时,Nova通过访问Keystone拿到Glance的endpoint,然后通过访问该endpoint去获取Glance服务。我们可以通过Endpoint的region属性去定义多个region。Endpoint该使用对象分为三类:①admin url给admin用户使用。②internal url给OpenStack内部服务使用来跟别的服务通信。③public url其它用户可以访问的地址。
3.1.2 服务配置信息
创建keystone数据库
进入数据库,运行如下命令。
[root@ljl-controller ~]# mysql -uroot -p000000
MariaDB [(none)]> CREATE DATABASE keystone;
Query O