先电openstack2.4安装和运维测试总结
一.准备软件
VMware® Workstation 16 Pro
16.1.2 build-17966106
SecureCRT和SecureFX
Version 8.1.0 (x64 build 1294) - Official Release
二.环境搭建
链接:https://pan.baidu.com/s/1cXhzoImV0A0vdKTK9OZ9VA
提取码:yobo
任务一: 基础运维部分(IP网络规划、安装centos系统、关防火墙、设主机建仓库、安装chrony时间服务器):
1. 配置虚拟机双网卡(NAT和主机模式),配置内存4G,处理器1*2=2。
2. 安装Centos操作系统:开机到install界面,按键盘tab键,在quite前输入net.ifnames=0 biosdevname=0 设置网卡为eth0和eth1
3. 安装过程中,选择硬盘、配置网卡地址(在图形化安装过程中配置),先安装controller节点。
4. 安装完成后:修改ip地址:vi /etc/sysconfig/network-scripts/ifcfg-eth0 和ifcfg-eth1
修改文件内容:BOOTPROTO=static ONBOOT=yes
修改hosts文件将IP地址映射为主机名,关闭防火墙并设置为开机不启动,设置SELinux为Permissive 模式。
hostnamectl set-hostname controller systemctl stop firewalld && systemctl disable firewalld
firewall-cmd --state // 检查防火墙状态
setenforce 0 vi /etc/selinux/config 修改配置为SELINUX=permissive
5. 同前面步骤方法,继续安装compute节点或者通过完整克隆的方法; 然后修改相应的ip地址和UUID、修改主机名等操作。
配置 控制节点主机名controller 和 计算节点主机名 compute
编辑文件vi /etc/hosts 添加如下两行:
192.168.100.10 controller
192.168.100.20 compute
6. 使用SecureFX软件上传安装包镜像到/root目录:CentOS-7-x86_64-DVD-1511.iso和XianDian-IaaS-v2.2.iso;
7. 使用mount命令挂载镜像:(在/opt目录下分别创建centos目录和openstack目录)
mount -o loop /root/CentOS-7-x86_64-DVD-1511.iso /opt/centos/ mount -o loop /root/XianDian-IaaS-v2.2.iso /opt/openstack/
8. 进入/etc/yum.repos.d目录,清除所有repo文件。重新设置controller节点和compute节点的yum源文件local.repo和ftp.repo
先配置controller节点的yum仓库,然后使用命令yum install vsftpd 安装ftp服务器,配置vsftpd.conf配置文件:
vi /etc/vsftpd/vsftpd.conf // 编辑配置文件,添加如下一行
anon_root=/opt // 指定匿名用户访问主目录
最后配置compute节点的yum源文件。
使用命令: yum clean all 和yum repolist 查看配置仓库结果。
9.安装chrony同步时间服务器
(1) 控制节点和计算节点都执行安装命令: yum install -y chrony
(2) 在controller节点添加两行: 在compute节点添加一行:
server controller iburst server controller iburst
allow 192.168.100.0/24
(3) 最后启动服务并开机启动chronyd:(计算节点和控制节点都要执行)
systemctl start chronyd && systemctl enable chronyd
(4) 测试: 在计算节点执行 chronyc sources -v 命令同步时间:
注意1:操作系统配置安装过程中,如果CentOS7开机进入紧急模式EmergencyMode的解决办法:
vi /etc/fstab 把挂载到 /home 这一行取消注释
注意2:如果虚拟机开启CPU虚拟化,在下面创建云主机nova的时候需要修改配置文件如下:
# vi /etc/nova/nova.conf 在[libvirtd]下添加 virt_type = qemu
任务二:OpenStack搭建任务(安装xiandian包,配置变量、安装预配置依赖、安装必要组件mysql,keystone,glance,nova,neutron)
1. 控制节点和计算节点分别安装 iaas-xiandian 包,完成配置文件基本变量的配置:
vi /etc/xiandian/openrc.sh // 配置完成后生效变量: source /etc/xiandian/openrc.sh
输入 :%s/^#//g 使用scp命令拷贝到compute节点: scp /etc/xiandian/openrc.sh compute:/etc/xiandian/
2. 在控制节点和计算节点都执行命令: iaas-pre-host.sh // 安装Openstack包,配置域名解析,配置防火墙和Selinux,安装ntp服务等。
3. 在控制节点执行iaas-install-mysql.sh命令进行 mysql 安装 // 安装RabbitMQ服务,mysql、memcahce等。
4. 在控制节点执行iaas-install-keystone.sh 命令进行keystone安装 // 安装keystone服务包,创建Keystone数据库,配置数据库连接。
5. 在控制节点执行iaas-install-glance.sh 命令进行glance安装 // 安装Glance镜像服务包,创建Glance数据库,创建数据库连接
6. 在控制节点和计算节点分别执行命令进行nova安装: iaas-install-nova-controller.sh iaas-install-nova-compute.sh
7. 在控制节点和计算节点分别执行命令进行neutron安装: iaas-install-neutron-controller.sh iaas-install-neutron-compute.sh
8. 在控制节点和计算节点分别执行命令进行neutron网络安装,配置为gre模式: iaas-install-neutron-controller-gre.sh iaas-install-neutron-compute-gre.sh
9. 在控制节点执行命令进行Dashboard安装: iaas-install-dashboard.sh
安装完成后:通过访问http://192.168.100.10/dashboard 进行新建nova主机进行测试以上安装服务。
10. 后续根据题目要求配置/etc/xiandian/openrc.sh和安装cinder和swift等组件。
注意1:如果安装过程中重启,需要重新mount挂载安装包
mount -o loop /root/CentOS-7-x86_64-DVD-1511.iso /opt/centos/ mount -o loop /root/XianDian-IaaS-v2.2.iso /opt/openstack/
注意2:在安装完keystone脚本之后,需要执行如下命令完成环境配置:
source /etc/keystone/admin-openrc.sh
注意3:在先电2.4版本,配置变量过程中, Tunnel Network Interface.接口的 NTERFACE_IP这里填入对应节点的IP地址,如果是控制节点的配置文件则填入192.168.100.10; 如果是计算节点的配置文件则填入192.168.100.20
注意4:控制节点脚本全部运行完毕后再运行计算节点脚本,不要同时进行,如果遇到报错请检查是否缺漏执行脚本。
任务三:OpenStack云平台运维(nova、neutron、cinder、swift等服务组件操作)
(一).完成新建云主机的流程操作:(可根据web界面完成)
1.在openstack私有云平台上,基于cirrors.qcow2镜像,使用命令创建一个名为cirros的镜像
glance image-create --name "cirros" --disk-format qcow2 --container-format bare --progress --file /opt/openstack/images/CentOS_7.2_x86_64_XD.qcow2
2. 使用命令创建一个名为m1.flavor,ID为1234,内存为1024 MB,磁盘为10 GB,vcpu数量为1的云主机类型
nova flavor-create m1.flavor 1234 1024 10 1
3. 使用命令创建云主机外部网络extnet,子网extsubnet,虚拟机浮动 IP 网段为172.18.x.0/24(其中x是考位号), 网关为172.18.x.1
neutron net-create --router:external extnet // 创建外网extnet
neutron subnet-create --name extsubnet --enable-dhcp --gateway 192.168.200.2 extnet 192.168.200.0/24
(先电2.4版本)创建外部网络extnet
openstack network create extnet --provider-physical-network provider --provider-network-type flat --external
openstack subnet create extsubnet --subnet-range 192.168.200.0/24 --network extnet --gateway 192.168.200.2
4. 使用命令创建云主机内网intnet,子网intsubnet,虚拟机子网 IP 网段为10.10.x.0/24(其中x是考位号),网关为10.10.x.1
neutron net-create intnet // 创建内网intnet
neutron subnet-create --name intsubnet --enable-dhcp --gateway 10.10.1.1 intnet 10.10.1.0/24
(先电2.4版本)
openstack network create intnet --provider-network-type vxlan --provider-segment 1
openstack subnet create intsubnet --subnet-range 10.10.1.0/24 --network intnet --gateway 10.10.1.1
5. 添加名为 ext-router 的路由器,配置路由接口地址,完成内网子网intsubnet和外部网络extnet的连通
// 必须先设置路由网关外部网络,再添加内部网络子网接口
neutron router-create ext-router // 或者openstack2.4 openstack router create ext-router
neutron router-gateway-set ext-router extnet // 或者openstack2.4 openstack router set ext-router --external-gateway extnet
neutron router-interface-add ext-router intsubnet // 或者openstack2.4 openstack router add subnet ext-router intsubnet
6. 基于“cirros” 镜像、m1.flavor、 intsubnet的网络,绑定浮动IP,通过命令创建一台云主机migration,启动migration,并使用PC机能远程登录到VM1
nova boot --flavor m1.flavor --image cirros --nic net-name=intnet --security-groups default migration
neutron floatingip-create extnet // 创建出浮动ip
( 先电2.4版本 ) openstack floating ip create extnet --floating-ip-address 192.168.200.104
绑定前通过neutron floatingip-list和neutron port-list命令查看id信息
neutron floatingip-associate 744ed36d-663a-4c27-86fa-5f1b03605344 3585c281-ffb1-4593-b96e-b8adc88f34c4
( 先电2.4版本 ) openstack server add floating ip migration 192.168.200.104
7. 创建default规则允许所有TCP、UDP和ICMP
(1) 使用命令创建安全组:
neutron security-group-create all // 创建安全组all
(2) 添加安全组规则 : neutron security-group-rule-create SECURITY_GROUP 使用该命令security-group-rule-create创建安全组规则
neutron security-group-rule-create --protocol icmp all
neutron security-group-rule-create --protocol icmp --direction egress all
neutron security-group-rule-create --protocol tcp all
neutron security-group-rule-create --protocol tcp --direction egress all
(先电2.4版本)
openstack security group rule create --ingress --protocol udp all
openstack security group rule create --egress --protocol udp all
(二). 针对存储和Ceilometer运维,题目具有开放性。参考创建云主机,然后挂载cinder,然后通过命令查看内存、CPU、存储等使用情况。如果需要国赛或者省赛的题目指导,可以私我(+V:408797506)。
完整视频可以观看:IT前沿技术工作室的个人空间_哔哩哔哩_Bilibili