RedHat6.5 安装OpenStack all in one-RDO方式
OpenStack是一个开源的云平台,由各个组件协同工作,安装非常复杂。RedHat有个关于Openstack的项目RDO,可以简化安装过程,但是如果真按RDO所说的三步去安装,发现安装过程中还是有很多报错,不得不查询Openstack的官方文档。本来准备在新出的RHEL7上安装的,发现缺少libselinux(epel7)的附加包,有可能还没编译。所有选择RedHat6.5作为底层操作系统。
安装环境准备
1.硬件环境:
DELL R410 四核4G内存,双网卡(本实例中只用到一个网卡),2块160G硬盘
2.软件环境:
安装RedHat 6.5 (选择最小化安装)
eth0接口IP地址:192.168.11.120/24
主机名:OSNode.demostack
操作用户:root (也可以用其他用户,只需在所有的命令前加 sudo)
RDO官方文档地址:http://openstack.redhat.com/Quickstart
OpenStack 官方文档:http://docs.openstack.org/
操作系统安装配置
1.安装底层操作系统RHEL
操作系统的安装过程就不赘述了,这里选择最小化安装 RedHat 6.5 ,安装过程中记得配置好hostname,hostname一定要足够的长度,千万不能是纯数字的,如189.localdomain。我这里设为OSNode.demostack
(这是我遇到的第一个错误,原想这个hostname无所谓,直接就随手填了个ip地址的最后一段(189.localdomain),结果安装过程中Puppet报错,)
2.配置host文件
编辑host文件,添加主机名和对应的ip地址到host文件。
vi /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
127.0.0.1 Node.OpenStack
-----------------------------------------------------------------------------------------------------------------
这个地方前面的ip地址最好填127.0.0.1,应为RDO安装的Mysql默认只能这个ip地址连接,如果你填写的是本机网卡的ip地址,会报如下错误
ERROR : Error appeared during Puppet run: 192.168.11.120_keystone.pp
Error: /Stage[main]/Keystone::Roles::Admin/Keystone_role[_member_]: Could not evaluate: Execution of '/usr/bin/keystone --os-endpoint http://127.0.0.1:35357/v2.0/ role-list' returned 1: An unexpected error prevented the server from fulfilling your request. (HTTP 500)
3.配置网络
编辑 /etc/sysconfig/network-scripts/ifcfg-** 文件
[root@OSNode network-scripts]# vi ifcfg-eth0
DEVICE=eth0
TYPE=Ethernet
UUID=11ed2c17-9098-4519-b388-9f3824b6c531
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=none
HWADDR=00:0C:29:D1:80:BB
IPADDR=192.168.11.120
PREFIX=24
GATEWAY=192.168.11.1
DNS1=114.114.114.114
配置好IP地址、网关、DNS,最好ping 163.com 看下是否正常通讯。
4.打开系统防火墙
这个默认RHEL6.5是打开的,不要关闭了,Openstack的很多网路功能都是通过防火墙实现的。
service iptables status
5.关闭selinux
vi /etc/selinux/config
SELINUX=disabled
重启生效
6.配置本地yum环境
上传RedHat 6.5 IOS镜像到home目录,新建个目录rhel6,挂载ISO文件到Local_YUM目录,修改repo文件,执行步骤如下:
#cd /home
#mkdir rhel6
#mount -o loop RHEL6.5.iso rhel6/
#vi /etc/yum.repos.d/RHEL6.5.repo
[rhel6]
name=rhel6
baseurl=file:///root/rhel6/
enabled=1
gpgcheck=0
~
更新YUM缓存
yum clean all
yum update
yum makecache
7.重启机器
reboot