使用VMware-Workstation搭建先电IaaS2.4基础服务私有云平台和创建云主机参考先电2.4手册
使用VMware Workstation搭建先电IaaS2.4基础服务私有云平台和创建云主机(参考先电2.4手册)
1、前期准备与说明
使用搭建openstack私用云平台的软件:VMware Workstation16
使用的基础镜像:centos7.5.iso
使用搭建的iso镜像包:chinaskills_cloud_iaas.iso
2、controller、compute硬件配置
sdb和sdc是分别作为cinder服务和swift服务的存储磁盘。
controller和compute虚拟机的虚拟化引擎尽量都要打上 √
第一项是开启嵌套虚拟化支持,需要在虚拟机中继续安装虚拟机时才需要开启。 (这个一定要打上√)
第二项会降低虚拟化性能,其本质是用于debug时使用。 (可以选择不打√)
第三项会提升io性能,但需要物理机支持io虚拟化,对于bios和主板、CPU有一定要求。( 可以选择不打√)
以下是网络配置:
3、配置网络、主机名
(1)controller节点
#vi /etc/sysconfig/network-scripts/ifcfg-en*(具体的网口)文件
配置网络(第一块网卡):
改:
ONBOOT=yes
BOOTPROTO=static
添:
IPADDR=192.168.100.10
PREFIX=24
GATEWAY=192.168.100.1
配置网络(第二块网卡):
#vi /etc/sysconfig/network-scripts/ifcfg-en*(具体的网口)文件
改:
ONBOOT=yes
BOOTPROTO=static
添:
IPADDR=192.168.200.10
PREFIX=24
重启网卡
#systemctl restart NetworkManager
配置主机名:
#hostnamectl set-hostname controller
按ctrl+d 退出 重新登陆
(2)compute 节点
配置网络(第一块网卡):
#vi /etc/sysconfig/network-scripts/ifcfg-en*(具体的网口)文件
改:
ONBOOT=yes
BOOTPROTO=static
添:
IPADDR=192.168.100.20
PREFIX=24
GATEWAY=192.168.100.1
配置网络(第二块网卡):
#vi /etc/sysconfig/network-scripts/ifcfg-en*(具体的网口)文件
改:
ONBOOT=yes
BOOTPROTO=static
添:
IPADDR=192.168.200.20
PREFIX=24
重启网卡
#systemctl restart NetworkManager
配置主机名:
#hostnamectl set-hostname compute
按ctrl+d 退出 重新登陆
以上操作在虚拟机本机上操作
以下操作在远程连接工具上操作(连接后先把两个镜像传到controller中的/root 下)
4、格式化compute磁盘(在compute中操作)
#mkfs.xfs /dev/sdb
#mkfs.xfs /dev/sdc
(具体的磁盘名,可以用 fdisk 命令查看,我这里是sdb和sdc)
5、主机名映射
[root@controller ~]# vi /etc/hosts
添:
192.168.100.10 controller
192.168.100.20 compute
[root@compute ~]# vi /etc/hosts
添:
192.168.100.10 controller
192.168.100.20 compute
在这里可以对上面的操作验证一下,在controller中执行 ( ping compute ) 和在compute中执行 ( ping controller ) 看是否都通
6、配置yum源
【controller】
#rm -rf /etc/yum.repos.d/*
#cd /etc/yum.repos.d/
#vi centos.repo
增:
[centos]
name=centos
baseurl=file:///opt/centos
gpgcheck=0
enabled=1
[iaas]
name=iaas
baseurl=file:///opt/iaas-repo
gpgcheck=0
enabled=1
【compute】
#mv /etc/yum.repos.d/* /opt/
#cd /etc/yum.repos.d/
#vi centos.repo
增:
[centos]
name=centos
baseurl=ftp://192.168.100.10/centos
gpgcheck=0
enabled=1
[iaas]
name=iaas
baseurl=ftp://192.168.100.10/iaas-repo
gpgcheck=0
enabled=1
7、挂载iso镜像文件
[root@controller ~]# mkdir /opt/centos
[root@controller ~]# mount -o loop CentOS-7-x86_64-DVD-1804.iso /mnt/
[root@controller ~]# cp -rvf /mnt/* /opt/centos/
[root@controller ~]# umount /mnt/
[root@controller ~]# mount -o loop chinaskills_cloud_iaas.iso /mnt/
[root@controller ~]# cp -rvf /mnt/* /opt/
[root@controller ~]# umount /mnt/
挂载一定要这样挂,不能直接挂载到opt/centos和/opt/,不然后期可能会出现一些bug
8、搭建ftp服务器,开启并设置自启
[root@controller ~]# yum install vsftpd -y
[root@controller ~]# vi /etc/vsftpd/vsftpd.conf
添加anon_root=/opt/
保存退出
[root@controller ~]# systemctl start vsftpd && systemctl enable vsftpd
9、配置防火墙和Selinux
【controller和compute都要操作】
关闭防火墙并设置开机不自启
#systemctl stop firewalld.service
#systemctl disable firewalld.service
#setenforce 0
设置SELinux 成为permissive模式 临时关闭selinux
写入配置文件
#vi /etc/selinux/config
改:
SELINUX=permissive
永久关闭selinux
以下是对上面的操作做个验证:
在文件资源管理器中输入ftp://192.168.100.10/ 看看有没有这个页面
清除缓存,验证yum源
#yum clean all
#yum repolist( 这个最好在controller和compute中都验证一下)
10、编辑环境变量(controller和compute节点都要操作)
编辑文件/etc/xiandian/openrc.sh,此文件是安装过程中的各项参数,根据每项参数上一行的说明及服务器实际情况进行配置。
#yum install iaas-xiandian -y
#vi /etc/xiandian/openrc.sh
在命令模式下执行此命令( %s/^.//g )用于删除#
在命令模式下执行此命令( %s/PASS=/PASS=000000/g )用于编写PASS
HOST_IP=192.168.100.10
HOST_PASS=000000
HOST_NAME=controller
HOST_IP_NODE=192.168.100.20
HOST_PASS_NODE=000000
HOST_NAME_NODE=compute
network_segment_IP=192.168.100.0/24
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_IP=192.168.100.10/192.168.100.20(controllerIP/computeIP)
INTERFACE_NAME=ens34 (外部网络网卡名称,也就是第二块网卡的名称)
Physical_NAME=provider (外部网络适配器名称)
minvlan=2
maxvlan=300
CINDER_DBPASS=000000
CINDER_PASS=000000
BLOCK_DISK=sdb
SWIFT_PASS=000000
OBJECT_DISK=sdc
STORAGE_LOCAL_NET_IP=192.168.100.20
HEAT_DBPASS=000000
HEAT_PASS=000000
ZUN_DBPASS=000000
ZUN_PASS=000000
KURYR_DBPASS=000000
KURYR_PASS=000000
CEILOMETER_DBPASS=000000
CEILOMETER_PASS=000000
AODH_DBPASS=000000
AODH_PASS=000000
[root@controller ~]#scp /etc/xiandian/openrc.sh 192.168.100.20:/etc/xiandian/openrc.sh (把controller中的openrc.sh 拷贝到compute中的openrc.sh )
配置中加粗的是controller和compute中不同的,注意修改
11、通过脚本安装服务
[root@controller ~]# cd /usr/local/bin
[root@controller ~]#. iaas-pre-host.sh (controller节点和compute节点都要操作)
安装完成后同时重启
[root@controller ~]# reboot
以下脚本按顺序安装
Controller节点
#iaas-install-mysql.sh
Controller节点
#iaas-install-keystone.sh
Controller 节点
#iaas-install-glance.sh
Controller节点
#iaas-install-nova-controller.sh
Compute节点
#iaas-install-nova-compute.sh
Controller节点
#iaas-install-neutron-controller.sh
Compute节点
#iaas-install-neutron-compute.sh
Controller
#iaas-install-dashboard.sh
从Ftp服务器上下载镜像到本地。(在controller中操作)
#source /etc/keystone/admin-openrc.sh
#glance image-create –name CentOS7.5 –disk-format qcow2 –container-format bare –progress < /opt/images/CentOS_7.5_x86_64_XD.qcow2
12、访问平台
打开浏览器访问Dashboard
网址 :http://192.168.100.10/dashboard
13、创建云主机
(1)管理员->资源管理->云主机类型->创建云主机类型
(2)管理员->网络->网络->创建网络
名称随意
子网的网络地址是虚拟机的第二块网卡的网址,网关可以不用写,默认就是我如图那样
(3)项目->网络->安全组->管理规则->添加规则(所有ICMP、所有TCP、所有UDP)
原先有的四个都删掉,添加这六个
(4)项目->资源管理->云主机->创建云主机
虚拟机名称随意
到这一步 ,就可以创建云主机了,直接点创建实例
14、改错
如果你打开云主机的控制台,显示上图这样,问题可能出在上传的镜像和nova服务有问题
我这里是nova服务有问题,在上面的操作流程都正确的情况下,请在compute中输入以下代码,然后重建云主机
#crudini –set /etc/nova/nova.conf libvirt virt_type qemu
#systemctl enable libvirtd.service openstack-nova-compute.service
#systemctl restart libvirtd.service openstack-nova-compute.service