2021 年全国职业院校技能大赛高职组云计 算赛项试卷
【赛程名称】云计算赛项第一场-私有
【任务 1】基础运维任务[5 分]
【题目 1】基础环境配置[1.5 分]
使用提供的用户名密码,登录提供的 OpenStack 私有云平台,自行使用 CentOS7.5 镜像 创 建 两 台 云 主 机 , 控 制 节 点 flavor 使 用 4v_12G_100G 的 配 置 , 计 算 节 点 flavor 使 用 4v_8G_100G_50G 的配置。第一张网卡使用提供的网络,第二张网卡使用的网络自行创建(网 段为 10.10.X.0/24,X 为工位号)。创建完云主机后确保网络正常通信,然后按以下要求配 置服务器:
(1)设置控制节点主机名为 controller,设置计算节点主机名为 compute;
(2)修改 hosts 文件将 IP 地址映射为主机名; 完成后提交控制节点的用户名、密码和 IP 地址到答题框。
1.使用 hostnamectl 命令查看主机名为 controller 计 0.5 分
[root@controller ~]# hostnamectl
Static hostname: controller
Icon name: computer-desktop
Chassis: desktop
Machine ID: 288e2428d6564d17badedef1027225ea
Boot ID: 987b632d57ce44628bf167bc27e3d65b
Operating System: CentOS Linux 7 (Core)
CPE OS Name: cpe:/o:centos:centos:7
Kernel: Linux 3.10.0-862.el7.x86_64
Architecture: x86-64
- 查看 hosts 文件中有正确的主机名和 IP 映射计 0.5 分
[root@controller ~]# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.100.10 controller
192.168.100.20 compute
3.控制节点正确使用两块网卡计 0.5 分
[root@controller ~]# ip a
【题目 2】Yum 源配置[1 分]
使用提供的 http 服务地址,在 http 服务下,存在 centos7.5 和 iaas 的网络 yum 源,使用 该 http 源作为安装 iaas 平台的网络源。分别设置 controller 节点和 compute 节点的 yum 源文 件 http.repo。完成后提交控制节点的用户名、密码和 IP 地址到答题框
- 查看/etc/yum.repos.d/http.repo 文件,有正确的 baseurl 路径,计 1 分
[root@controller ~]# cat /etc/yum.repos.d/http.repo
[centos]
name=centos
baseurl=file:///opt/centos
gpgcheck=0
enabled=1
[iaas]
name=iaas
baseurl=file:///opt/openstack/iaas-repo
gpgcheck=0
enabled=1
[root@compute ~]# cat /etc/yum.repos.d/http.repo
[centos]
name=centos
baseurl=ftp://192.168.100.10/centos
gpgcheck=0
enabled=1
[iaas]
name=iaas
baseurl=ftp://192.168.100.10/openstack/iaas-repo
gpgcheck=0
enabled=1
【题目 3】时间同步配置[1.5 分]
在 controller 节点上部署 chrony 服务器,允许其他节点同步时间,启动服务并设置为开 机启动;在 compute 节点上指定 controller 节点为上游 NTP 服务器,重启服务并设为开机启 动。完成后提交控制节点的用户名、密码和 IP 地址到答题框。
- 查看/etc/chrony.conf 配置文件,有正确的配置文件计 1 分
controller
sed -i '3,6s/^/#/g' /etc/chrony.conf
echo "allow 192.168.100.0/24" >> /etc/chrony.conf
echo "local stratum 10" >> /etc/chrony.conf
compute
# Use public servers from the pool.ntp.org project.
# Please consider joining the pool (http://www.pool.ntp.org/join.html).
#server 0.centos.pool.ntp.org iburst
#server 1.centos.pool.ntp.org iburst
#server 2.centos.pool.ntp.org iburst
#server 3.centos.pool.ntp.org iburst
server controller iburst
# Record the rate at which the system clock gains/losses time.
driftfile /var/lib/chrony/drift
# Allow the system clock to be stepped in the first three updates
# if its offset is larger than 1 second.
makestep 1.0 3
# Enable kernel synchronization of the real-time clock (RTC).
rtcsync
# Enable hardware timestamping on all interfaces that support it.
#hwtimestamp *
# Increase the minimum number of selectable sources required to adjust
# the system clock.
#minsources 2
# Allow NTP client access from local network.
#allow 192.168.0.0/16
# Serve time even if not synchronized to a time source.
#local stratum 10
# Specify file containing keys for NTP authentication.
#keyfile /etc/chrony.keys
# Specify directory for log files.
logdir /var/log/chrony
# Select which information is logged.
#log measurements statistics tracking
allow 192.168.100.0/24
local stratum 10
[root@compute ~]# cat /etc/chrony.conf
echo "server controller iburst" >> /etc/chrony.conf
[root@compute ~]# cat /etc/chrony.conf
- 查看时间同步服务的状态,正常计 0.5 分
[root@controller ~]# systemctl status chronyd
【题目 4】计算节点分区[1 分]
在 compute 节点上利用空白分区划分 2 个 20G 分区。完成后提交计算节点的用户名、 密码和 IP 地址到答题框。
使用fdisk分区,如果使用parted分区则不用完整的分出20GB
【任务 2】OpenStack 搭建任务[10 分]
【适用平台】私有云
【题目 1】基础安装[1 分]
任务需要完成 openstack 平台的安装搭建及运维任务(无安装脚本),表 2 提供了在安 装过程中需要使用相关服务参数。
表 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(第二块网卡名) |
使用提供的脚本框架 iaas-pre-host.sh 和 openrc.sh 环境变量文件,填充脚本(只需填充 中文注释下的内容),在 controller 和 compute 节点上分别安装 openstack 平台的基础组件并 完成相关配置。(脚本框架 install_openstack.tar.gz 软件包在 http 服务下)安装完成后提交控 制节点的用户名、密码和 IP 地址到答题框。
iaas-pre-host.sh
【题目 2】数据库与基础服务安装[1 分]
使用提供的脚本框架 iaas-install-mysql.sh,填充脚本(只需填充中文注释下的内容), 在 controller 节点上安装 mariadb、mencached、rabbitmq 等服务并完成相关配置。完成后提 交控制节点的用户名、密码和 IP 地址到答题框。
iaas-install-mysql.sh
【题目 3】Keystone 服务安装[1 分]
使用提供的脚本框架 iaas-install-keystone.sh,填充脚本(只需填充中文注释下的内容), 在 controller 节点上安装 keystone 服务并完成相关配置。完成后提交控制节点的用户名、密 码和 IP 地址到答题框。
iaas-install-keystone.sh
【题目 4】Glance 安装[1 分]
使用提供的脚本框架 iaas-install-glance.sh,填充脚本(只需填充中文注释下的内容), 在 controller 节点上安装 glance 服务并完成相关配置。安装完成后提交控制节点的用户名、 密码和 IP 地址到答题框。
iaas-install-glance.sh
【题目 5】Nova 安装[1 分]
使用提供的脚本框架 iaas-install-nova-controller.sh 和 iaas-install-nova-compute.sh,填 充脚本(只需填充中文注释下的内容),在 controller 和 compute 节点上安装 nova 服务并完 成配置。完成后提交控制节点的用户名、密码和 IP 地址到答题框。
iaas-install-nova-controller.sh 和 iaas-install-nova-compute.sh
【题目 6】Neutron 安装[1 分]
使用提供的脚本框架 iaas-install-neutron-controller.sh 和 iaas-install-neutron-compute.sh, 填充脚本(只需填充中文注释下的内容),在 controller 和 compute 节点上安装 neutron 服务 并完成配置。完成后提交控制节点的用户名、密码和 IP 地址到答题框。
iaas-install-neutron-controller.sh 和 iaas-install-neutron-compute.sh
【题目 7】Doshboard 安装[1 分]
使用提供的脚本框架 iaas-install-dashboard.sh,填充脚本(只需填充中文注释下的内 容),在 controller 节点上安装 dashboard 服务并完成相关配置。完成后提交控制节点的用户 名、密码和 IP 地址到答题框。
iaas-install-dashboard.sh
【题目 8】Cinder 安装[1 分]
使用提供的脚本框架 iaas-install-cinder-controller.sh 和 iaas-install-cinder-compute.sh,填 充脚本(只需填充中文注释下的内容),在 controller 和 compute 节点上安装 cinder 服务并 完成配置。完成后提交控制节点的用户名、密码和 IP 地址到答题框。
iaas-install-cinder-compute.sh
【题目 9】Swift 安装[1 分]
使用提供的脚本框架 iaas-install-swift-controller.sh 和 iaas-install-swift-compute.sh,填充 脚本(只需填充中文注释下的内容),在 controller 和 compute 节点上安装 swift 服务并完成 配置。完成后提交控制节点的用户名、密码和 IP 地址到答题框。
iaas-install-swift-controller.sh 和 iaas-install-swift-compute.sh
【题目 10】Heat 安装[1 分]
使用提供的脚本框架 iaas-install-heat.sh,填充脚本(只需填充中文注释下的内容),在 controller 节点上安装 heat 服务并完成相关配置。完成后提交控制节点的用户名、密码和 IP 地址到答题框。
iaas-install-heat.sh
【任务 3】OpenStack API 运维任务[10 分]
【适用平台】私有云
【题目 1】使用 python 调用 api 实现创建 user[2 分]
在自行搭建的 OpenStack 私有云平台或提供的 all-in-one 平台上,根据 http 服务中提供 的 Python-api.tar.gz 软件包,完成 python3.6 软件和依赖库的安装。在 controller 节点的/root目录下创建 create_user.py 文件,编写 python 代码对接 OpenStack API,完成用户的创建。要 求在 OpenStack 私有云平台中创建用户 chinaskill,描述为“API create user!”。执行完代码 要求输出“用户创建成功”。根据上述要求编写 python 代码,完成后,将 controller 节点的 IP 地址,用户名和密码提交。(考试系统会连接到你的 controller 节点,去执行 python 脚本, 请准备好运行的环境,以便考试系统访问)
import requests
import json
body = {
"auth":{
"identity":{
"methods":["password"],
"password":{
"user":{
"id":"53a1cf0ad2924532aa4b7b0750dec282",
"password":"000000"
}
}
},
"scope":{
"project":{
"id":"0ab2dbde4f754b699e22461426cd0774"
}
}
}
}
保密
headers = {}
保密
headers["Accept"] = "*/*"
保密
url_token = "http://controller:35357/v3/auth/tokens"
保密



