一、新建数据库及用户(控制节点)
# mysql -uroot -p12345678
MariaDB [(none)]> CREATE DATABASE keystone;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'localhost' IDENTIFIED BY 'keystone123';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'%' IDENTIFIED BY 'keystone123';
MariaDB [(none)]> flush privileges;
MariaDB [(none)]> exit;

二、安装keystone(控制节点)
安装软件包:
# yum install -y openstack-keystone httpd mod_wsgi

修改keystone配置文件:
vim /etc/keystone/keystone.conf
编辑模式下(冒号)
删除#开头行  %g/^#/d
删除空白行   %g/^$/d
[database]
connection = mysql+pymysql://keystone:keystone123@localhost/keystone
[token]
provider = fernet #配置Fernet UUID令牌的提供者

初始化数据库:
# su -s /bin/sh -c "keystone-manage db_sync" keystone

初始化Fernet密钥存储库:
# keystone-manage fernet_setup --keystone-user keystone --keystone-group keystone
# keystone-manage credential_setup --keystone-user keystone --keystone-group keystone

配置引导标识服务:
keystone-manage bootstrap --bootstrap-password 123456 \
--bootstrap-admin-url http://10.10.11.11:35357/v3/ \
--bootstrap-internal-url http://10.10.11.11:5000/v3/ \
--bootstrap-public-url http://10.10.11.11:5000/v3/ \
--bootstrap-region-id RegionOne      
#记住RegionOne

配置apache httpd
# vim /etc/httpd/conf/httpd.conf
#修改ServerName
ServerName 10.10.11.11:80

配置wsgi模块软件连接
# ln -s /usr/share/keystone/wsgi-keystone.conf /etc/httpd/conf.d/

启动httpd    
# systemctl enable httpd.service
# systemctl start httpd.service
# systemctl status httpd.service

查看35357和5000端口有没有被监听    
# netstat -anpt | grep http
tcp6  0  0 :::5000   :::*    LISTEN  7449/httpd
tcp6  0  0 :::80     :::*    LISTEN  7449/httpd
tcp6  0  0 :::35357  :::*    LISTEN  7449/httpd

三、创建域、项目、用户、角色(控制节点)
使用环境变量:
# vim set_env
export OS_PROJECT_NAME=admin
export OS_USERNAME=admin
export OS_PASSWORD=123456
export OS_AUTH_URL=http://10.10.11.11:35357/v3
export OS_IDENTITY_API_VERSION=3
export OS_IMAGE_API_VERSION=2
# source set_env

创建一个服务项目,名称是“service”,该服务项目包含唯一用户,它是添加到环境的所有服务的用户:
# openstack project create --domain default --description "Service Project" service

查看:    
# openstack project list
注意,其中的admin项目是自动创建的,不需要手工创建。

创建demo项目:
# openstack project create --domain default --description "Demo Project" demo

创建“demo”用户并设置密码:
# openstack user create --domain default --password-prompt demo  #创建demo用户并输入密码demo123

创建“user”角色:    
# openstack role create user

为“demo”项目的“demo”用户添加“user”角色:    
# openstack role add --project demo --user demo user

四、测试令牌是否正常
# unset OS_AUTH_URL OS_PASSWORD

尝试用admin用户请求一个令牌看是否正常
# openstack --os-auth-url http://10.10.11.11:35357/v3 \
--os-project-domain-name default --os-user-domain-name default \
--os-project-name admin --os-username admin token issue

输入密码:123456

尝试用demo用户请求一个令牌看是否正常    
# openstack --os-auth-url http://10.10.11.11:5000/v3 \
--os-project-domain-name default --os-user-domain-name default \
--os-project-name demo --os-username demo token issue

输入密码:demo123

五、为admin和demo用户创建环境变量脚本
# vim admin-openrc
export OS_PROJECT_DOMAIN_NAME=Default
export OS_USER_DOMAIN_NAME=Default
export OS_PROJECT_NAME=admin
export OS_USERNAME=admin
export OS_PASSWORD=123456
export OS_AUTH_URL=http://10.10.11.11:35357/v3
export OS_IDENTITY_API_VERSION=3
export OS_IMAGE_API_VERSION=2

# vim demo-openrc
export OS_PROJECT_DOMAIN_NAME=Default
export OS_USER_DOMAIN_NAME=Default
export OS_PROJECT_NAME=demo
export OS_USERNAME=demo
export OS_PASSWORD=demo123
export OS_AUTH_URL=http://10.10.11.11:5000/v3
export OS_IDENTITY_API_VERSION=3
export OS_IMAGE_API_VERSION=2

测试脚本使用    
# source admin-openrc
# openstack token issue  #admin用户请求令牌

# source demo-openrc
# openstack token issue  #demo用户请求令牌

六、keystone服务正常测试
从各节点访问keystone服务,验证是否正常
# curl http://10.10.11.11:35357/v3
# curl http://10.10.11.11:35357/v3

查看创建的Identity服务及其endpoint:
# source admin-openrc
# openstack service list
# openstack endpoint list

