https://github.com/openstack/keystone

最新版为rocky

1. 进入mysql

create database keystone;

grant all privileges on keystone.* to 'keystone'@'localhost' identified by 'mhc.123';

grant all privileges on keystone.* to 'keystone'@'%' identified by 'mhc.123';

grant all privileges on keystone.* to 'keystone'@'mysql所在主机ip或名' identified by 'mhc.123';

2. 生成随机token

# openssl rand -hex 10
4ef3736eec4c79501690

3.

# yum install python-pip httpd mod_wsgi

# git clone https://github.com/openstack/keystone.git

# git checkout -b rocky remotes/origin/stable/rocky

# yum install python-devel openssl-devel -y

# pip install PyMySQL

# pip install -r requirements.txt

# python setup.py install

配置文件 https://docs.openstack.org/keystone/latest/configuration/samples/keystone-conf.html

放到/etc/keystone/keystone.conf

修改后: https://github.com/mhcvs2/docker/blob/master/openstack/keystone/keystone.conf

4. 同步数据库

# keystone-manage db_sync

5. 配置apache2

  1. /etc/httpd/conf.d/wsgi-keystone.conf
    https://github.com/mhcvs2/docker/blob/master/openstack/keystone/wsgi-keystone.conf

# useradd keystone
# chown -R keystone:keystone /etc/keystone

# mkdir /var/log/apache2/

# vim /etc/selinux/config

SELINUX=disable

# setenforce 0

# systemctl start httpd.service

# systemctl enable httpd.service

6. # pip install python-openstackclient

# keystone-manage fernet_setup --keystone-user keystone --keystone-group keystone

# keystone-manage credential_setup --keystone-user keystone --keystone-group keystone

7. 创建keystone的service entity

# openstack service create --name keystone --description "OpenStack Identity" identity
+-------------+----------------------------------+
| Field | Value |
+-------------+----------------------------------+
| description | OpenStack Identity |
| enabled | True |
| id | eb98e1799e7c481ca1e359a522d97a7d |
| name | keystone |
| type | identity |
+-------------+----------------------------------+

8. 创建keystone的api endpoint

# openstack endpoint create --region RegionOne identity public http://v460:5000/v2.0
+--------------+----------------------------------+
| Field | Value |
+--------------+----------------------------------+
| enabled | True |
| id | c06bfef610dd43118b6ed1ebda58e90d |
| interface | public |
| region | RegionOne |
| region_id | RegionOne |
| service_id | eb98e1799e7c481ca1e359a522d97a7d |
| service_name | keystone |
| service_type | identity |
| url | http://v460:5000/v2.0 |
+--------------+----------------------------------+

# openstack endpoint create --region RegionOne identity internal http://v460:5000/v2.0

# openstack endpoint create --region RegionOne identity admin http://v460:35357/v2.0

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

9. 创建一个默认的域“default”

# openstack domain create --description "Default Domain" default

10. 创建admin project

# openstack project create --domain default --description "Admin Project" admin

创建admin user

# openstack user create --domain default --password-prompt admin

创建admin role

# openstack role create admin

# openstack role add --project admin --user admin admin

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

# openstack project create --domain default --description "Demo Project" demo

# openstack user create --domain default --password-prompt demo

# openstack role create user

# openstack role add --project demo --user demo user

  1. openstack --os-auth-url http://v460:35357/v3 --os-identity-api-version 3 --os-project-domain-name default --os-user-domain-name default --os-project-name admin --os-username admin token issue

# openstack token issue

