openstack部署keystone
环境:
免密钥,域名解析
cat /etc/hosts
192.168.42.120 controller
192.168.42.121 compute
192.168.42.122 storage
安装服务
一、安装openstack软件包
1.安装openstack python客户端
yum install python-openstackclient
2.安装openstack selinux 的组件
yum install openstack-selinux
二、数据库
1.安装mariadb mariadb-server python2-pyMySQL
yum install mariadb mariadb-server python2-PyMySQL
2.配置openstack配置文件
vim /etc/my.cnf.d/openstack.cnf
[mysqld] bind-address = 192.168.42.120 监听的地址
default-storage-engine = innodb 默认数据库引擎
innodb_file_per_table = on
max_connections = 4096 最大链接数(最好写大点)
collation-server = utf8_general_ci 字符集
character-set-server = utf8 server端的字符集
3.重启并设置开机自启数据库
systemctl restart mariadb.service
systemctl enable mariadb.service
4.初始化数据库
mysql_secure_installation
三、消息队列
1.安装rabbitmq服务
yum install rabbitmq-server
2.重启并设置开机自启rabbitmq
systemctl restart rabbitmq-srever.service
systemctl enable rabbitmq-server.service
3.添加用户并设置权限,设置为管理员
rabbitmqctl add_user openstack admin
rabbitmqctl set_permissions openstack ".*" ".*" ".*"
rabbitmqctl set_user_tags openstack administrator
4.浏览器登录查看是否设置成功
192.168.42.120:15672
四、memcache
1.安装缓存系统
yum install memcached python-memcached
2.编辑配置文件
vim /etc/sysconfig/mamcached
OPTIONS="-l 127.0.0.1,::1,controller"
写域名不写ip的原因:以后ip变化不需要修改配置文件,直接修改/etc/hosts文件即可
3.重启并设置开机自启
systemctl restart memcached
systemctl enable memcached
配置身份认证服务
一、.安装部署keystone
1.登录数据库,创建以一个keystone数据库,并设置权限,可以第三方登录
mysql -uroot -p0330
create database keystone
grant all privileges on keystone.* to keystone@localhost identified by "keystone"
grant all privileges on keystone.* to keystone@'%' identified by "keystone"
2.安装keystone服务(通过调用http服务对外提供服务)
yum install openstack-keystone httpd mod_wsgi
3.修改配置文件
cp /etc/keystone/keystone.conf /etc/keystone/keystone.conf.bak 先复制再修改
vim /etc/keystone/keystone.conf
-rw-r-----. 1 root keystone 771 6月 3 15:34 keystone.conf
4.同步数据库
su -s /bin/sh -c "keystone-manage db_sync" keystone
5.创建fornet配置,设置一个keystone用户和keystone组
keystone-manage fernet_setup --keystone-user keystone --keystone-group keystone
6.创建keystone用户的身份信息
keystone-manage credential_setup --keystone-user keystone --keystone-group keystone
7.keystone服务的服务端点(必须是controller的主机名)
keystone-manage bootstrap --bootstrap-password admin \ admin是openstack用户的密码
--bootstrap-admin-url http://controller:35357/v3/ \ 管理网的服务端点:主机名:端口号:api版本
--bootstrap-internal-url http://controller:5000/v3/ \ 内部
--bootstrap-public-url http://controller:5000/v3/ \ 公共
--bootstrap-region-id RegionOne
8.编辑apache服务
vim /etc/httpd/conf/httpd.conf
ServerName controller
9.通过wsgi这个模块调用apache(把模块链接到keystone的配置文件夹下)
ln -s /usr/share/keystone/wsgi-keystone.conf /etc/httpd/conf.d/
10.重启并设置开机自启httpd
systemctl restart httpd
systemctl enable httpd
11.创建admin用户的环境变量
vim openrc
export OS_USERNAME=admin 宣告变量OS_USERNAME的值是admin
export OS_PASSWORD=admin 密码是admin
export OS_PROJECT_NAME=admin 项目是admin
export OS_USER_DOMAIN_NAME=Default 所处在的domain域
export OS_PROJECT_DOMAIN_NAME=Default 项目域的名字
export OS_AUTH_URL=http://controller:35357/v3 服务端点
export OS_IDENTITY_API_VERSION=3 API版本
二、创建domain, projects, users, and roles
每次使用openstack命令之前必须宣告环境变量
1.创建项目
openstack project create --domain default \ --description "Service Project" service 域名叫default 项目service
2.创建一个名为demo的项目,域名叫default
openstack project create --domain default \ --description "Demo Project" demo
openstack project list 查看项目列表
3.创建demo的用户,处在default域中,弹出一个交互式的界面
openstack user create --domain default \ --password-prompt demo
openstack user list 查看用户列表
4.创建一个user角色
openstack role create user 普通用户
5.将一个demo项目里的demo用户的角色设为user
openstack role add --project demo --user demo user
6.取消环境变量的值
unset OS_AUTH_URL OS_PASSWORD
7.验证
openstack --os-auth-url http://controller:35357/v3 \ keystone的服务端点
--os-project-domain-name default 登录的项目域名default
--os-user-domain-name default \ 用admin项目里的admin用户登录
--os-project-name admin --os-username admin token issue 采用token的方式验证
出现交互式界面输入admin
以上keystone服务部署完成。
openstack部署keystone的更多相关文章
- openstack 之~keystone部署
第一:版本信息 官网http://docs.openstack.org/newton/install-guide-rdo/keystone.html 我们按照Newton这个版本来部署,opensta ...
- openstack之keystone部署
前言 openstack更新频率是挺快的,每六个月更新一次(命名是是以A-Z的方式,Austin,Bexar...Newton).博主建议大家先可一种版本研究,等某一版本研究透彻了,在去研究新的版本. ...
- Openstack组件部署 — keystone(domain, projects, users, and roles)
目录 目录 前文列表 Create a domain projects users and roles domain projects users and roles的意义和作用 Create the ...
- Openstack组件部署 — Keystone Install & Create service entity and API endpoints
目录 目录 前文列表 Install and configure Prerequisites 先决条件 Create the database for identity service 生成一个随机数 ...
- Openstack部署工具
Openstack发展很猛,很多朋友都很认同,2013年,会很好的解决OpenStack部署的问题,让安装,配置变得更加简单易用. 很多公司都投入人力去做这个,新浪也计划做一个Openstack的is ...
- 《OpenStack部署实践》
<OpenStack部署实践> 基本信息 作者: 张子凡 丛书名: 图灵原创 出版社:人民邮电出版社 ISBN:9787115346797 上架时间:2014-2-27 出版日期:2014 ...
- OpenStack之Keystone模块
一.Keystone介绍 OpenStack Identity(Keystone)服务为运行OpenStack Compute上的OpenStack云提供了认证和管理用户.帐号和角色信息服务,并为Op ...
- 网易OpenStack部署运维实战
OpenStack自2010年项目成立以来,已经有超过200个公司加入了 OpenStack 项目,目前参与 OpenStack 项目的开发人员有 17,000+,而且这些数字还在增加,作为一个开源的 ...
- OpenStack核心组件-keystone
1. Keystone介绍 keystone是OpenStack的组件之一,用于为OpenStack家族中的其它组件成员提供统一的认证服务,包括身份验证.令牌的发放和校验.服务列表.用户权限的定义等等 ...
随机推荐
- zencart批量评论插件Easy Populate CSV add reviews使用教程
此插件在Easy Populate CSV 1.2.5.7b产品批量插件基础上开发,有1.3x与1.5x两个版本. zencart批量评论插件Easy Populate CSV add reviews ...
- .NET平台的发展
.NET平台的发展.NET从1.0到.NET Core3.0:C#从1.0到8.0: ASP.NET从1.0到Core3.0: ASP.NET MVC1.0到ASP.NET MVC6.0,
- IDEA部署Tomcat报错:No artifacts marked for deployment
刚开始碰到这个问题还被坑了,搞了好半天...所以我准备记录一下,走的弯路就不说了,因为我没图
- BZOJ2238 Mst[最小生成树+树剖+线段树]
跑一遍mst.对于非mst上的边,显然删掉不影响. 如果删边在树上,相当于这时剩下两个连通块.可以证明要重新构成mst只需要再加一条连接两个连通块的最小边,不会证,yy一下,因为原来连通块连的边权和已 ...
- MySQL BinLog Server 搭建实战
一.MySQL Binlog server 介绍 MySQL Binlog Server: 它使用 mysqlbinlog 命令以 daemon 进程的方式模拟一个 slave 的 IO 线程与主库连 ...
- hive常用日期函数-模板
已知日期 要求日期 语句 结果 本周任意一天 本周一 select date_sub(next_day('2016-11-29','MO'),7) ; 2016-11-28 本周任意一天 上周一 se ...
- BZOJ 2157: 旅游 (树链剖分+线段树)
树链剖分后线段树维护区间最大最小值与和. 支持单点修改与区间取反. 直接写个区间取反标记就行了.线段树板题.(200行6000B+ 1A警告) #include <cstdio> #inc ...
- jquery image选择器 语法
jquery image选择器 语法 作用::image 选择器选取类型为 image 的 <input> 元素.无锡大理石测量平台 语法:$(":image") jq ...
- javaScript高级程序设计第3版笔记
<script src = "xxx.js" defer = "defer"> </script> 在引用外部script时,<s ...
- C/C++ - malloc/free和new/delete的区分
new/delete与malloc/free的区别主要表现在以下几个方面: 注意:最主要的区别,new/delete是运算符,而malloc/free是函数 (1).new能够自动计算需要分配的内存空 ...