比赛赛程说明 (当前赛程共6个任务 共41题)
某企业根据自身业务需求,实施数字化转型,规划和建设数字化平台,平台聚焦“DevOps开发运维一体化”和“数据驱动产品开发”,拟采用开源OpenStack搭建企业内部私有云平台,开源Kubernetes搭建云原生服务平台,选择国内主流公有云平台服务,基于数字化平台底座,面向业务开发边缘计算云应用产品。
拟将该任务交给工程师A与B,分工协助完成云平台服务部署、云应用开发、云系统运维等任务,系统架构如图1所示,IP地址规划如表1所示。
图 1 系统架构图
表1 IP 地址规划
设备名称 |
主机名 |
接 口 |
IP 地址 |
说明 |
云服务器 1 |
controller |
eth0 |
172.129.x.0/24 |
vlan x |
eth1 |
自定义 |
自行创建 |
||
云服务器 2 |
compute |
eth0 |
172.129.x.0/24 |
vlan x |
eth1 |
自定义 |
自行创建 |
||
云服务器 3 ... 云服务器n |
自定义 |
eth0 |
172.129.x.0/24 |
|
PC-1 |
本地连接 |
172.24.16.0/24 |
PC 使用 |
说明
1.竞赛使用集群模式进行,比赛时给每个参赛队提供独立的租户与用户,各用户的资源配额相同,选手通过用户名与密码登录竞赛私有云平台,创建云主机进行相应答题,2名参赛选手的账号密码相同;
2.表中的x为赛位号,在进行OpenStack搭建时的第二块网卡地址根据题意自行创建;
3.根据图表给出的信息,检查硬件连线及网络设备配置,确保网络连接正常;
4.考试所需要的账号资源、竞赛资源包与附件均会在考位信息表与设备确认单中给出;
5.竞赛过程中,为确保服务器的安全,请自行修改服务器密码;在考试系统提交信息时,请确认自己的IP地址,用户名和密码。
一、私有云服务搭建(当前任务共13道题目)
1、【实操题】1.1.1 基础环境配置(0.2分)
使用提供的用户名密码,登录提供的OpenStack私有云平台,在当前租户下,使用CentOS7.9镜像,创建两台云主机,云主机类型使用4vCPU/12G/100G_50G类型。当前租户下默认存在一张网卡,自行创建第二张网卡并连接至controller和compute节点(第二张网卡的网段为10.10.X.0/24,X为工位号,不需要创建路由)。自行检查安全组策略,以确保网络正常通信与ssh连接,然后按以下要求配置服务器:
(1)设置控制节点主机名为controller,设置计算节点主机名为compute;
(2)修改hosts文件将IP地址映射为主机名;
完成后提交控制节点的用户名、密码和IP地址到答题框。
[root@controller ~]# hostnamectl set-hostname controller
[root@controller ~]# hostname controller
[root@compute ~]# hostnamectl set-hostname compute
[root@compute ~]# hostname compute
2、【实操题】1.1.2 yum源配置(0.2分)
使用提供的http服务地址,在http服务下,存在centos7.9和iaas的网络yum源,使用该http源作为安装iaas平台的网络源。分别设置controller节点和compute节点的yum源文件http.repo。完成后提交控制节点的用户名、密码和IP地址到答题框。
[root@controller ~]# mkdir /opt/{centos7.9,iaas}
[root@controller ~]# mv /etc/yum.repos.d/* /media/
[root@controller ~]# cat /etc/yum.repos.d/http.repo
[centos]
name=centos7.9
baseurl=file:///opt/centos7.9
gpgcheck=0
enable=1
[openstack]
name=iaas
baseurl=file:///opt/iaas/iaas-repo
gpgcheck=0
enabled=1
[root@compute ~]# cat /etc/yum.repos.d/http.repo
[centos] name=centos7.9
baseurl=ftp://controller/centos7.9
gpgcheck=0
enabled=1
[openstack] name=iaas
baseurl=ftp://controller/iaas/iaas-repo
gpgcheck=0
enabled=1
[root@controller ~]#yum install -y vsftpd
[root@controller ~]#vi /etc/vsftpd/vsftpd.conf
anon_root=/opt/
[root@controller ~]# systemctl start vsftpd
[root@controller ~]# systemctl enable vsftpd
3、【实操题】1.1.3 配置无秘钥ssh (0.2分)
配置controller节点可以无秘钥访问compute节点,配置完成后,尝试ssh连接compute节点的hostname进行测试。完成后提交controller节点的用户名、密码和IP地址到答题框。
[root@controller ~]# ssh-keygen
[root@controller ~]# ssh-copy-id compute
[root@controller ~]# ssh compute
[root@compute ~]# hostname compute
4、【实操题】1.1.4 基础安装(0.2分)
在控制节点和计算节点上分别安装openstack-iaas软件包,根据表2配置两个节点脚本文件中的基本变量(配置脚本文件为/etc/openstack/openrc.sh)。
表2 云平台配置信息
服务名称 |
变量 |
参数/密码 |
Mysql |
root |
000000 |
Keystone |
000000 |
|
Glance |
000000 |
|
Nova |
000000 |
|
Neutron |
000000 |
|
Heat |
000000 |
|
Zun |
000000 |
|
Keystone |
DOMAIN_NAME |
demo |
Admin |
000000 |
|
Rabbit |
000000 |
|
Glance |
000000 |
|
Nova |
000000 |
|
Neutron |
000000 |
|
Heat |
000000 |
|
Zun |
000000 |
|
Neutron |
Metadata |
000000 |
External Network |
eth1(以实际为准) |
完成后提交控制节点的用户名、密码和IP地址到答题框。
[root@controller ~]# yum install -y openstack-iaas
[root@compute ~]# yum install -y openstack-iaas
[root@controller ~]#vi /etc/openstack/openrc.sh
键盘ctrl+v delete
底行输入(一键编辑六个0):%s/PASS=/PASS=000000/
HOST_IP=192.168.200.12
HOST_PASS=Abc@1234 #controller节点root用户密码
HOST_NAME=controller
HOST_IP_NODE=192.168.200.21
HOST_PASS_NODE=Abc@1234 #compute节点root用户密码
HOST_NAME_NODE=compute
network_segment_IP=192.168.200.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
PLACEMENT_DBPASS=000000
PLACEMENT_PASS=000000
NOVA_DBPASS=000000
NOVA_PASS=000000
NEUTRON_DBPASS=000000
NEUTRON_PASS=000000
METADATA_SECRET=000000
INTERFACE_NAME=eth1 #云主机第二张网卡名称
Physical_NAME=provider
minvlan=1
maxvlan=1000
CINDER_DBPASS=000000
CINDER_PASS=000000
BLOCK_DISK=vdb1
#compute节点第一个分区名称 SWIFT_PASS=000000 OBJECT_DISK=vdb2 #compute节点第二个分区名称
STORAGE_LOCAL_NET_IP=192.168.200.21
[root@controller ~]#iaas-pre-hsot.sh
执行完成之后重启
[root@controller ~]#reboot
5、【实操题】1.1.5 数据库安装与调优(0.5分)
在controller节点上使用iaas-install-mysql.sh 脚本安装Mariadb、Memcached、RabbitMQ等服务。安装服务完毕后,修改/etc/my.cnf文件,完成下列要求:
1.设置数据库支持大小写;
lower_case_table_names
2.设置数据库缓存innodb表的索引,数据,插入数据时的缓冲为4G;innodb_buffer_pool_size
innodb_buffer_pool_size=4G
3.设置数据库的log buffer为64MB;
innodb_log_buffer_size
4.设置数据库的redo log大小为256MB;
innodb_log_file_size
5.设置数据库的redo log文件组为2。
innodb_log_files_in_group=
完成后提交控制节点的用户名、密码和IP地址到答题框。
在controller节点执行脚本部署Mariadb数据库及Rabbit消息队列服务。
[root@controller ~]# iaas-install-mysql.sh
[root@controller ~]# cat /etc/my.cnf
[mysqld]
lower_case_table_names=1
innodb_buffer_pool_size=4G
innodb_log_buffer_size= 64MB
innodb_log_file_size=256MB
innodb_log_files_in_group=2
innodb_log_file_size=256MB
innodb_log_files_in_group=2
hash_algorithm=md5
[root@controller ~]# cat /etc/sysconfig/memcached
PORT="11211"
USER="memcached"
MAXCONN="2048"
CACHESIZE="512"
OPTIONS="-l 127.0.0.1,::1,controller"
hash_algorithm=md5
6、【实操题】1.1.6 Keystone服务安装与使用(0.5分)
在controller节点上使用iaas-install-keystone.sh脚本安装Keystone服务。安装完成后,使用相关命令,创建用户chinaskill,密码为000000。完成后提交控制节点的用户名、密码和IP地址到答题框。
[root@controller ~]#openstack user create --password 000000 chaskill
+---------------------+----------------------------------+9 k
| Field | Value |4 k
+---------------------+----------------------------------+1 M
| domain_id | default |8 k
| enabled | True |1 k
| id | 20c5915e63a24e80b0d4a30893e11dfc |7 k
| name | chinaskill |
| options | {} |1 k
| password_expires_at | None |8 k
+---------------------+----------------------------------+
7、【实操题】1.1.7 Glance安装与使用(0.5分)
在controller节点上使用iaas-install-glance.sh脚本安装glance 服务。使用命令将提供的cirros-0.3.4-x86_64-disk.img镜像(该镜像在HTTP服务中,可自行下载)上传至平台,命名为cirros,并设置最小启动需要的硬盘为10G,最小启动需要的内存为1G。完成后提交控制节点的用户名、密码和IP地址到答题框。
[root@controller images]#openstack image create --disk-format qcow2 --container-format bare --min-disk 10 --min-ram 1024 --file cirros-0.3.4-x86_64-disk.img cirros