2023 年全国职业院校技能大赛(高职组) “云计算应用”赛项赛卷 B(私有云)

#需要资源(软件包及镜像)或有问题的,可私聊博主!!!

#需要资源(软件包及镜像)或有问题的,可私聊博主!!!

#需要资源(软件包及镜像)或有问题的,可私聊博主!!!

私有云

【赛程名称】第一场:模块一 私有云、模块二 容器云

        项目需求:某企业根据自身业务需求,实施数字化转型,规划和建设数字化平台建设,平台聚焦“DevOps 建运一体”和“数据驱动产品开发”,拟采用开源 OpenStack 搭建企业 内部私有云平台,开源 Kubernetes 搭建云原生服务平台,选择国内主流公有云平台服务,基于数字化平台底座,面向业务开发云应用产品。

       拟将该任务交给工程师A 与B,分工协助完成云平台服务部署、云应用开发、云系统运维等任务,系统架构如下:

       系统架构如图1 所示,IP 地址规划如表1 所示。

图 1 系统架构图

表 1 IP 地址规划

设备名称

主机名

接口

IP 地址

说明

云服务器1

Controller

eth0

192.168.x.0/24

Vlan x

eth1

自定义

自行创建

云服务器2

Compute

eth0

192.168.x.0/24

Vlan x

eth1

自定义

自行创建

云服务器3...云服务器 n

自定义

eth0

192.168.x.0/24

用于实操题

PC-1

本地连接

172.16.232.0/24

PC 使用

说明:

  1. 竞赛使用集群模式进行,比赛时给每个参赛队提供独立的租户与用户,各用户的资源配额相同,选手通过用户名与密码登录竞赛用私有云平台,创建云主机进行相应答题;同组 2 名选手的账号密码一样。
  2. 表中的x 为赛位号;在进行OpenStack 搭建时的第二块网卡地址根据题意自行创建;
  3. 根据图表给出的信息,检查硬件连线及网络设备配置,确保网络连接正常;
  4. 考试所需要的账号资源、竞赛资源包与附件均会在考位信息表与设备确认单中给出;
  5. 竞赛过程中,为确保服务器的安全,请自行修改服务器密码;在考试系统提交信息时,请确认自己的 IP 地址,用户名和密码。

【任务 1】私有云服务搭建[5 分]

【适用平台】私有云

【题目 1】1.1.1 基础环境配置[0.2 分]

  1. 控制节点主机名为 controller,设置计算节点主机名为 compute;

  2. hosts 文件将 IP 地址映射为主机名。

使用提供的用户名密码,登录提供的 OpenStack 私有云平台,在当前租户下,使用 CentOS7.9 镜像,创建两台云主机,云主机类型使用 4vCPU/12G/100G_50G 类型。当前租户下默认存在一张网卡,自行创建第二张网卡并连接至 controller 和 compute 节点(第二张网卡的网段为 10.10.X.0/24,X 为工位号,不需要创建路由)。自行检查安全组策略,以确保网络正常通信与 ssh 连接,然后按以下要求配置服务器:

(1) 设置控制节点主机名为 controller,设置计算节点主机名为 compute;

(2) 修改 hosts 文件将 IP 地址映射为主机名;

完成后提交控制节点的用户名、密码和 IP 地址到答题框。

【题目 2】1.1.2 Yum 源配置[0.2 分]

使用提供的 http 服务地址,分别设置 controller 节点和 compute 节点的 yum 源文件http.repo。使用提供的 http 服务地址,在 http 服务下,存在 centos7.9 和 iaas 的网络 yum 源,使用该 http 源作为安装 iaas 平台的网络源。分别设置 controller 节点和 compute 节点的yum 源文件 http.repo。完成后提交控制节点的用户名、密码和 IP 地址到答题框。

【题目 3】1.1.3 配置无秘钥 ssh[0.2 分]

配置 controller 节点可以无秘钥访问 compute 节点。

配置 controller 节点可以无秘钥访问 compute 节点,配置完成后,尝试 ssh 连接 compute 节点的 hostname 进行测试。完成后提交 controller 节点的用户名、密码和 IP 地址到答题框。

