OpenStack 认证服务 KeyStone部署 (四)
Keystone作用:
- 用户与认证:用户权限与用户行为跟踪;
- 服务目录:提供一个服务目录,包括所有服务项和相关Api的断点
- SOA相关知识
Keystone主要两大功能用户认证和服务目录(相当于一个注册中心)
- 用户认证名词介绍
User:用户
它是用一个数字代表使用openstack云服务的一个人、系统、或服务。身份验证服务将会验证传入的由用户声明将调用的请求
一个租户可以有多个用户
一个用户可以属于一个或多个租户
用户对租户和操作权限由用户在租户中承担的角色来决定。
Project:项目
它是各个服务中的一些可以访问的资源集合或者说叫资源组。它是一个容器,用于组织和隔离资源,或标识对象。
Token:令牌
Role:角色
代表一组用户可以访问的资源权限,例如Nova中的虚拟机、Glance中的镜像。
- 服务目录两大名词介绍
Service:服务
Service即服务,如Nova、Glance、Swift。根据前三个概念(User,Project和Role)一个服务可以确认当前用户是否具有访问其资源的权限。但是当一个user尝试着访问其租户内的service时,他必须知道这个service是否存在以及如何访问这个service。
Endpoint:端点
Endpoint翻译为“端点”,我们可以理解它是一个服务暴露出来的访问点,如果需要访问一个服务,则必须知道他的endpoint。Endpoint的每个URL都对应一个服务实例的访问地址,并且具有public、orivate和admin这三种权限。pubic url可以完全被全局访问,private url只能被局域网访问,admin url被从常规的访问中分离。
一) 安装memcached缓存
1.1 安装软件包
yum install memcached python-memcached -y
1.2 修改memcached配置
vim /etc/sysconfig/memcached
OPTIONS="10.0.0.101"
1.3.启动服务
# systemctl enable memcached.service
# systemctl start memcached.service
1.4 netstat -ntlp检查服务端口是否存在

二)安装keystone
2.1 安装keystone软件包
yum install openstack-keystone httpd mod_wsgi -y
2.2 修改配置文件
vim /etc/keystone/keystone.conf 在[database]部分,配置数据库访问:
[database]
connection = mysql+pymysql://keystone:redhat@controller/keystone 在[token]部分,配置Fernet UUID令牌的提供者
提供令牌有四种方式[fernet|pkiz|pki|uuid]默认是uuid。
[token]
provider = fernet
driver = memcache 在[memcache]部分,配置memcache的连接地址和端口
[memcache]
servers = 10.0.100.101:
3.3 初始化数据库
su -s /bin/sh -c "keystone-manage db_sync" keystone
自动找到keystone配置文件里的mysql连接,来帮我们创建数据库中的表。
我们为什么要使用keystone用户去同步数据库呢?
因为同步数据库会在/var/log/keystone目录下去写日志,如果使用root权限同步,当keystone用户启动服务时读取这个日志文件,那么它将无法进行读取(权限问题),会出现启动错误的情况。
检查表是否创建成功
mysql -uroot -predhat -e "use keystone;show tables;"
提示:如果查看表的时候发现没有,通过日志/var/log/keystone/keystone.log排查报错信息。
3.4 初始化Fernet keys
创建相关的证书
# keystone-manage fernet_setup --keystone-user keystone --keystone-group keystone
# keystone-manage credential_setup --keystone-user keystone --keystone-group keystone
执行完命令之后会在/etc/keystone下生成fernet-keys目录,它的权限是keystone里面存放这一些相关证书。

