OpenStack安装Keystore组件
一、OpenStack安装
OpenStack组件安装的顺序
1、Keystone (apache)
2、glance
3、nova
4、neutron
-
部署openstack组件时,需先行安装认证服务(keystone),而认证服务是使用Apache运行的,安装完成后才可以创建、管理账号,然后安装镜像服务(glance)、计算服务(nova)、网络服务(neutron)
-
其中计算服务和网络服务分为管理端和客户端,所以需要在openstack的管理端安装计算服务和网络服务的管理端,在创建虚拟机的node节点上安装计算服务和网络服务的客户端,最后安装dashboard服务,openstack各种组件的API都是通过apache运行的;
-
openstack的管理端负责创建、管理虚拟机过程的调度
-
通过openstack管理端创建虚拟机的相关数据最终都会记录到mysql(mariadb)中;node节点没有权限往数据库中写数据,只有控制端有权限,并且node节点与控制端通讯是通过rabbitmq间接通讯,node节点会监听rabbitmq,控制端也会监听rabbitmq,控制端把创建虚拟机的指令发送到rabbitmq,由监听rabbitmq指定队列的node节点接收消息并创建虚拟机;
二、keystone身份服务
1、核心功能
Keystone (OpenStack ldentity Service)是OpenStack中的一个独立的提供安全认证的模块,主要负责openstack用户的身份认证、令牌管理、提供访问资源的服务目录、以及基于用户角色的访问控制。
Keystone类似一个服务总线,或者说是整个Openstack框架的注册表,其他服务通过keystone来注册其服务的Endpoint(服务访问的URL),任何服务之间相互的调用,需要经过Keystone的身份验证,来获得目标服务的Endpoint来找到目标服务。
1、提供多种认证和授权方式
2、指引后端endpoint
2、主要功能
身份认证:令牌的发放和校验
用户授权:授予用户在一个服务中所拥有的权限
用户管理:管理用户账户
服务目录:提供可用服务的api端点
令牌有效期
3、相关概念
管理对象(可以服务授权的对象)
-
user:使用openstack service的用户
-
project:可以理解为一个人、或服务所拥有的资源集合
-
role:用于划分权限。通过user指定role,使user获得role对应操作权限
-
authentication:确认用户身份的过程
-
token:是一个字符串表示、作为访问资源的令牌。token包含了在指定范围和有效时间内,可以被访问的资源。
-
credentials:用于确认用户身份的凭证。用户的用户名和密码,或者是用户名和api密钥,或者身份管理服务提供的令牌
-
service:openstack service,即openstack中运行的组件服务,如nova、swift、glance、neutron、cinder等
-
endpoint:一个可以通过网络来访问和定位某件openstack service的地址,通常是一个url
-
因为组件点到点的交互是通过api来完成的,API是由apach