【题目 4】1.1.4 基础安装[0.2 分]

在控制节点和计算节点上分别安装 openstack-iaas 软件包。

在控制节点和计算节点上分别安装 openstack-iaas 软件包,根据表 2 配置两个节点脚本文件中的基本变量(配置脚本文件为/etc/openstack/openrc.sh)。

表 2 云平台配置信息

服务名称变量参数/密码
Mysqlroot000000
Keystone000000
Glance000000
Nova000000
Neutron000000
Heat000000
Zun000000
KeystoneDOMAIN_NAMEdemo
Admin000000
Rabbit000000
Glance000000
Nova000000
Neutron000000
Heat000000
Zun000000
NEUTRONMETADATA000000
External Networketh1(以实际为准)

完成后提交控制节点的用户名、密码和 IP 地址到答题框。

【题目 5】1.1.5 数据库安装与调优[0.5 分]

在控制节点上使用安装 Mariadb、RabbitMQ 等服务。并进行相关操作。

在 controller 节点上使用 iaas-install-mysql.sh 脚本安装 Mariadb、Memcached、 RabbitMQ 等服务。安装服务完毕后,修改/etc/my.cnf 文件,完成下列要求:

  1. 设置数据库支持大小写;

  1. 设置数据库缓存 innodb 表的索引,数据,插入数据时的缓冲为 4G;

  1. 设置数据库的 log buffer 为 64MB;

  1. 设置数据库的 redo log 大小为 256MB;

  1. 设置数据库的 redo log 文件组为 2。

  1. 修改Memcached 的相关配置,将内存占用大小设置为 512MB,调整最大连接数参数为

2048;

  1. 调整 Memcached 的数据摘要算法(hash)为 md5;

完成后提交控制节点的用户名、密码和 IP 地址到答题框。

【题目 6】1.1.6 Keystone 服务安装与使用[0.5 分]在控制节点上安装 Keystone 服务并创建用户。

在 controller 节点上使用 iaas-install-keystone.sh 脚本安装 Keystone 服务。

然后创建 OpenStack 域 210Demo,其中包含 Engineering 与 Production 项目,在域

210Demo 中创建组 Devops,其中需包含以下用户:

  1. Robert 用户是 Engineering 项目的用户(member)与管理员(admin),email 地址为:Robert@lab.example.com

  2. George 用 户 是 Engineering 项 目 的 用 户 ( member ), email 地址为: George@lab.example.com

  1. William 用户是 Production 项目的用户(member)与管理员(admin),email 地址为:William@lab.example.com

  2. John 用户是 Production 项 目 的 用 户 ( member ), email 地 址 为 :John@lab.example.com

完成后提交控制节点的用户名、密码和 IP 地址到答题框。

【题目 7】1.1.7 Glance 安装与使用[0.5 分]

在控制节点上安装 Glance 服务。上传镜像至平台,并设置镜像启动的要求参数。

在 controller 节点上使用 iaas-install-glance.sh 脚本安装 glance 服务。然后使用提供的 coreos_production_pxe.vmlinuz 镜像(该镜像为 Ironic Deploy 镜像,是一个 AWS 内核格式的镜像,在 OpenStack Ironic 裸金属服务时需要用到)上传到 OpenStack 平台中,命名为 deploy-vmlinuz。完成后提交控制节点的用户名、密码和 IP 地址到答题框。

【题目 8】1.1.8 Nova 安装与优化[0.5 分]

在控制节点和计算节点上分别安装 Nova 服务。安装完成后,完成 Nova 相关配置。

在 controller 节点和 compute 节点上分别使用 iaas-install-placement.sh 脚本、 iaas-install-nova -controller.sh 脚本、iaas-install-nova-compute.sh 脚本安装Nova服务。在 OpenStack 中,修改相关配置文件,修改调度器规则采用缓存调度器,缓存主机信息,提升调度时间。配置完成后提交controller 点的用户名、密码和IP 地址到答题框。

【题目 9】1.1.9 Neutron 安装[0.2 分]

