基础环境和系统准备
1.节点主机名及IP地址规划
2.各节点安装系统要求
创建两台虚拟机
主机要求:主机为双网卡服务器或者PC机,内存为4GB以上,处理器2核以上。
环境要求:操作系统为 CentOS-7-x86_64-DVD-1511.iso和XianDian-IaaS-v2.2.iso
3.配置主机名
控制节点主机名为controller
实例节点主机名为compute
在控制接点使用hostnamectl命令修改主机名
hostnamectl set-hostname controller
在实例节点使用hostnamectl修改主机名
hostnamectl set-hostname controller
修改完成重启生效
reboot
4.配置域名解析
在全部节点的/etc/hosts文件中添加域名解析。
在控制节点修改配置文件/etc/hosts,内容如下。
vi /etc /hosts
末尾追加以下内容
172.24.2.10 controller
172.24.2.20 compute
在实例节点修改配置文件/etc/hosts
vi /etc /hosts
末尾追加以下内容
172.24.2.10 controller
172.24.2.20 compute
5.配置环境
关闭selinux
配置文件存放位置/etc/selinux/config
# vi /etc/selinux
将SELINUX=enforcing改为SELINUX=disabled
修改完配置文件,需要重启后生效,可以使用setenforce 0命令临时生效
关闭selinux的原因:表示系统会收到警告信息,但是不会受到限制,作为selinux的debug模式用处
实例节点(compute)配置一样
关闭防火墙
# systemctl stop firewalld //关闭Firewalld防火墙服务
# systemctl disable firewalld //关闭Firewalld防火墙开机自启动
6.配置yum源
将提供的安装光盘和安装文件拷贝到系统内部,制作安装源,本次测试采用实验室本地源。
(1)安装源子目录
将本书提供的光盘镜像文件XianDian-IaaS-v2.2.iso和CentOS-7-x86_64-DVD-1511.iso上传到两个节点服务器自己指定的子目录中(如子目录/var中)并解压。创建子目录software,如图2-6所示。将子目录iaas-repo移至/var/software子目录中;创建子目录centos 7,将子目录Packages和repodata移至子目录centos 7中,可以删除拷贝在var下的原解压文档。如果是用VMware创建的虚拟机来搭建IaaS平台,可以通过挂载镜像文档来拷贝上述软件包。
(2)建立FTP服务
进入图2-6的子目录,用rpm命令安装FTP服务器,修改FTP默认的文件服务路径为/var/software,即指向存放yum源路径,需在/etc/vsftpd下修改vsftpd.conf配置文件,添加如下配置项。
anon_root=/opt
存盘后再重启FTP服务。
(3) yum源备份
# mv /etc/yum.repos.d/*/opt/
(4)创建repo文件
在控制节点的/etc/yum.repos.d/ 路径下创建local.repo 文件,编辑内容如下。
[centos]
name=centos //设置此yum的资源描述名称
baseurl=file:///opt/centos7 //设置yum源的访问地址及路径
gpgcheck=0 //不使用gpg检查gpgkey
enabled=1 //启动此yum源
[openstack]
name=OpenStack
baseurl=file:///opt/iaas-repo
gpgcheck=0
enabled=1
做好上述配置后建议进行FTP服务器和yum命令的测试,如用yum命令安装简单的服务等。
在实例节点的/etc/yum.repos.d/ 路径下创建local.repo 文件,与上述类似,仅需修改FTP服务器的IP地址为172.24.2.10,也可以用控制节点的FTP服务器作为yum源的资源包。
修改完成之后
清理yum源
yum clean all
生产缓存
yum makecache
实例节点操作一样
(5)配置ip地址
在控制节点下
修改配置文件/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
UUID=17b1974f-49b3-45cf-b2e5-e2133c6c0420
DEVICE=eno16777736
ONBOOT=yes
IPADDR=172.24.2.10
PREFIX=24
对配置文件/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=eno33554960
UUID=40da3afe-717e-492b-a8f6-4a0c63737dfe
DEVICE=eno33554960
ONBOOT=yes
IPADDR=192.168.128.10
NETAMSK=255.255.255.0
GATEWAY=192.168.128.2
DNS1=114.114.114.114
修改完成重启网络
systemctl restart network
(6)#控制节点和实例节点
安装iaas-xiandian安装包
yum install iaas-xiandian -y
进行分区
fdisk /dev/sdb //分出两个大小为25G的分区
mkfs.xfs /dev/sdb1 //进行格式化
mkfs.xfs /dev/sdb2 //进行格式化
编辑文件/etc/xiandian/openrc.sh(配置环境变量)先删除原先文件中的所有内容再添加以下内容
HOST_IP=172.24.2.10 //仅主机模式的IP地址
HOST_NAME=controller //控制节点的主机名
HOST_IP_NODE=172.24.2.20 //仅主机模式的IP地址
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=eno33554960 //NAT模式的网卡名称
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=172.24.2.20 //实例节点的仅主机IP地址
HEAT_DBPASS=000000
HEAT_PASS=000000
CEILOMETER_DBPASS=000000
CEILOMETER_PASS=000000
AODH_DBPASS=000000
AODH_PASS=000000
实例节点配置一样
(7)控制节点和实例节点
执行脚本iaas-pre-host.sh进行安装
iaas-pre-host.sh
(8)重启设备
完成配置,重启两个节点服务器
reboot
(9)部署脚本安装平台
①在控制节点执行脚本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-gre.sh进行vlan网络安装配置。
iaas-install-neutron-controller-gre.sh
在实例节点执行脚本iaas-install-neutron-compute-gre.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-swift-controller.sh进行swift对象存储服务安装。
# iaas-install-swift-controller.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://172.24.2.10/dashboard进行验证服务,若看到图2-7 dashboard登录界面,以及管理员账号和密码登录后看到图下 dashboard管理界面,表示安装基础工作正确完成。