1-keystone 部署的更多相关文章

  1. openstack项目【day24】:keystone部署及操作

    阅读目录 一 前言 二 版本信息 三 部署keystone 四 keystone操作 五 验证 六 创建脚本 七 keystone使用套路总结 一 前言 任何软件的部署都是没有技术含量的,任何就部署讲 ...

  2. keystone系列四:keystone部署及操作

    一 前言 任何软件的部署都是没有技术含量的,任何就部署讲部署的人都是江湖骗子. 部署的本质就是拷贝,粘贴,回车.我们家养了条狗,它可以胜任这件事情. 我们搞技术的,一定不能迂腐:轻信或者一概不信. 轻 ...

  3. openstack 之~keystone部署

    第一:版本信息 官网http://docs.openstack.org/newton/install-guide-rdo/keystone.html 我们按照Newton这个版本来部署,opensta ...

  4. openstack(Pike 版)集群部署(二)--- Keystone 部署

    一.介绍 参照官网部署:https://docs.openstack.org/keystone/queens/install/ 继续上一博客进行部署:http://www.cnblogs.com/we ...

  5. 云存储(Swift+Keystone)部署策略

    Swift是OpenStack的对象存储模块,Keystone是OpenStack的权限验证模块.可以于这两个模块搭建一个较为完善的云存储系统. 1.官方方案 云存储的服务器分三种类型: 验证节点 A ...

  6. openstack之keystone部署

    前言 openstack更新频率是挺快的,每六个月更新一次(命名是是以A-Z的方式,Austin,Bexar...Newton).博主建议大家先可一种版本研究,等某一版本研究透彻了,在去研究新的版本. ...

  7. keystone部署及操作

    目录 一  版本信息 二  部署keystone 三  keystone操作 四  验证 五  创建脚本 六  keystone使用套路总结 一.版本信息 官网http://docs.openstac ...

  8. OpenStack kilo版(2) keystone部署

    部署在controller节点 配置数据库 MariaDB [(none)]> CREATE DATABASE keystone; Query OK, 1 row affected (0.00 ...

  9. Openstack_O版(otaka)部署_认证服务keystone部署

    安装和配置服务 1. 建keystone库建用户 在控制节点执行 mysql -uroot -p123456 CREATE DATABASE keystone; GRANT ALL PRIVILEGE ...

  10. OpenStack_I版 2.keystone部署

    生成keystone默认证书,指定用户 修改keystone主配置文件 第625行,修改数据库连接方式   修改完成同步数据库 同步完成可以查看数据库是否有表生成 为了以后调试keystone方便,现 ...

随机推荐

  1. python - requests从excel中获取测试用例数据

    HttpRequests.py #-*- coding:utf-8 -*- import requests class HttpRequests(): def http_requests(self,u ...

  2. 使用docker生成centos7系统

    因为缺乏系统,所以使用docker镜像模拟生成多个系统,用于练习集群的安装. 查看已有镜像 docker images 下载镜像: docker pull centos: docker pull  镜 ...

  3. 关于jQuery中click&live&on中的坑

    click()方法: click()方法针对未创建的元素不起作用,譬如用js传入的元素,所以可以使用live()方法来操作未创建的元素属性 live()方法: $("button" ...

  4. Java序列化对象-字符串转换

    package com.test; import com.alibaba.fastjson.JSON; import org.junit.Test; import java.io.ByteArrayI ...

  5. python入门-python处理csv文件格式相关

    python入门-python处理csv文件格式相关 处理 下载的csv格式文件 直接上代码和效果图 import csv from datetime import datetime from mat ...

  6. 增删改查列表angular.js页面实现

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta http ...

  7. [Writeup]与佛论禅

    [Writeup]与佛论禅 垂死梦中惊坐起,李sin参悟佛真意 看题 沙雕sl宋雷发给我一道题 他用(Quoted-Printable)解出来一个奇怪经文(偷学) 李sin你怎么看?此中必有蹊跷! 前 ...

  8. MySQL 5.7.20 ONLY_FULL_GROUP_BY

    < SQL_MODE 的配置方式 > 01,默认情况下 5.7.20 MySQL 开启该模式,我们可以用指 SQL 预计查看 => select @@global.sql_mode; ...

  9. ThinkPHP3.2项目模块结构

    Demo --项目目录 Addons --插件目录 Application --应用模块目录 Admin --后台模块 Common --后台公共函数目录 function.php (可选) Conf ...

  10. vue 的父组件和子组件互相获取数据和方法

    父组件主动获取子组件的数据和方法 一.ref(但不能实时更新获取) 1.调用子组件的时候 定义一个ref <child ref="headerChild"></c ...