在控制和计算节点上正确安装 Neutron 服务。

使用提供的脚本 iaas-install-neutron-controller.sh 和 iaas-install-neutron- compute.sh,在 controller 和 compute 节点上安装 neutron 服务。完成后提交控制节点的用户名、密码和 IP 地址到答题框。

【题目 10】1.1.10 Dashboard 安装[0.5 分]

在控制节点上安装 Dashboard 服务。安装完成后,将 Dashboard 中的 Django 数据修改为存储在文件中。

在 controller 节点上使用 iaas-install-dashboad.sh 脚本安装 Dashboard 服务。安装完成后,修改相关配置文件,完成下列两个操作:

  1. 使得登录 Dashboard 平台的时候不需要输入域名;

  2. 将 Dashboard 中的 Django 数据修改为存储在文件中。 完成后提交控制节点的用户名、密码和 IP 地址到答题框。

【题目 11】1.1.11 Swift 安装[0.5 分]

在控制节点和计算节点上分别安装 Swift 服务。安装完成后,将 cirros 镜像进行分片存储。

在控制节点和计算节点上分别使用 iaas-install-swift-controller.sh 和 iaas- install-swift-compute.sh 脚本安装 Swift 服务。安装完成后,使用命令创建一个名叫 examcontainer 的容器,将 cirros-0.3.4-x86_64-disk.img 镜像上传到 examcontainer 容器中,并设置分段存放,每一段大小为 10M。完成后提交控制节点的用户名、密码和 IP 地址到答题框。

【题目 12】1.1.12 Cinder 创建硬盘[0.5 分]

在控制节点和计算节点分别安装 Cinder 服务,请在计算节点,对块存储进行扩容操作。在控制节点和计算节点分别使用 iaas-install-cinder-controller.sh 、 iaas-install-cinder-compute.sh 脚本安装 Cinder 服务,请在计算节点,对块存储进行扩容操作,即在计算节点再分出一个 5G 的分区,加入到 cinder 块存储的后端存储中去。完成后提交计算节点的用户名、密码和 IP 地址到答题框。

【题目 13】1.1.13 配置主机禁 ping [0.5 分]

修改 controller 节点的相关配置文件,配置 controller 节点禁止其他节点可以 ping它。配置完之后。完成后提交 controller 节点的用户名、密码和 IP 地址到答题框。

【任务 2】私有云服务运维[15 分]

【适用平台】私有云

任务 2 私有云服务运维[15 分]

【题目 1】1.2.1 Heat 编排-创建用户[1 分]

编写 Heat 模板 create_user.yaml,创建名为 heat-user 的用户。

使用自己搭建的OpenStack 私有云平台,使用heat 编写摸板(heat_template_version: 2016-04-08)创建名为”chinaskills”的 domain,在此 domain 下创建名为 beijing_group的租户,在此租户下创建名为 cloud 的用户,将此文件命名及保存在

/root/user_create.yml,完成后提交 controller 点的用户名、密码和 IP 地址到答题框。

(竞系统会执行yaml 文件,请确保执行的环境)

【题目 2】1.2.2 KVM 优化[1 分]

在 OpenStack 平台上修改相关配置文件,启用-device virtio-net-pci in kvm。在自行搭建的 OpenStack 私有云平台或项提供的 all-in-one 平台上,修改相关配置文件,启用-device virtio-net-pci in kvm,配置完成后提交控制节点的用户名、密码和 IP 地址到答题框。

【题目 3】1.2.3 NFS 对接 Glance 后端存储[1 分]

使用 OpenStack 私有云平台,创建一台云主机,安装 NFS 服务,然后对接 Glance 后端存储。

使用项提供的 OpenStack 私有云平台,创建一台云主机(镜像使用CentOS7.9, flavor 使用带临时磁盘 50G 的),配置该主机为 nfs 的 server 端,将该云主机中的 50G磁盘通过/mnt/test 目录进行共享(目录不存在可自行创建)。然后配置 controller 节点为 nfs 的 client 端,要求将/mnt/test 目录作为 glance 后端存储的挂载目录。配置完成后提交 controller 控制节点的用户名、密码和 IP 地址到答题框。

