一、环境配置

1.各节点主机名及IP地址规划

| 节点 | 主机名 | IP规划(外网) | 仅主机 | -------- | -------- | -------- | | 控制节点 | controller | 192.168.241.10 | 192.168.128.10 | 实例节点 | compute | 192.168.241.20 | 192.168.128.20

2.各个节点安装系统的需求

(1)主机要求 主机为双网卡服务器或者PC机,内存为4GB以上,处理器2核以上。 (2)系统要求 操作系统为CentOS-7-x86_64-DVD-1511.iso,。 (3)节点 控制节点:存放系统数据库、中间件服务,实际为云平台系统的大脑和控制中心。 实例节点:存放虚拟机的服务器,支持处理器虚拟化功能,运行虚拟机管理程序(QEMU)或(KVM)管理虚拟机主机,同时为外部用户提供存储服务,为内部实例提供块存储服务。

二、系统搭建

1.修改各节点主机名 (1)控制节点 验证 (2)实例节点 验证 2.关闭各个节点防火墙

systemctl stop firewalld        #停止防火墙服务
systemctl disable firewalld       #设置防火墙不可开机自启

3.关闭各个节点selinux 配置 Selinux,修改配置文件/etc/selinux/config,修改完配置文件,需要重启后生效, 可以使用 setenforce 0 命令临时生效。

SELINUX=disable       #表示永久关闭selinux

4.配置各个节点域名映射 (1)在控制节点修改配置文件/etc/hosts,内容如下

192.168.241.10   controller
192.168.241.20   compute

(2)在实例节点修改配置文件/etc/hosts,内容如下

192.168.241.10   controller
192.168.241.10   compute

5.配置各个节点本地yum源 (1)添加新的CD/DVD镜像 (2)打印新的镜像

echo "- - -" >> /sys/class/scsi_host/host0/scan    #扫描新的CD/DVD
echo "- - -" >> /sys/class/scsi_host/host1/scan    #扫描新的CD/DVD 
echo "- - -" >> /sys/class/scsi_host/host2/scan    #扫描新的CD/DVD

(3)挂载镜像

mkdir /mnt/centos           #创建centos7镜像的临时挂载点
mkdir /mnt/iaas               #创建XianDian镜像的临时挂载点
mount /dev/sr0 /mnt/iaas/   #挂载xiandian镜像(XianDian镜像文件2.7G,可使用lsblk查看)
mount /dev/sr1 /mnt/centos/ #挂载centos7镜像

(4)搭建永久挂载点

mkdir -p /software/centos7                    
cp -r /mnt/centos/Packages/  /software/centos7/    #将Packages复制到/software/centso7下
cp -r /mnt/centos/repodata/  /software/centos7/     #将repodata复制到/software/centos7下
cp -r /mnt/iaas/iaas-repo/  /software/          #将iaas-repo复制到/software下

(5)配置本地yum源

进入yum配置文件 /etc/yum.repo.d

rm -rf *        #删除所有文件
mkdir aaa.repo       #创建新的配置文件

编辑aaa.repo文件

[centos]
name=centos
baseurl=file:///software/centos7/
gpgcheck=0
enabled=1

[openstack]
name=openstack
baseurl=file:///software/iaas-repo/
gpgcheck=0
enabled=1

6.配置各个节点网络 配置临时 IP,方便运行安装脚本,修改服务器 eno16777736 端口的地址。 控制节点:

TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=eno16777736
DEVICE=eno16777736
IPADDR=192.168.128.10   #网段与虚拟机网段一致
NETMASK=255.255.255.0
ONBOOT=yes
~           

修改配置文件/etc/sysconfig/network-scripts/ifcfg-eno33554960

TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=eno33554984
DEVICE=eno33554984
IPADDR=192.168.241.10
NETMASK=255.255.255.0
GATEWAY=192.168.241.2       #网段与虚拟机网段一致 
ONBOOT=yes       

实例节点: 修改配置文件/etc/sysconfig/network-scripts/ifcfg-eno16777736

TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=eno16777736
DEVICE=eno16777736
IPADDR=192.168.128.20
NETMASK=255.255.255.0
ONBOOT=yes

修改配置文件/etc/sysconfig/network-scripts/ifcfg-eno33554992

TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=eno33554984
DEVICE=eno33554984
IPADDR=192.168.241.20
NETMASK=255.255.255.0
ONBOOT=yes

