内容纲要

OpenStack 的部署有很多方案和工具,在最小化的实验环境中,可以将各个功能节点部署到一台物理服务器甚至虚拟化服务器上,比较简单的部署方式是通过Red Hat 开发的部署工具(RDO)进行所谓的 All-in-One 部署,即一体化部署。DRO 只支持Red Hat/CentOS系列的操作系统。该项目并不属于OpenStack 官方社区项目。官方步骤: https://www.rdoproject.org/install/packstack/

1、准备安装环境

1.1、操作系统配置要求

为方便实验,建议使用 VMWare 虚拟化机,安装CentOS 7 操作系统作为 Openstack 主机,具体安装过程就不做演示了。参考配置如下:

内存8到16G,磁盘100到200G
file

处理器4核,勾选“虚拟化 Intel VT-x/EPT 或 AMD-V/RVI(V)”
file

网络适配器选桥接模式
file

1.2、系统配置

1.2.1、网络配置

systemctl stop NetwokManager
systemctl disable NetworkManager
systemctl enable --now network
[root@node-a ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens33
#TYPE=Ethernet
TYPE=OVSPort
DEVICETYPE=ovs
#PROXY_METHOD=none
#BROWSER_ONLY=no
BOOTPROTO=static
OVS_BRIDGE=br-ex
#DEFROUTE=yes
#IPV4_FAILURE_FATAL=no
#IPV6INIT=yes
#IPV6_AUTOCONF=yes
#IPV6_DEFROUTE=yes
#IPV6_FAILURE_FATAL=no
#IPV6_ADDR_GEN_MODE=stable-privacy
#NAME=ens33
#UUID=fe575c99-73be-402a-84fa-4f43c7f9d749
DEVICE=ens33
ONBOOT=yes
#IPADDR=192.168.0.110
#NETMASK=255.255.255.0
#GATEWAY=192.168.0.1
#DNS1=223.5.5.5
HWADDR=00:0c:29:4d:49:cc
[root@node-a ~]#
[root@node-a ~]#
[root@node-a ~]# cat /etc/sysconfig/network-scripts/ifcfg-br-ex
DEVICE=br-ex
DEVICETYPE=ovs
TYPE=OVSBridge
BOOTPROTO=static
IPADDR=192.168.0.110
NETMASK=255.255.255.0
GATEWAY=192.168.0.1
DNS1=223.5.5.5
ONBOOT=yes
[root@node-a ~]#

配置完成重启网络服务

systemctl restart network

file

1.2.2、禁用防火墙和SELinux

systemctl disable firewalld
systemctl stop firewalld

关闭SELinux,生效需重启系统

vim /etc/selinux/config #SELINUX=enforcing 改成 SELINUX=disabled

1.2.3、设置主机名

hostnamectl set-hostname node-a

修改/etc/hosts

[root@node-a ~]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4 node-a
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6 node-a
192.168.0.110 node-a node-a.localdomain

1.2.4、更改语言编码

如果 CentOS 7 安装的是非英文版本,那么在/etc/environment 文件中添加以下定义:

LANG=en_US.utf-8
LC_ALL=en_US.utf-8

1.2.5、设置NTP

如果是集群环境,整改 OpenStack 环境中的所有节点时间必须同步,使用chrony同步互联网时间。

安装 chrony

yum install chrony -y

注释配置文件中原有server ,添加阿里NTP服务器。

[root@node-a ~]# cat /etc/chrony.conf
# Use public servers from the pool.ntp.org project.
# Please consider joining the pool (http://www.pool.ntp.org/join.html).
#server 0.centos.pool.ntp.org iburst
#server 1.centos.pool.ntp.org iburst
#server 2.centos.pool.ntp.org iburst
#server 3.centos.pool.ntp.org iburst
server ntp1.aliyun.com iburst
省略..........

重启 chronyd

systemctl restart chronyd.service

2、准备所需软件库

CentOS Extras 软件库已连同 CentOS 7 一并安装,并默认启用。该库能支持 OpenStack 库,只需执行以下命令即可设置 Openstack 库:

yum install -y centos-release-openstack-queens.noarch

这里使用的 OpenStack 版本为queens,RDO 基本与上游的 OpenStack 版本同步。如果安装不通版本,需修改版本名称。

启用 OpenStack Queens 资源库

yum-config-manager --enable centos-openstack-queens

安装YUM优先级插件 yum-plugin-priorities

yum install -y yum-plugin-priorities

下载软件源定义文件(RDO官网针对CentOS7的)

cd /etc/yum.repos.d/
curl -O https://trunk.rdoproject.org/centos7/delorean-deps.repo
curl -O https://trunk.rdoproject.org/centos7/current-passed-ci/delorean.repo

编辑delorean-deps.repo,按照此软件源定义,yum 将会安装最新版本的 OpenStack 。安装 Queens 版本需删除或注释该文件中前两个软件源定义,只保留最后一个名为“rdo-qemu-ev”的软件源定义。

[root@node-a yum.repos.d]# cat delorean-deps.repo
#[delorean-master-testing]
#name=dlrn-master-testing
#baseurl=https://trunk.rdoproject.org/centos7-master/deps/latest/
#enabled=1
#gpgcheck=0

#[delorean-master-build-deps]
#name=dlrn-master-build-deps
#baseurl=https://trunk.rdoproject.org/centos7-master/build-deps/latest/
#enabled=1
#gpgcheck=0

[rdo-qemu-ev]
name=RDO CentOS-$releasever - QEMU EV
baseurl=http://mirror.centos.org/$contentdir/7/virt/$basearch/kvm-common/
gpgcheck=0
enabled=1
skip_if_unavailable=1

升级软件包及系统内核(改变软件及系统设置)

yum update -y

重启并执行后续操作(由于内核更新)

reboot

3、安装 Packstack 安装器

安装Packstack

执行如下命令安装openstack-packstack及其依赖包:

yum install -y openstack-packstack

注,过程中会安装许多依赖包,如openstack-packstack-puppet等。

Packstack 是 RDO 的 Packstack 安装工具,用于取代手动设置 Packstack 。

4、安装 Openstack

运行 Packstack安装OpenStack

packstack --allinone

5、dashboard界面访问

Dashboard 可译为仪表板,是 Horizon 项目为 Openstack 云平台提供的 web 访问接口。云管理员和普通用户可以通过web界面管理、控制、使用 Openstack 云资源和服务。

通过浏览器访问过dashboard界面
file

使用 DRO 的 Packstack 工具安装的 Openstack,默认会创建两个云用户账户,一个是云管理员 admin ,另一个是用户测试的用户 demo,如果不在应答文件中为它们指定密码,则它们的初始登录密码会随机生成,存放于安装 Openstack 时 Linux 用户家目录中的 keystonerc_admin 和 keystonerc_demo文件中。
file