【题目 4】1.2.4 Redis 主从[1 分]

使用项提供的OpenStack 私有云平台,创建两台云主机,配置为redis 的主从架构。使用项提供的 OpenStack 私有云平台,申请两台CentOS7.9 系统的云主机,使用提供的 http 源,在两个节点安装 redis 服务并启动,配置 redis 的访问需要密码,密码设置为 123456。然后将这两个 redis 节点配置为 redis 的主从架构。配置完成后提交 redis 主节点的用户名、密码和 IP 地址到答题框。

【题目 5】1.2.5 Linux 系统调优-脏数据回写[1 分]

修改系统配置文件,要求将回写磁盘的时间临时调整为 60 秒。

Linux 系统内存中会存在脏数据,一般系统默认脏数据 30 秒后会回写磁盘,修改系统配置文件,要求将回写磁盘的时间临时调整为 60 秒。完成后提交 controller 节点的用户名、密码和 IP 地址到答题框。

【题目 6】1.2.6 Glance 调优[1 分]

在 OpenStack 平台中,修改相关配置文件,将子进程数量相应的配置修改成 2。

在 OpenStack 平台中,glance-api 处理请求的子进程数量默认是 0,只有一个主进程,请修改相关配置文件,将子进程数量相应的配置修改成 2,这样的话有一个主进程加 2个子进程来并发处理请求。完成后提交控制节点的用户名、密码和 IP 地址到答题框。

【题目 7】1.2.7 Ceph 部署[1 分]

使用提供的 ceph.tar.gz 软件包,安装 ceph 服务并完成初始化操作。

使用提供的 ceph-14.2.22.tar.gz 软件包,在 OpenStack 平台上创建三台 CentOS7.9系统的云主机,使用这三个节点安装 ceph 服务并完成初始化操作,第一个节点为 mon/osd节点,第二、三个节点为 osd 节点,部署完 ceph 后,创建 vms、images、volumes 三个 pool。完成后提交第一个节点的用户名、密码和 IP 地址到答题框。

【题目 8】1.2.8 Glance 对接 Ceph 存储[1 分]

修改 OpenStack 平台中 Glance 服务的配置文件,将 Glance 后端存储改为 Ceph 存储。在自己搭建的 OpenStack 平台中修改 glance 服务的相关配置文件,将glance 后端存储改为 ceph 存储。也就是所以的镜像会上传至 ceph 的 images pool 中。通过命令使用 cirros-0.3.4-x86_64-disk.img 镜像文件上传至云平台中,镜像命名为 cirros。完成后提交 controller 节点的用户名、密码和 IP 地址到答题框。

【题目 9】1.2.9 Cinder 对接 Ceph 存储[1 分]

修改 OpenStack 平台中 cinder 服务的配置文件,将 cinder 后端存储改为 Ceph 存储。修改 OpenStack 平台中 cinder 服务的相关配置文件,将 cinder 后端存储改为 ceph 存储。使创建的 cinder 块存储卷在 ceph 的 volumes pool 中。配置完成后,在 OpenStack 平台中使用创建卷 cinder-volume1,大小为 1G。完成后提交 controller 节点的用户名、密码和 IP 地址到答题框。

【题目 10】1.2.10 Nova 对接 Ceph 存储[1 分]

修改 OpenStack 平台中 Nova 服务的配置文件,将 Nova 后端存储改为 Ceph 存储。

修改 OpenStack 平台中 nova 服务的相关配置文件,将 nova 后端存储改为 ceph 存储。使 nova 所创建的虚拟机都存储在 ceph 的 vms pool 中。配置完成后在 OpenStack 平台中使用命令创建云主机 server1。完成后提交 controller 节点的用户名、密码和 IP 地址到答题框。

【题目 11】1.2.11 私有云平台优化:系统网络优化[1 分]

使用自行创建的 OpenStack 云计算平台,配置控制节点的网络缓存,使得每个 UDP连接(发送、接受)保证能有最小 358 KiB 最大 460 KiB 的 buffer,重启后仍然生效。配置完成后提交 controller 控制节点的用户名、密码和 IP 地址到答题框。

