三、Openstack安装keystion(identity)

简介:

Idenitity 服务理念:

执行以下功能:

用户管理,跟踪用户以及用户的权限

catalog服务:提供与他们的API catalog 服务

用户(user)

用户表示拥有用户名,密码,邮箱等帐号信息的自然人。

证书(Credentials)

证明资格和权力的东西,如用户名和密码,用户名和API KEY 或者服务本身的认证token

认证(Authentication)

确认用户身份的行为,经过上面描述的“证书”服务确认用户。

令牌(token)

一种认证方式,通过认证后发给连接端。

租户(tenant)

租户可以被理解为一个项目,团队或组织。你必须指定一个相应的租户(tenant)才可以申请OpenStack服务

服务(Service

通过它用户可以访问资源并执行操作的一个终端。 即完成以上几步后就给一个终端供client使用。                

终端(Endpoint

通过网络访问的一个URL地址,可以获得你想要访问的服务,

角色(Role)

角色代表特定的租户中的用户用户操作权限

wKioL1LGH_zTNa93AAH5j7R-X1w912.jpg

六个过程,alice任务请求创建一个虚拟机

alice发送凭据给keystone,keystone返回一个临时创建的tokent和一个通用的目录。

alice请求提供租户的列表,keystone返回一个他的租户的服务列表。

keystone发送给alice带有租房的凭据、租房的服务列表、租户的token

alice去终端连接服务,并提供一个请求的token,终端去问keystone是否是正确的令牌和是否允许使用这个服务

keystone提供“alice的租户允许访问服务,令牌与请求匹配并且这个令牌属于alice”给Service

Service执行服务请求并把执行状态发送给alice

安装identity服务

安装软件包

# apt-get install keystone

修改配置文件/etc/keystone/keystone.conf

使用数据库存储数据,我们改一下他的连接方式,默认使用sqlite我们要进行更改

connection = mysql://keystone:stack@controller/keystone

wKiom1LGIBXzh-T_AAAujgzSI1E832.jpg

给keystone创建一个keystone数据库

mysql> create database keystone;

mysql> GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'localhost' IDENTIFIED BY 'stack;

GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'controller' IDENTIFIED BY 'stack';

wKioL1LGIBbzkeSIAAA2lxwHkYw932.jpg

wKiom1LGICKzduk1AAAiPXONPYg058.jpg


4、同步一下到数据库

# keystone-manage db_sync

创建了一些空表

wKioL1LGICTRUjFZAABqRbH9fHY367.jpg

6、生成一个token,并放到配置文件中

wKiom1LGIDvCNjDxAAATL_6kryc273.jpg

/etc/keystone/keystone.conf

wKiom1LGIFHRkWsNAAAkOpdg3UQ617.jpg

重启keystone服务

# service keystone restart

定义用户、租户、角色

1、定义环境变量

由于我们并没有用户,所以需要创建用户,但这本身就需要认证,所以我们增加怎么环境变量os_server_token os_service_endpoint

# export OS_SERVICE_TOKEN=9f9c6ce6e5fcc5437443

# export OS_SERVICE_ENDPOINT=http://controller:35357/v2.0

wKioL1LGIFLBLmcKAAAxv-Bir08254.jpg

创建一个admin和service的租户

# keystone tenant-create --name=admin --description="Admin Tenant"

# keystone tenant-create --name=service --description="Service Tenant"

wKiom1LGIGyhAjKuAACSz_0T3B4309.jpg

创建一个管理员用户为admin并设置一个密码并指定电子邮件,这是第三个密码了。记下来。

# keystone user-create --name=admin --pass=openstack --email=zwhset@163.com

wKioL1LGIGzSuzffAABR2PpZW6c219.jpg

创建一个管理员用记的角色admin,注意默认使用admin角色将允许大多数的服务。创建的角色应该映射到openstack服务的policy.json文件名中指定的角色

# keystone role-create --name=admin

wKiom1LGIIGgr8tRAAA3NL4s4hM658.jpg

添加角色用户租户的对应关系

# keystone user-role-add --user=admin --tenant=admin --role=admin

wKioL1LGIH3AeskBAAAdgsXYSyc493.jpg

我们看下数据库

wKiom1LGIJLgVhl4AACYywqqMJ0942.jpg

定义服务与API的端点

创建一个服务,服务ID是随机生成的

# keystone service-create --name=keystone --type=identity --description="Keystone Identity Service"

wKioL1LGIJCRwpp4AABerWlX4Qk997.jpg

通过返回的服务ID指定身份证服务的API端点,你应该提供公共的API,内部API和管理API的URL。

煮酒品茶:注意填写你自己的ID号

# keystone endpoint-create   --service-id=0bde195742b54963b4478de9232b9465   --publicurl=http://controller:5000/v2.0   --internalurl=http://controller:5000/v2.0   --adminurl=http://controller:35357/v2.0

wKiom1LGIK6heN3-AACTqrselaA725.jpg

你安装了其它服务时,通过这个指定你的服务。

验证一下:

# unset OS_SERVICE_TOKEN OS_SERVICE_ENDPOINT

# keystone --os-username=admin --os-password=openstack --os-auth-url=http://controller:35357/v2.0 token-get

wKioL1LGIK2D_PXlAADVdsmSKD0184.jpg

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

如果发现500错误

wKiom1LGIN6TXC6mAABAp2jR-fY096.jpg

查看日志:

wKioL1LGIN3QBTSGAAC7VeheQ9c609.jpg

更改配置文件:

wKiom1LGIPeBTyiuAAAkYb2Xj2k227.jpg

好了,需要重启下keystone

====================================

重启下:

# service keystone restart

我们设置环境变量,就不需要每次都填验证参数了。

# export OS_USERNAME=admin

# export OS_PASSWORD=openstack

# export OS_TENANT_NAME=admin

# export OS_AUTH_URL=http://controller:35357/v2.0

查看一下token,事实上他的ID也太长了吧。

wKioL1LGIPfSWN2iAACAz6pLgmw207.jpg

查了一下表:

wKiom1LGIRyCWBkcAAIcJJzLCrs537.jpg

更多可以看用户租户角色:

http://docs.openstack.org/havana/install-guide/install/apt/content/keystone-users.html





本文转自 煮酒品茶 51CTO博客,原文链接:http://blog.51cto.com/cwtea/1347938,如需转载请自行联系原作者
目录
相关文章
|
4月前
|
IDE Linux KVM
云计算|OpenStack|社区版OpenStack---基本概念科普(kvm的驱动类别和安装)
云计算|OpenStack|社区版OpenStack---基本概念科普(kvm的驱动类别和安装)
86 0
|
4月前
|
云计算 数据安全/隐私保护 虚拟化
云计算|OpenStack|社区版OpenStack安装部署文档(十一--- 如何获取镜像---Rocky版)
云计算|OpenStack|社区版OpenStack安装部署文档(十一--- 如何获取镜像---Rocky版)
57 0
|
4月前
|
Linux 网络安全 API
云计算|OpenStack|社区版OpenStack安装部署文档(五 --- 计算服务nova安装部署---Rocky版)
云计算|OpenStack|社区版OpenStack安装部署文档(五 --- 计算服务nova安装部署---Rocky版)
103 0
|
8月前
|
API 数据库 数据安全/隐私保护
(五)Open Stack(M)----Neutron服务安装与配置(上)
(五)Open Stack(M)----Neutron服务安装与配置(上)
72 0
|
4月前
|
存储 云计算 虚拟化
云计算|OpenStack|使用VMware安装华为云的R006版CNA和VRM---初步使用(二)
云计算|OpenStack|使用VMware安装华为云的R006版CNA和VRM---初步使用(二)
80 0
|
4月前
|
存储 虚拟化 数据安全/隐私保护
云计算|OpenStack|使用VMware安装华为云的R006版CNA和VRM---初始安装(一)
云计算|OpenStack|使用VMware安装华为云的R006版CNA和VRM---初始安装(一)
152 0
|
4月前
|
弹性计算 Linux 网络安全
云计算|OpenStack|社区版OpenStack安装部署文档(九--- 创建一个虚拟机实例---Rocky版)
云计算|OpenStack|社区版OpenStack安装部署文档(九--- 创建一个虚拟机实例---Rocky版)
30 0
|
4月前
|
Linux API 数据库
云计算|OpenStack|社区版OpenStack安装部署文档(六 --- 网络服务neutron的安装部署---Rocky版)
云计算|OpenStack|社区版OpenStack安装部署文档(六 --- 网络服务neutron的安装部署---Rocky版)
100 0
|
8月前
|
API 数据库
(五)Open Stack(M)----Neutron服务安装与配置(下)
(五)Open Stack(M)----Neutron服务安装与配置(下)
77 0
|
8月前
|
API 数据库 KVM
(四)Open Stack(M)----Nova服务安装与配置
(四)Open Stack(M)----Nova服务安装与配置
58 0