在控制节点上执行

controllerHost='controller'
MYSQL_PASSWD='m4r!adbOP'
RABBIT_PASSWD='0penstackRMQ'
ADMIN_PASSWD='Ideal123!'
DEMO_PASSWD='Ideal123!'
KEYSTONE_PASSWD='keystone1234!'

1.创建数据库

mysql -uroot -p${MYSQL_PASSWD} << EOF
     DROP DATABASE IF EXISTS keystone;
     CREATE DATABASE keystone;
     GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'localhost' IDENTIFIED BY '${KEYSTONE_PASSWD}';
     GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'%' IDENTIFIED BY '${KEYSTONE_PASSWD}';
EOF

2.安装keystone组件

yum -y install openstack-keystone httpd mod_wsgi mod_ssl  python2-PyMySQL

3.配置keystone访问数据库

openstack-config --set /etc/keystone/keystone.conf database connection "mysql+pymysql://keystone:${KEYSTONE_PASSWD}@${controllerHost}/keystone"

4.配置keystone使用fernet密钥

openstack-config --set /etc/keystone/keystone.conf token provider fernet

5.配置keystone监听的IP

sed -i "s/Listen 5000/Listen 0.0.0.0:5000/g" /etc/httpd/conf.d/wsgi-keystone.conf
sed -i "s/*:5000/0.0.0.0:5000/g" /etc/httpd/conf.d/wsgi-keystone.conf

6.配置keystone使用WSGI启动

ln -s /usr/share/keystone/wsgi-keystone.conf /etc/httpd/conf.d/

7.初始化fernet密钥

keystone-manage fernet_setup --keystone-user keystone --keystone-group keystone
keystone-manage credential_setup --keystone-user keystone --keystone-group keystone

8.初始化数据库

su -s /bin/sh -c "keystone-manage db_sync" keystone

9.初始化keystone服务

keystone-manage bootstrap --bootstrap-password ${ADMIN_PASSWD}  --bootstrap-admin-url http://${controllerHost}:35357/v3/  --bootstrap-internal-url http://${controllerHost}:5000/v3/   --bootstrap-public-url http://${controllerHost}:5000/v3/   --bootstrap-region-id RegionOne

10.启动keystone服务

systemctl enable httpd.service && systemctl restart httpd.service && systemctl status httpd.service

11.创建admin环境脚本

cat << EOF > /root/admin-openrc
export OS_AUTH_URL=http://${controllerHost}:5000/v3
export OS_IDENTITY_API_VERSION=3
export OS_PROJECT_DOMAIN_NAME=Default
export OS_USER_DOMAIN_NAME=Default
export OS_PROJECT_NAME=admin
export OS_USERNAME=admin
export OS_PASSWORD=${ADMIN_PASSWD}
EOF

13.创建user角色

source /root/admin-openrc
openstack role create user

14.创建service项目

openstack project create --domain default --description "Service Project" service

安装keystone的更多相关文章

  1. CentOS 7部署OpenStack(二)—安装keystone服务

    1.创建数据库 [root@controller ~]# mysql -u root -p [root@controller ~]# CREATE DATABASE keystone; [root@c ...

  2. OpenStack:安装Keystone

    >安装Keystone1. 安装# apt-get install keystone2. 创建dbcreate database keystone;grant all privileges on ...

  3. 安装keystone时创建用户失败

    系统:centos7.3 版本:openstack ocata 1.问题描述 安装keystone在创建用户时报错: The request you have made requires authen ...

  4. OpenStack Train版-2.安装keystone身份认证服务

    安装 keystone 认证 mysql -uroot create database keystone; grant all privileges on keystone.* to 'keyston ...

  5. OpenStack 安装 Keystone

    OpenStack 安装 Keystone 本篇主要记录一下 如何安装 openstack的 第一个组件 keystone 认证授权组件 openstack 版本 我选的是queens 版本 1.Op ...

  6. OpenStack基础组件安装keystone身份认证服务

    域名解析 vim /etc/hosts 192.168.245.172 controller01 192.168.245.171 controller02 192.168.245.173 contro ...

  7. OpenStack Keystone安装部署流程

    之前介绍了OpenStack Swift的安装部署,采用的都是tempauth认证模式,今天就来介绍一个新的组件,名为Keystone. 1. 简介 本文将详细描述Keystone的安装部署流程,并给 ...

  8. openstack Q版部署-----keystone认证服务安装配置(3)

    一.新建数据库及用户(控制节点) 登录数据库,创建db以及用户: CREATE DATABASE keystone; GRANT ALL PRIVILEGES ON keystone.* TO 'ke ...

  9. keystone 安装随笔

    keystone 代码库 git clone https://git.openstack.org/openstack/keystone.git cd keystone keystone配置文件 etc ...

随机推荐

  1. 模块化开发之Amd规范和Cmd规范

    CMD规范:是SeaJS 在推广过程中对模块定义的规范化产出的. AMD规范:是 RequireJS 在推广过程中对模块定义的规范化产出的 // CMD define(function(require ...

  2. BZOJ 2002: [Hnoi2010]Bounce 弹飞绵羊 (LCT维护深度)

    要维护深度,就维护一下size就行了.access一下x,那么从根->x这一条链就独立成为一棵splay,那么splay的size节点数就是x的深度. 删边的时候直接access一下,splay ...

  3. npm 镜像地址配置

    1.查询当前镜像地址 npm get registry 2.修改镜像地址 npm config set registry http://registry.npm.taobao.org/ 原始镜像地址( ...

  4. 'telnet' is not recognized as an internal or external command

     http://blog.csdn.net/lubinsu/article/details/7294870 使用telnet的时候出现如下提示:'telnet' is not recognized ...

  5. Cogs 734. [网络流24题] 方格取数问题(最大闭合子图)

    [网络流24题] 方格取数问题 ★★☆ 输入文件:grid.in 输出文件:grid.out 简单对比 时间限制:1 s 内存限制:128 MB «问题描述: 在一个有m*n 个方格的棋盘中,每个方格 ...

  6. 【luoguP1991】 无线通讯网--最小生成树

    题目描述 国防部计划用无线网络连接若干个边防哨所.2 种不同的通讯技术用来搭建无线网络: 每个边防哨所都要配备无线电收发器:有一些哨所还可以增配卫星电话. 任意两个配备了一条卫星电话线路的哨所(两边都 ...

  7. python 获取数字在内存的内容

    #coding=utf- from struct import pack,unpack byte=pack('f',1.5) print(byte) print([i for i in byte]) ...

  8. python 生成螺旋矩阵

    对于任意 m*n 矩阵,将 1~m*n 的数字按照螺旋规则在矩阵中排列. 如 m=3,n=3,期望结果为: [ [ , , ], [ , , ], [ , , ] ] 以下代码支持方阵以及非方阵. c ...

  9. Java并发指南开篇:Java并发编程学习大纲

    Java并发编程一直是Java程序员必须懂但又是很难懂的技术内容. 这里不仅仅是指使用简单的多线程编程,或者使用juc的某个类.当然这些都是并发编程的基本知识,除了使用这些工具以外,Java并发编程中 ...

  10. mysql数据库学习

    1,服务端和客户端 MySQL 包括服务端和客户端,服务端是MySQL server,客户端包括命令行客户端和图形用户客户端: 命令行客户端:mysql,mysqladmin,mysqldump  ( ...