【题目 12】1.2.12 私有云平台排错:Neutron 网络组件排错[2 分]

使用项提供的 chinaskill-error01 镜像创建一台云主机(云主机的登录用户名为 root,密码为 Abc@1234),该云主机中存在错误的网络服务,错误现象为 dashboard 不能查看网络相关的页面,请修复 neutron 服务。修复完成后提交该云主机的用户名、密码和 IP 地址到答题框。

【题目 13】1.2.13 私有云平台排错:Cinder 卷组件报错[2 分]

使用项提供的 chinaskill-error01 镜像创建一台云主机(云主机的登录用户名为 root,密码为 Abc@1234),该云主机中存在错误的卷服务,错误现象为无法正常使用 cinder 命令,请修复卷服务,然后使用命令创建名为 chinaskill-cinder 的卷,大小为 2G。修复完成后提交该云主机的用户名、密码和 IP 地址到答题框。

【任务 3】私有云运维开发[10 分]

【适用平台】私有云

【题目 1】1.3.1 编写 Shell 一键部署脚本[1.0 分]

编写一键部署 nfs 云网盘应用系统。

在 OpenStack 私有云平台,创建一台云主机,使用提供的软件包,在 root 目录下编写一键部署脚本install_owncloud.sh,要求可以一键部署 owncloud 云网盘应用系统。完成后提交节点的 IP 地址、用户名和密码到答题框。

【题目 2】1.3.2 Ansible 服务部署:部署 ELK 集群服务[2 分]

编写 Playbook,部署的 ELK。

使用项提供的 OpenStack 私有云平台,创建三台 CentOS7.9 系统的云主机分别命名为 elk-1、elk-2 和 elk-3,Ansible 主机可以使用上一题的环境。要求 Ansible 节点编写剧本,执行 Ansible 剧本可以在这三个节点部署 ELK 集群服务(在/root 目录下创建 install_elk 目录作为 ansible 工作目录,部署的入口文件命名为 install_elk.yaml)。具体要求为三个节点均安装 Elasticserach 服务并配置为 Elasticserach 集群;kibana 安装在第一个节点;Logstash 安装在第二个节点。(需要用到的软件包在 HTTP 服务下)完成后提交 ansible 节点的用户名、密码和 IP 地址到答题框。(考试系统会连接到 ansible 节点,执行 ansible 脚本,准备好环境,以便考试系统访问)

【题目 3】1.3.3 Ansible 部署 Kafka 服务[2.0 分]

编写 Playbook,部署的 ZooKeeper 和 Kafka。

使用提供的 OpenStack 私有云平台,创建 4 台系统为 centos7.5 的云主机,其中一台作为 Ansible 的母机并命名为 ansible,另外三台云主机命名为 node1、node2、node3,通过附件中的/ansible/ansible.tar.gz 软件包在 ansible 节点安装 Ansible 服务;使用这一台母机,编写 Ansible 脚本(在/root 目录下创建 example 目录作为 Ansible 工作目

录,部署的入口文件命名为 cscc_install.yaml),编写 Ansible 脚本使用 roles 的方式对其他三台云主机进行安装 kafka 集群的操作(zookeeper 和 kafka 的安装压缩包在 gpmall-single.tar.gz 压缩包中,将 zookeeper 和 kafka 的压缩包解压到 node 节点的/opt 目录下进行安装)。完成后提交 ansible 节点的用户名、密码和 IP 地址到答题框。

(考试系统会连接到你的 ansible 节点,去执行 ansible 脚本,请准备好环境,以便考试系统访问)

【题目 4】1.3.4 OpenStack 资源管理的客户端程序开发 [2 分]

使用已建好的 OpenStack Python 运维开发环境,在 root 目录下创建 resource_manager.py 脚本,基于 OpenStack 资源配额管理服务封装客户端工具, resource_manager.py 程序支持命令行带参数执行,命令参数要求说明如下:

