Openstack-Mitaka Keystone 部署心得
2016-08-18 21:04
281 查看
Openstack-Mitaka Keystone 部署心得
标签 : Openstack最近,开始学习 openstack,并尝试部署 keystone 认证模块,所用的版本为 Mitaka 版本。由于我完全是新手,而且官方文档有些细节没说清楚,或者有些出入,所以爬了一些坑,现在写个总结心得。
系统环境为 Centos 6.7。
把节点的 hostname 设置为 controller。
编辑
/etc/hosts文件如下:
# controller 127.0.0.1 controller
keystone-client
安装python-openstackclient、
python-keystoneclient,通过 CLI 命令进行交互。
1. openstack 适用于全局,可管理和查看各类信息。 2. keystone-manage 用于启动 keystone 模块数据、初始化数据库、生成 SSL 相关的证书和私钥。keystone 命令已废弃。
这些 client 不依赖于配置文件,但与环境变量、命令行参数有关。
keystone模块
首先,从 github 上把 keystone 模块克隆下来。$ git clone https://git.openstack.org/openstack/keystone.git -b stable/mitaka $ cd keystone
安装 keystone web 服务 (如有其它版本的
pip可自行更换,例如
pip27):
$ pip install .
该 keystone 模块依赖于配置文件,例如,
/etc/keystone/keystone.conf,但与环境变量无关。
配置文件
你可以在/etc文件夹下找到以下配置文件:
keystone.conf keystone-paste.ini logging.conf policy.json default_catalog.templates
编辑
/etc/keystone/keystone.conf, 并完成以下改动:
在 [DEFAULT] 部分中,定义初始管理员的令牌:
[DEFAULT] ... admin_token = ADMIN_TOKEN
还没有建立其它 user时,
openstack命令可加上
--os-token=ADMIN_TOKEN来通过验证。
在 [database] 部分中,配置数据库连接:
[database] ... connection = sqlite:///keystone.db (可自定义)
在 [token] 中,配置 Fernet 令牌提供者,也可选择 pki 的方式:
[token] ... provider = fernet
初始化数据库:
keystone-manage db_sync
初始化 Fernet 私钥:
# keystone-manage fernet_setup --keystone-user keystone --keystone-group keystone
选择 pki 方式的话,就是:
# keystone-manage pki_setup --keystone-user keystone --keystone-group keystone
keystone-user和
keystone-group为实际用户及组。
运行
可通过uwsgi方式运行:
$ uwsgi --http 127.0.0.1:35357 --wsgi-file $(which keystone-wsgi-admin) $ uwsgi --http 127.0.0.1:5000 --wsgi-file $(which keystone-wsgi-public)
也可通过
Apache HTTPD的方式运行,具体见官网。
创建 admin 用户角色
keystone 可通过以下命令行来初始化:$ keystone-manage bootstrap \ --bootstrap-password s3cr3t \ --bootstrap-username admin \ --bootstrap-project-name admin \ --bootstrap-role-name admin \ --bootstrap-service-name keystone \ --bootstrap-region-id RegionOne \ --bootstrap-admin-url http://localhost:35357 \ --bootstrap-public-url http://localhost:5000 \ --bootstrap-internal-url http://localhost:5000[/code] 然后就可以在openstack命令行里使用admin账号登录了。
可通过以下方式,来测试是否已配置合理:$ openstack project list --os-username admin --os-project-name admin \ --os-user-domain-id default --os-project-domain-id default \ --os-identity-api-version 3 --os-auth-url http://localhost:5000 \ --os-password s3cr3t环境变量
$ export OS_AUTH_URL=http://controller:35357/v3 $ export OS_URL=http://controller:35357/v3 $ export OS_IDENTITY_API_VERSION=3 $ export OS_PROJECT_NAME=admin $ export OS_USERNAME=admin $ export OS_PASSWORD=admin
这是 Identity API 的 V3版本使用样例,V3将全面应用。
V2 版本即将废弃,仍需使用,将 URL中的/v3改成/v2.0,并将OS_IDENTITY_API_VERSION那行不用即可。
创建项目见官网。
相关文章推荐
- Openstack(Mitaka) Swift Keystone V2.0部署方案
- Openstack-Mitaka Ceilometer 部署心得
- 快速入门Openstack,无脑多节点部署Mitaka(3)--keystone部署
- Openstack-Mitaka Ceilometer 部署心得
- openstack部署心得
- Openstack 安装部署指南翻译系列 之 Keystone服务安装(Identity)
- OpenStack Mitaka for Ubuntu 16.04 LTS 部署指南
- OpenStack 认证服务 KeyStone部署(三)
- 快速入门Openstack,无脑多节点部署Mitaka(6)--Neutron网络部署
- openstack-mitaka之块存储服务安装部署(controller)
- 在OpenStack(Mitaka版本)上通过Sahara部署Hadoop&Spark集群
- OpenStack Mitaka for Ubuntu 16.04 LTS 部署指南
- Openstack组件部署 — Keystone功能介绍与认证实现流程
- Openstack的环境的Mitaka部署dashboard 云主机 镜像(2)
- CentOS 7部署OpenStack(2)―安装keystone服务
- 快速入门Openstack,无脑多节点部署Mitaka(2)--完善ControllerNode的基础建设
- 快速入门Openstack,无脑多节点部署Mitaka(5)--Nova部署
- openstack-mitaka文件共享服务(controller安装与部署)
- openstack-mitaka之编排服务(controller安装部署)
- openstack实战部署Keystone认证服务及理论介绍