修改完成后重启网络

systemctl restart network

7.安装iaas-xiandian安装包

yum install iaas-xiandian -y

8.编辑文件/etc/xiandian/openrc.sh(配置环境变量)

HOST_IP=192.168.128.10
HOST_NAME=controller
HOST_IP_NODE=192.168.128.20
HOST_NAME_NODE=compute
RABBIT_USER=openstack
RABBIT_PASS=000000
DB_PASS=000000
DOMAIN_NAME=demo
ADMIN_PASS=000000
DEMO_PASS=000000
KEYSTONE_DBPASS=000000
GLANCE_DBPASS=000000
GLANCE_PASS=000000
NOVA_DBPASS=000000
NOVA_PASS=000000
NEUTRON_DBPASS=000000
NEUTRON_PASS=000000
METADATA_SECRET=000000
INTERFACE_NAME=eno33554984
CINDER_DBPASS=000000
CINDER_PASS=000000
TROVE_DBPASS=000000
TROVE_PASS=000000
BLOCK_DISK=sdb1
SWIFT_PASS=000000
OBJECT_DISK=sdb2
STORAGE_LOCAL_NET_IP=192.168.128.20
HEAT_DBPASS=000000
HEAT_PASS=000000
CEILOMETER_DBPASS=000000
CEILOMETER_PASS=000000
AODH_DBPASS=000000
AODH_PASS=000000

控制节点和实例节点

9.执行脚本进行安装

iaas-pre-host.sh

完成配置后重启所有设备

reboot

10.部署脚本安装平台 ①在控制节点执行脚本iaas-install-mysql.sh进行数据库及消息列表服务安装。

iaas-install-mysql.sh

②在控制节点执行脚本iaas-install-keystone.sh进行keystone认证服务安装。

iaas-install-keystone.sh

③在控制节点执行脚本iaas-install-glance.sh进行glance镜像服务安装。

iaas-install-glance.sh

④在控制节点执行脚本iaas-install-nova-controller.sh进行nova计算服务安装。

iaas-install-nova-controller.sh

在实例节点执行脚本iaas-install-nova-compute.sh进行nova计算服务安装。

iaas-install-nova-compute.sh

⑤在控制节点执行脚本iaas-install-neutron-controller.sh进行neutron网络服务安装。

iaas-install-neutron-controller.sh

在实例节点执行脚本iaas-install-neutron -compute.sh进行neutron网络服务安装。

iaas-install-neutron-compute.sh

⑥在控制节点执行脚本iaas-install-neutron-controller-vlan.sh进行vlan网络安装配置。

iaas-install-neutron-controller-gre.sh

在实例节点执行脚本iaas-install-neutron-compute-vlan.sh进行vlan网络安装配置。

iaas-install-neutron-compute-gre.sh

⑦在控制节点执行脚本iaas-install-dashboard.sh进行dashboard服务安装。

iaas-install-dashboard.sh

⑧在控制节点执行脚本iaas-install-cinder-controller.sh进行cinder块存储服务安装。

iaas-install-cinder-controller.sh

在实例节点执行脚本iaas-install-cinder-compute.sh进行cinder块存储服务安装。

iaas-install-cinder-compute.sh

⑨在控制节点执行脚本iaas-install-swift-controller.sh进行swift对象存储服务安装。

iaas-install-swift-controller.sh

在实例节点执行脚本iaas-install-swift-compute.sh进行swift对象存储服务安装。

iaas-install-swift-compute.sh

⑩在控制节点执行脚本iaas-install-heat.sh进行heat编配服务安装。

iaas-install-heat.sh

⑪在控制节点执行脚本iaas-install-ceilometer-controller.sh进行ceilometer监控服务安装。

iaas-install-ceilometer-controller.sh

在实例节点执行脚本 iaas-install-ceilometer-compute.sh进行ceilometer监控服务安装。

iaas-install-ceilometer-compute.sh

⑫在控制节点执行脚本iaas-install-alarm.sh进行alarm告警服务安装。

iaas-install-alarm.sh

验证安装基础工作完成

上述操作完成后,打开网页 http://192.168.128.10/dashboard进行验证服务 若看到dashboard登录界面,以及管理员账号和密码登录后,进入到管理界面,表示安装基础工作正确完成