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家族中的其它组件成员提供统一的认证服务,包括身份验证.令牌的发放和校验.服务列表.用户权限的定义等等 ...
随机推荐
- while 循环 及 and or not
一 while 循环 语法: while 条件: 结果 如果条件为真,则直接执行结果,然后再次判断条件,直到条件是假,停止循环 结束循环: 1.改变条件 2.break 二 流程控制 break 和 ...
- Hadoop_08_客户端向HDFS读写(上传)数据流程
1.HDFS的工作机制: HDFS集群分为两大角色:NameNode.DataNode (Secondary Namenode) NameNode负责管理整个文件系统的元数据 DataNode 负责管 ...
- (转)ORACLE中关于外键缺少索引的探讨和总结
在ORACLE数据库中,定义外键约束时,ORACLE是不会自动创建对应索引的,必须手动在外键约束相关的列上创建索引.那么外键字段上是否有必要创建索引呢?如果有必要的话,巡检时,如何找出外键字段上没有创 ...
- unittest 详解
内容总括 一. 初始化 setUp 与 tearDown setUpClass 与 tearDownClass unittest.main(verbosity=0/1/2) 二. 执行顺序 按顺序 ...
- angularjs 实现下拉框编辑数据回显
https://www.cnblogs.com/janice-jia/p/9764938.html 正常的js回显选择,需要添加 select ="selected",angula ...
- Linux命令手册man
命令手册:manualman COMMANDman 2 read whatis COMMAND:查看命令有几个章节 man分章节:常见章节有8个,1:用户命令2:系统调用3:库用户4:特殊文件(设备文 ...
- (转发)Android 源码获取-----在Windows环境下通过Git得到Android源代码
在学习Android的过程中,深入其源代码研究对我们来说是非常重要的,这里将介绍如何通过在Windows环境下使用Git来得到我们的Android源代码. 1.首先确保你电脑上安装了Git,这个通过 ...
- 通过远程 HTTP GET 请求载入信息
jQuery.get(url, [data], [callback], [type]) 概述 通过远程 HTTP GET 请求载入信息. 这是一个简单的 GET 请求功能以取代复杂 $.ajax .请 ...
- Redis实战(18)Redis位图巧用,节约内存
序言 资料 https://www.cnblogs.com/luke44/p/12031078.html
- position:fixed 失效问题
为了提升动画性能,在body上加上了transform:translate3d(0,0,0) 但是3d使得新建了一个层(具体原因请参考:高性能css动画),导致position:fixed不在当前的层 ...