S1_搭建分布式OpenStack集群_04 keystone认证服务安装配置的更多相关文章

  1. S1_搭建分布式OpenStack集群_10 cinder 存储节点配置

    一.安装配置lvm2安装LVM包:# yum install -y lvm2 启动LVM元数据服务,并将其配置为在系统启动时启动:# systemctl enable lvm2-lvmetad.ser ...

  2. S1_搭建分布式OpenStack集群_09 cinder 控制节点配置

    一.创建数据库创建数据库以及用户:# mysql -uroot -p12345678MariaDB [(none)]> CREATE DATABASE cinder;MariaDB [(none ...

  3. S1_搭建分布式OpenStack集群_12 界面horizon安装

    一.界面的安装控制节点安装软件包:# yum install openstack-dashboard -y 修改配置文件:# vim /etc/openstack-dashboard/local_se ...

  4. S1_搭建分布式OpenStack集群_03 Mysql、MQ、Memcached、ETCD安装配置

    一.安装mysql(contorller)controller ~]# yum -y install mariadb mariadb-server python2-PyMySQL 配置my.cnf文件 ...

  5. S1_搭建分布式OpenStack集群_02 虚拟机环境配置

    一.配置主机名及hosts和防火墙(只演示一台,其他机器配置方式一样)vim /etc/hosts  加入    10.10.11.11 controller10.10.11.12 compute11 ...

  6. S1_搭建分布式OpenStack集群_01 准备虚拟机

    Openstack版本:openstack-queen 版本 一.环境准备 网络规划: Management + API Network:10.10.11.0/24 eth1    网桥:br1 VM ...

  7. S1_搭建分布式OpenStack集群_07 nova服务配置 (计算节点)

    一.服务安装(计算节点)安装软件:# yum install openstack-nova-compute -y 编辑/etc/nova/nova.conf文件并设置如下内容:# vim /etc/n ...

  8. S1_搭建分布式OpenStack集群_08 网络服务(neutron)安装部署

    一.数据库配置(控制节点)创建数据库以及用户:# mysql -uroot -p12345678MariaDB [(none)]> CREATE DATABASE neutron;MariaDB ...

  9. S1_搭建分布式OpenStack集群_06 nova服务配置 (控制节点)

    一.创建数据库(控制节点)创建数据库以及用户:# mysql -uroot -p12345678MariaDB [(none)]> CREATE DATABASE nova_api;MariaD ...

随机推荐

  1. Equalizing Two Strings CodeForces - 1256F (思维)

    大意: 给定两个串$s,t$, 每次操作任选长度$len$, 分别翻转$s,t$中一个长$len$的子串, 可以进行任意次操作, 求判断能否使$s$和$t$相同. 字符出现次数不一样显然无解, 否则若 ...

  2. ABP(ASP.NET Boilerplate Project)学习总结

    ABP(ASP.NET Boilerplate Project),现下比较流行的一种web框架,因为公司新项目准备使用这种框架,所以写下这篇文章记录下自己一步一步搭建的过程,就当做是对学习的一个总结与 ...

  3. Ubuntu中安装(升级)GraphicsMagick

    1 前言 采用官方下载安装包然后强制安装升级Ubuntu中有的老版本gmagick-1.3.28,升级到gmagick-1.3.31 仅用来记录使用. 2.准备工作 1.下载安装包 https://s ...

  4. P2472 [SCOI2007]蜥蜴 (最大流)

    题目 P2472 [SCOI2007]蜥蜴 解析 这个题思路比较清晰,本(qi)来(shi)以(jiu)为(shi)无脑建图跑最大流,结果挂了,整了一个小时后重新建图才过的. 建立一个超级源点和一个超 ...

  5. Java自学-数组 初始化数组

    Java 如何初始化数组 步骤 1 : 分配空间与赋值分步进行 public class HelloWorld { public static void main(String[] args) { i ...

  6. js对象的深入理解(六)

    一.对象的创建(四种模式)1.工厂模式工厂模式示例: function createPerson(name,age){ var obj = { name:name, age:age, sayName: ...

  7. Java 之 Servlet的urlPartten

    Servlet 的 urlpartten urlpartten:Servlet 访问路径 1.一个 Servlet 可以定义多个访问路径,在使用@WebServlet注解时,可以发现里面的 urlpa ...

  8. 有价证券secuerity英语

    证券业 证券业是为证券投资活动服务的专门行业.各国定义的证券业范围略有不同.按照美国的 “产业分类标准”,证券业由证券经纪公司.证券交易所和有关的商品经纪集团组成.证券业在世界各国都是一个小的产业部门 ...

  9. SG-UAP常用注解介绍

    注解基本介绍 Annotation(注解)是JDK5.0及以后版本引入的.它可以用于创建文档,跟踪代码中的依赖性,甚至执行基本编译时检查.注解是以‘@注解名’在代码中存在的,根据注解参数的个数,我们可 ...

  10. mysql DML 数据插入,删除,更新,回退

    mysql插入,删除,更新地址:https://wenku.baidu.com/view/194645eef121dd36a32d82b1.html http://www.cnblogs.com/st ...