(1) 位置参数“command”,表示操作类型。操作类型包括“list”:标识查看所有的对象;“get”:查询指定的对象。

(2) 位置参数“resource”,表示资源信息类型:类型包括 “provider”:资源提供者;“inventory”:资源库存;“usage”:资源使用情况。

(3) 参数“-p 或-- provider”,标识资源提供者的名称。功能要求如下:

(1) 程序查询所有资源提供者,以 json 格式控制台输出。执行实例如下: python3 resource_manager.py list provider

(2) 查询指定资源提供者的资源信息,以 json 格式控制台输出。 执行实例如下: python3 resource_manager.py get provider -p “providername”

(3) 查询指定资源提供者的资源库存信息,以 json 格式控制台输出。执行实例如下: python3 resource_manager.py get inventory -p “providername”

(4) 查询指定资源提供者的资源使用信息,以 json 格式控制台输出。

执行实例如下: python3 resource_manager.py get usage -p “providername”

【题目 5】1.3.5 OpenStack 数据库操作开发[3 分]

使用已建好的 OpenStack Python 运维开发环境,在/root 目录下创建 mysql_db_manager.py 脚本,基于 python 的 sqlalchemy 库进行数据库的管理,实现对 OpenStack 内指定服务的MariaDB 数据库管理功能,实现该数据库下表创建、删除、数据插入、更新等操作(为确保检测成功,OpenStack MariaDB 数据库的账户 root、密码 000000 不要修改):

该表(table)用于描述 OpenStack 成员信息,表结构如下:表名称"member",该表有 4 个字段:id INTEGER 主键,自动递增;name VARCHAR(256);level INTEGER; place varchar(256);

(1) mysql_db_manager 内部实现 DM_Manager 类,类初始化方法 def init (self, db_name),参数 db_name 是 OpenStack 内部指定的某一服务数据库名称。

(2) DM_Manager 类实现create_table(self)方法。实现创建表功能,表指 member表。

(3) DM_Manager 类实现insert_table_data(self,**kwargs)方法。实现表中表数据插入功能,参数 kwargs 参数为要插入数据记录信息,key 与表字段名称一致。

(4) DM_Manager 类实现update_table_data(self,**kwargs)方法。实现表中数据记录更新功能,参数kwargs 参数为要更新数据记录信息,key 与表字段名称一致。

(5) DM_Manager 类实现run_table_raw_sql(self, raw_sql:str): 方法,无参数。实现表中直接执行sql 语句功能,raw_sql 参数为sql 语句。

(6) DM_Manager 类实现delete_table(self)方法。实现删除表功能,表指 member表。

  • 30
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
2021百度年全国职业院校技能大赛高职组“gz-2021029电子产品设计及制作”赛项是一项专注于电子产品设计和制作的比。这个赛项旨在提高参选手对电子产品设计理论和实践的理解以及技能用能力。 在比中,选手们将面临一系列与电子产品设计相关的任务和挑战。他们将需要运用自己的技术和专业知识,通过组装和调试电子元件,设计和制作出满足特定功能和需求的电子产品原型。 参选手需要具备扎实的电子产品设计基础知识,熟悉各类电子元器件的工作原理和特性,能够独立进行电路设计和PCB布线。他们还需要熟悉相关的软件工具,掌握使用CAD软件进行电路绘制和仿真的方法,能够进行电路分析和故障排除。 此外,参选手还需要有良好的团队合作和沟通能力,能够与队友紧密配合,共同完成项目的各个阶段。他们还需要在规定的时间内按要求完成项目,并展示项目的功能和效果。 通过参加这个比,选手们能够锻炼自己的电子产品设计与制作能力,提升自己的创新思维和解决问题的能力。此外,他们还可以通过与其他参选手和专家的交流和互动,了解当前电子产品设计和制作领域的最新发展动态,拓宽自己的专业视野。 总之,2021百度年全国职业院校技能大赛高职组“gz-2021029电子产品设计及制作”赛项是一个重要的电子产品设计和制作竞,旨在提高参选手的技能水平以及对电子产品设计的理论和实践的理解。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

忘川_ydy

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值