一、基础准备工作
部署环境:CentOS 7 64
1、关闭本地iptables防火墙并设置开机不自启动
2、关闭本地selinux;设置主机计算机名称;本地主机名称和IP的解析
3、与时间服务器保持时间同步
[root@controller ~]# ntpdate 10.33.1.129
[root@controller ~]# crontab -e
*/2 * * * * /usr/sbin/ntpdate 10.33.1.129 &> /dev/null
4、安装第三方yum源
[root@controller ~]# wget http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm
[root@controller ~]# rpm -ivh epel-release-7-5.noarch.rpm
[root@controller ~]# yum -y install http://rdo.fedorapeople.org/openstack-juno/rdo-release-juno.rpm
5、升级系统软件包并重新系统
[root@controller ~]# yum upgrade
[root@controller ~]# reboot
二、安装配置mariadb数据库
Openstack默认使用mysql,这里尝试使用MariaDB,它是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可 MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。在存储引擎方面,使用Percona的XtraDB,MariaDB基于事务的Maria存储引擎,替换了MySQL的InnoDB储引擎。
1、安装并配置mariadb数据库
[root@controller ~]# yum -y install mariadb mariadb-server MySQL-python
[root@controller ~]# cp /etc/my.cnf /etc/my.cnf.bak
[root@controller ~]# vim /etc/my.cnf.d/server.cnf
2、启动mariadb数据库
三、安装keyston用户认证组件
OpenStack的Identify服务(即Keystone)有两个主要功能
用户管理:实现用户认证及授权;
服务目录(Service catalog):所有可用服务的信息库,包含所有可用服务及其API endpoint路径;
1、安装配置Identity服务
[root@controller ~]# yum -y install openstack-utils openstack-keystone python-keystoneclient
2、创建keystone数据库和授权用户,为keystone服务创建访问数据库的用户
也可以执行以下命令创建keystone数据库,其默认会创建一个keystone用户以访问此同名数据库,密码可以使用–pass选项指定。命令执行能自动检测本机是否安装mysql-server,并且会提醒用户选择,为root用户设定密码。
3、编辑keystone的主配置文件
使用MySQL做为数据存储池,并配置其使用正确的参数。
[root@controller ~]# cp /etc/keystone/keystone.conf /etc/keystone/keystone.conf.bak
[root@controller ~]# vim /etc/keystone/keystone.conf
在[database]段中,确保与mysql相关的内容类似如下,注意其中的密码为keystone用户访问MySQL服务器所使用的密码:
connection=mysql://keystone:ksuser@controller/kspass
# 语法格式为 mysql://[user]:[pass]@[primary IP]/[db name]
4、配置keystone的管理token
为了使用admin用户管理keystone,可以通过配置keystone的客户端使用SERVICE_TOKEN和SERVICE_ENDPOINT环境变量来连接至Keystone,建议使用openssl命令生成一串随机数据
接着启动keystone服务;查看进程启动的相关信息:
检查日志文件中有无错误提示:
[root@cont