在RHEL 7.1系统上部署OpenStack Kilo版本需要按照以下步骤进行:
### 准备工作
1. "硬件要求":确保你的服务器硬件符合OpenStack Kilo的最低要求。
2. "网络要求":配置好至少两个网络接口,一个用于管理网络,另一个用于外部网络。
3. "存储要求":至少需要一块用于存储虚拟机的硬盘。
### 系统准备
1. "更新系统":
```bash
sudo yum update -y
```
2. "安装EPEL仓库":
```bash
sudo yum install epel-release -y
```
3. "安装OpenStack的Yum仓库":
```bash
sudo rpm -Uvh https://www.openstack.org/software/releases/kilo/requirements/openstack-release-rdo-10-2.noarch.rpm
```
4. "安装OpenStack和相关的依赖":
```bash
sudo yum install openstack-packstack -y
```
### 部署OpenStack
1. "开始部署向导":
```bash
sudo packstack --allinone
```
2. "配置向导":
在向导中,你会被提示输入一些配置信息。以下是一些常见的配置选项:
- "部署模式":选择`allinone`模式,这将在一个机器上部署所有组件。
- "管理网络":通常使用`Public`网络
相关内容:
系统:RHEL7.1 版本X86-64
虚拟机版本:VM12
安装RHEL7.1环境:
安装虚拟机时,要指定CPU类型支持虚拟化:
内存:6G
处理器:4核心
开启CPU虚拟化支持
如下图:
安装好RHEL7.1操作系统。
1.制作本地YUM及安装最新RHEL7-Epel扩展yum源
RHEL7-Epel扩展yum源: EPEL 是yum的一个软件源,里面包含了许多基本源里没有的软件。比如openstack中的很软件包,不需要标准的系统镜像源中。
配置本地yum源:
# mount/dev/cdrom /mnt/
#
vim/etc/yum.repos.d/rhel7.repo #插入以下内容
name=rhel7
baseurl=file:///mnt
enable=1
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
# yum list #测试
测试安装软件包:
# yum install lrzsz -y
安装yum EPEL扩展源:
# wget http://ftp.sjtu.edu.cn/fedora/epel/7/x86_64/e/epel-release-7-7.noarch.rpm
注:使用上海交通大学的源,下载RHEL7扩展源
http://ftp.sjtu.edu.cn/fedora/epel/7/x86_64/e/
# rpm -ivh epel-release-7-7.noarch.rpm
警告:
epel-release-7-5.noarch.rpm:头V3 RSA/SHA256 Signature, 密钥 ID352c64e5: NOKEY
准备中... #################################
正在升级/安装...
1:epel-release-7-5 #################################
导入扩展源公钥:
# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
测试扩展源:
#yum clean all
# yum list #可以正常使用,说明正常
2.设置RDO yum 源库
# wget https://rdo.fedorapeople.org/rdo-release.rpm
# rpm -ivh rdo-release.rpm
查看源: 默认使用支持的是openstack-kilo版本
# cat /etc/yum.repos.d/rdo-release.repo
name=OpenStack KiloRepository
baseurl=http://repos.fedorapeople.org/repos/openstack/openstack-kilo/el7/
skip_if_unavailable=0
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-RDO-kilo
导入公钥:
# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-RDO-kilo
配置yum,把通过外网安装的软件包保留下来:
# vim /etc/yum.conf
改:3keepcache=0
为:keepcache=1
测试:
# yum install mysql-server
。。。
Is this ok : d #这里输入y表示下载完软件包后,开始安装。 d 表示只是下载不安装
查看下载的文件:
# ls /var/cache/yum/x86_64/7Server/
epel openstack-kilo rhel7 timedhosts
注:每个源都会在这里面生成对应的目录
# ls /var/cache/yum/x86_64/7Server/openstack-kilo/packages/
mariadb-galera-common-5.5.40-2.el7.x86_64.rpm mariadb-galera-server-5.5.40-2.el7.x86_64.rpm
注:其中packages目录存放下载到的软件包。
删除下载的测试包:
# rm -rf /var/cache/yum/x86_64/7Server/openstack-kilo/packages/*
# rm -rf /var/cache/yum/x86_64/7Server/epel/packages/galera-25.3.5-7.el7.x86_64.rpm
配配置主机名:
# vim/etc/hostname #写入
xinsz08
配置hosts文件:
# vim /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4localhost4.localdomain4
::1 localhost localhost.localdomainlocalhost6 localhost6.localdomain6
192.168.1.61 xuegod61.cn
192.168.1.61 xuegod61
注:如果不配置主机名,后期安装过程通过主机名找到不对应的IP地址。如果不添加xuegod61知主机名解决,后期会出错。
关闭selinux
# vim /etc/selinux/config
改:SELINUX=enforcing
为:SELINUX=disabled
关闭防火墙:
#systemctl stop firewalld
#systemctl disable firewalld
rm '/etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service'
rm'/etc/systemd/system/basic.target.wants/firewalld.service'
3.安装packstack
#yum installopenstack-packstack
--> FinishedDependency Resolution
Error: Package:openstack-packstack-2015.1-0.11.dev1616.g5526c38.el7.noarch (openstack-kilo)
Requires: python-docutils
You could try using --skip-broken to workaround the problem
You could try running: rpm -Va --nofiles--nodigest
解决:配置yum源:
# vim /etc/yum.repos.d/base.repo
name=CentOS-$releasever -Base
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos/7.1.1503/os/x86_64/
gpgcheck=0
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-6
安装:
# yum install python-docutils
查看下载的软件包:
# ls /var/cache/yum/x86_64/7Server/base/packages/
python-docutils-0.11-0.2.20130715svn7687.el7.noarch.rpm
python-pillow-2.0.0-17.gitd1c6db8.el7.x86_64.rpm
再次安装:
# yum -yinstall openstack-packstack
安装allinone 模式openstack
# packstack --allinone #开始安装,此处需要等待10分钟
注:此时安装也需要对应连接网络,因为需要下载软件包。
报错:
Applying Puppetmanifests
ERROR : Error appearedduring Puppet run: 192.168.1.61_amqp.pp
Error: Could not startService: Execution of '/usr/bin/systemctlstart rabbitmq-server' returned 1: Job for rabbitmq-server.servicefailed. See 'systemctl status rabbitmq-server.service' and 'journalctl -xn' fordetails.
You will find full tracein log/var/tmp/packstack/20150929-132454-xs2f6v/manifests/192.168.1.61_amqp.pp.log
Please check log file/var/tmp/packstack/20150929-132454-xs2f6v/openstack-setup.log for moreinformation
注:这个服务启动不了,
/usr/bin/systemctlstart rabbitmq-server
解决:
# cat/etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4localhost4.localdomain4
::1 localhost localhost.localdomainlocalhost6 localhost6.localdomain6
192.168.1.61 xuegod61.cn
192.168.1.61 xuegod61
#填加一个短主机名解析就可以了。
报错:
Applying172.10.10.71_nova.pp
172.10.10.71_nova.pp:
Applying Puppetmanifests
ERROR : Errorappeared during Puppet run: 172.10.10.71_nova.pp
Error:Execution of '/usr/bin/yum -d 0 -e 0 -y install openstack-ceilometer-compute'returned 1: Error: Package: python-ceilometer-2015.1.0-6.el7.noarch(openstack-kilo)
You will find full tracein log/var/tmp/packstack/20150823-175023-5IwInx/manifests/172.10.10.71_nova.pp.log
Please check log file/var/tmp/packstack/20150823-175023-5IwInx/openstack-setup.log for
查看日志:
# vim/var/tmp/packstack/20150823-182802-97DIOp/manifests/172.10.10.71_nova.pp.log
#rpm-ivh python-werkzeug-0.9.6-1.fc22.noarch.rpm
#yuminstall pysnmp python-croniter python-jsonpath-rw
# rpm-ivh python-ceilometer-2015.1.0-7.fc24.noarch.rpm
如果执行不成功:
#yuminstall python-ceilometer
注:默认源中没有这两个文件:
python-werkzeug-0.9.6-1.fc22.noarch.rpm
再次安装:
#packstack --answer-file=/root/packstack-answers-20150823-175025.txt
****Installation completed successfully ******
6.Openstack 自动化安装
# packstack--answer-file=./answer.conf
Welcome to Installer setup utility
7. Dashboard登录
imgarr