3.5 引导服务标识
keystone-manage bootstrap --bootstrap-password redhat \
--bootstrap-admin-url http://controller:35357/v3/ \
--bootstrap-internal-url http://controller:35357/v3/ \
--bootstrap-public-url http://controller:5000/v3/ \
--bootstrap-region-id RegionOne
三).apache配置
3.1 配置/etc/httpd/conf/httpd.conf文件,配置ServerName 选项为控制节点
vim /etc/httpd/conf/httpd.conf
ServerName controller
3.2 配置链接文件
# ln -s /usr/share/keystone/wsgi-keystone.conf /etc/httpd/conf.d/
3.3 apache启动并设置开机自启动
# systemctl enable httpd.service
# systemctl start httpd.service
3.4 keytone排错思路
查看日志 /var/log/keystone/keystone.log 是否有报错信息
开启debug模式
vim /etc/keystone/keystone.conf
[DEFAULT]
debug = true
OpenStack 认证服务 KeyStone部署 (四)的更多相关文章
- OpenStack 认证服务 KeyStone部署(三)
Keystone 介绍 Keystone作用: 用户与认证:用户权限与用户行为跟踪: 服务目录:提供一个服务目录,包括所有服务项和相关Api的断点 SOA相关知识 Keystone主要两大功能用户认证 ...
- OpenStack 认证服务 KeyStone连接和用户管理(四)
连接keystone两种方式: 一种使用命令 一种使用环境变量 1.通过环境变量方式连接keystone(适合在初始化场景使用) 配置认证令牌环境变量 export OS_TOKEN=07081849 ...
- openstack 之~keystone部署
第一:版本信息 官网http://docs.openstack.org/newton/install-guide-rdo/keystone.html 我们按照Newton这个版本来部署,opensta ...
- openstack之keystone部署
前言 openstack更新频率是挺快的,每六个月更新一次(命名是是以A-Z的方式,Austin,Bexar...Newton).博主建议大家先可一种版本研究,等某一版本研究透彻了,在去研究新的版本. ...
- Openstack_O版(otaka)部署_认证服务keystone部署
安装和配置服务 1. 建keystone库建用户 在控制节点执行 mysql -uroot -p123456 CREATE DATABASE keystone; GRANT ALL PRIVILEGE ...
- OpenStack 认证服务 KeyStone连接和用户管理(五)
一) 创建环境变量链接keyston vim adminrc export OS_USERNAME=admin export OS_PASSWORD=redhat export OS_PROJECT_ ...
- 云计算管理平台之OpenStack认证服务Keystone
一.keystone简介 keystone是openstack中的核心服务,它主要作用是实现用户认证和授权以及服务目录:所谓服务目录指所有可用服务的信息库,包含所有可用服务及其API endport路 ...
- OpenStack 认证服务 KeyStone 服务注册(五)
创建服务实体和API端点 创建服务 openstack service create --name keystone --description "OpenStack Identity&qu ...
- OpenStack 认证服务 KeyStone 服务注册(六)
一)检查keystone是否安装配置成功 1.1删除环境变量的配置 unset OS_AUTH_URL redhat 1.2 请求令牌认证 admin用户,请求认证令牌 openstack --os- ...
随机推荐
- arm架构与体系结构
1.cpu与soc 内核版本号与soc版本号由arm公司确定. 芯片型号由各半导体公司确定. soc包括cpu与一些基本内设.(一般提到CPU都指的是soc,实际上cpu只是soc的一部分). RIS ...
- Test Index
top1 top11 top2 top1 top11 top2
- SpringMVC中 Session的使用情况
在SpringMVC中,使用Session可以用通过两种方式 1.servlet-api 即HttpSession session.setAttritute(),session.getAttribut ...
- [USACO13NOV] Pogo-Cow
https://www.luogu.org/problem/show?pid=3089 题目描述 In an ill-conceived attempt to enhance the mobility ...
- css 实现元素水平垂直居中总结5中方法
个人总结,如有错误请指出,有好的建议请留言.o(^▽^)o 一.margin:0 auto:text-align:center:line-height方法 <div id="divAu ...
- 联系博主 Contact
李莫 / Ray OI 蒟蒻一只 / A Player of Olympiad in Informatics QQ:740929894 邮箱 / Email :rayking2017@outlook. ...
- bzoj 1305 二分+最大流判定|贪心
首先我们二分一个答案mid,在判定是否能举办mid次,那么对于每个次我们可以用最大流根据是否满流(流量为n*mid)来判定,对于每个点我们拆成两个点,分别表示这个人要和他喜欢和不喜欢的人一起跳舞,那么 ...
- Python学习笔记 - day13 - 进程与线程
概述 我们都知道windows是支持多任务的操作系统. 什么叫“多任务”呢?简单地说,就是操作系统可以同时运行多个任务.打个比方,你一边在用浏览器上网,一边在听MP3,一边在用Word赶作业,这就是多 ...
- Linux汇编教程01: 基本知识
在我们开始学习Linux汇编之前,需要简单的了解一下计算机的体系结构.我们不需要特别深入的了解,理解了一些基本概念对与我们理解程序会很有帮助.现在计算机的结构体系都是采用冯诺依曼体系结构的基础上发展过 ...
- python爬虫模块之URL管理器模块
URL管理器模块 一般是用来维护爬取的url和未爬取的url已经新添加的url的,如果队列中已经存在了当前爬取的url了就不需要再重复爬取了,另外防止造成一个死循环.举个例子 我爬www.baidu. ...

