您的位置:首页 > 科技 > 能源 > 电脑打不开网页怎么回事_济南市住建厅官方网站_搜狐财经峰会直播_手机如何制作自己的网站

电脑打不开网页怎么回事_济南市住建厅官方网站_搜狐财经峰会直播_手机如何制作自己的网站

2025/3/10 10:11:10 来源:https://blog.csdn.net/qq_18715339/article/details/145945110  浏览:    关键词:电脑打不开网页怎么回事_济南市住建厅官方网站_搜狐财经峰会直播_手机如何制作自己的网站
电脑打不开网页怎么回事_济南市住建厅官方网站_搜狐财经峰会直播_手机如何制作自己的网站

第十七届山东省职业院校技能大赛 高职组“云计算应用”赛项B卷

  • 【场次名称】第一场:模块一 私有云 模块二 容器云
    • 【任务】任务一、私有云服务搭建[5分]
      • 【适用平台】私有云
      • 【题目】1.1.1 集群主机环境配置[0.5分]
      • 【题目】1.1.2 基础软件包安装[0.5分]
      • 【题目】1.1.3 数据库及消息服务安装与使用[0.5分]
      • 【题目】1.1.4 Keystone服务安装与使用[0.5分]
      • 【题目】1.1.5 Glance安装与使用[0.6分]
      • 【题目】1.1.6 Nova安装[0.6分]
      • 【题目】1.1.7 Neutron安装[0.6分]
      • 【题目】1.1.8 Dashboard安装[0.6分]
      • 【题目】1.1.9 Swift安装[0.6分]
    • 【任务】任务二、私有云服务运维[15分]
      • 【题目】1.2.1 使用Heat模板创建用户[1.0分]
      • 【题目】1.2.2 使用Heat模板创建网络[1.0分]
      • 【题目】1.2.3 Linux系统调优[1.0分]
      • 【题目】1.2.4 Glance调优[1.0分]
      • 【题目】1.2.5 Glance开放镜像权限[1.0分]
      • 【题目】1.2.6 Glance镜像转换[1.0分]
      • 【题目】1.2.7 ISCSI存储配置[3.0分]
      • 【题目】1.2.8 Cgroup运维[3.0分]
      • 【题目】1.2.9 Linux Bridge网络互通[3.0分]
    • 【任务】任务三、私有云运维开发[10分]
      • 【题目】1.3.1 OpenStack镜像管理 Python程序开发[2分]
      • 【题目】1.3.2 OpenStack用户管理服务接口开发[3分]
      • 【题目】1.3.3 OpenStack 数据库操作代码开发[3.0分]
      • 【题目】1.3.4 OpenStack资源配额管理Placement命令行程序开发[2.0分]
    • 【任务】任务四、容器云服务搭建[5分]
      • 【适用平台】私有云
      • 【题目】2.1.1 部署Kubernetes容器云平台[1.0分]
      • 【题目】2.1.2 部署Harbor镜像仓库[1.0分]
      • 【题目】2.1.3 部署Istio服务网格[1.0分]
      • 【题目】2.1.4 部署kubeVirt 虚拟化组件[2.0分]
    • 【任务】任务五、容器云服务运维[15分]
      • 【适用平台】私有云
      • 【题目】2.2.1 容器化部署Node-Exporter[1.0分]
      • 【题目】2.2.2容器化部署Alertmanager [1.0分]
      • 【题目】2.2.3 容器化部署Grafana[1.0分]
      • 【题目】2.2.4 容器化部署Prometheus[1.0分]
      • 【题目】2.2.5 编排部署监控系统[1.0分]
      • 【题目】2.2.6 部署GitLab [1.0分]
      • 【题目】2.2.7 部署GitLab Runner [1.0分]
      • 【题目】2.2.8 部署GitLab Agent [2.0分]
      • 【题目】2.2.9 构建CI/CD [2.0分]
      • 【题目】2.2.10 KubeVirt运维:DNS记录[2.0分]
      • 【题目】2.2.11 iptables防火墙配置[2.0分]
    • 【任务】任务六、容器云运维开发[10分]
      • 【适用平台】私有云
      • 【题目】2.3.1 管理service资源[2.0分]
      • 【题目】2.3.2 管理Pod服务[2.0分]
      • 【题目】2.3.3 通过Docker Restful API 实现容器创建 [4.0分]
      • 【题目】2.3.4 Kubernetes CRD自定义资源的管理封装[2.0分]
  • 【场次名称】第二场:模块三 公有云
    • 【任务】任务一、公有云服务搭建[5分]
      • 【题目】3.1.1 私有网络管理[1.0分]
      • 【题目】3.1.2云实例管理[1.0分]
      • 【题目】3.1.3云数据库管理[1.0分]
      • 【题目】3.1.4 WordPress上云[1.0分]
      • 【题目】3.1.5安全组管理[1.0分]
    • 【任务】任务二、公有云服务运维[10分]
      • 【题目】3.2.1云容器引擎[2.0分]
      • 【题目】3.2.2使用kubectl操作集群[2.0分]
      • 【题目】3.2.3安装helm[3.0分]
      • 【题目】3.2.4 Pod管理:单容器[3.0分]
    • 【任务】任务三、公有云运维开发 [10分]
      • 【题目】3.3.1 python环境准备[3.0分]
      • 【题目】3.3.2 Python运维开发:云主机管理[3.0分]
      • 【题目】3.3.3 Python运维开发:云服务器组管理[4.0分]
    • 【任务】任务四、边缘计算系统运维[10分]
      • 【题目】3.4.1 云端部署\[5.0分\]
      • 【题目】3.4.2 边端部署 [5.0分]
    • 【任务】任务五、边缘计算云应用开发[5分]
      • 【题目】3.5.1 FastAPI 请求接口开发[2.0分]
      • 【题目】3.5.2 FastAPI 文件上传接口开发[3.0分]

第十七届山东省职业院校技能大赛

高职组“云计算应用”赛项B卷

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

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

拟将该任务交给工程师A与B,分工协助完成云平台服务部署、云应用开发、云系统运维等任务,系统架构如图1所示,IP地址规划如表1所示。

在这里插入图片描述

图 1 系统架构图

说明

1.每个选手各有自己的用户账号与密码,同组选手合作完成一套赛题操作;同组选手注意分工和协助,避免重复答题,每组的资源配额相同,避免资源过度申请;

2.竞赛所需要的账号资源、竞赛资源包与附件均会在考位信息表与设备确认单中给出;

3.答题过程严格按照题目要求进行答题。

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

【适用平台】私有云

【题目】1.1.1 集群主机环境配置[0.5分]

使用已提供创建两台云主机搭建OpenStack两节点集群,云主机类型使用4vCPU/16G类型,检测2台主机的网络互通情况,以确保网络正常通信与ssh连接,然后按以下要求配置服务器:

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

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

(3)使用提供的安装包文件,并分别修改好master节点和node节点的yum源文件“/etc/yum.repos.d/local.repo”。

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

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

【机器判分码】openstack/installation/yum/config

【题目】1.1.2 基础软件包安装[0.5分]

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

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

表2 云平台配置信息
在这里插入图片描述

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

【机器判分码】openstack/installation/iaas/install

【题目】1.1.3 数据库及消息服务安装与使用[0.5分]

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

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

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

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

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

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

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

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

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

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

【机器判分码】openstack/installation/db-mq/install

【题目】1.1.4 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。

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

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

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

【机器判分码】openstack/installation/keystone/install

【题目】1.1.5 Glance安装与使用[0.6分]

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

在controller节点上使用iaas-install-glance.sh脚本安装glance服务。然后将cirros-0.5.2-x86_64-disk.img镜像上传到OpenStack平台中,镜像名称为cirros-0.5.2。完成后提交控制节点的用户名、密码和IP地址到答题框。

【机器判分码】openstack/installation/glance/install

【题目】1.1.6 Nova安装[0.6分]

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

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

【机器判分码】openstack/installation/nova/install

【题目】1.1.7 Neutron安装[0.6分]

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

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

【机器判分码】openstack/installation/neutron/install

【题目】1.1.8 Dashboard安装[0.6分]

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

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

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

2.将Dashboard中的Django数据修改为存储在文件中。

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

【机器判分码】openstack/installation/horizon/install

【题目】1.1.9 Swift安装[0.6分]

在控制节点和计算节点上分别安装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地址到答题框。

【机器判分码】openstack/installation/swift/install

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

【适用平台】私有云

【题目】1.2.1 使用Heat模板创建用户[1.0分]

使用自己搭建的OpenStack私有云平台,使用heat编写摸板(heat_template_version: 2016-04-08)创建名为”chinaskills”的domain,在此domain下创建名为beijing_group的租户,在此租户下创建名为cloud的用户,将此文件命名及保存在/root/user_create.yml,完成后提交controller点的用户名、密码和IP地址到答题框。(说明:竞赛系统会远程执行user_create.yml文件,提交前先清理heat中测试数据)

【机器判分码】openstack/operation/heat/user/create

【题目】1.2.2 使用Heat模板创建网络[1.0分]

在自行搭建的OpenStack私有云平台上,在/root目录下编写Heat模板create_net.yaml,创建名为Heat-Network网络,选择不共享;创建子网名为Heat-Subnet,子网网段设置为10.20.2.0/24,开启DHCP服务,地址池为10.20.2.20-10.20.2.100。完成后提交控制节点的用户名、密码和IP地址到答题框。(说明:竞赛系统会远程执行create_net.yaml文件,提交前先清理heat中测试数据)

【机器判分码】openstack/operation/heat/network/create

【题目】1.2.3 Linux系统调优[1.0分]

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

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

【机器判分码】linux/centos7.9/sys/vm/dirty/writeback

【题目】1.2.4 Glance调优[1.0分]

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

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

【机器判分码】openstack/operation/glance/glance-api/subprocess

【题目】1.2.5 Glance开放镜像权限[1.0分]

在admin项目中存在glance-cirros镜像文件,将glance-cirros镜像指定demo项目进行共享使用。

使用OpenStack私有云平台,在OpenStack平台的admin项目中使用cirros-0.3.4-x86_64-disk.img镜像文件创建名为glance-cirros的镜像,通过OpenStack命令将glance-cirros镜像指定demo项目进行共享使用。配置完成后提交controller点的用户名、密码和IP地址到答题框。

【机器判分码】openstack/operation/glance/image/share

【题目】1.2.6 Glance镜像转换[1.0分]

使用CentOS7.5-compress.qcow2 的镜像,将该镜像转换为RAW格式。

使用自行搭建的OpenStack平台。在竞赛平台文件列表存在一个镜像为 CentOS7.5-compress.qcow2 的镜像,请使用 qemu 相关命令,将镜像转换为raw格式镜像,转换后的镜像命名为 chinaskill-compress.raw 并存放在/root 目录下。完成后提交controller点的用户名、密码和IP地址到答题框。

【机器判分码】openstack/operation/glance/image/compress/raw

【题目】1.2.7 ISCSI存储配置[3.0分]

在自行搭建的OpenStack云平台上,控制节点为客户端,计算节点为服务端,自行预留磁盘存储,进行iscsi存储服务器的配置,要求如下:

1.创建target,target名称为iqn.2024-11.com.chinaskills:compute;

2.创建名为chinaskills.iscsi_store的存储设备;

3.将存储设备绑定到后端存储;

4.设置控制列表,只允许主机名controller的客户端可以进行访问;

5.关闭账号密码验证访问;

6.客户端可以连接到服务端共享的存储设备;

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

【机器判分码】linux/iscsi/create/store

【题目】1.2.8 Cgroup运维[3.0分]

在提供的OpenStack的云平台上,通过cgroup技术来实现对ps命令的内存和磁盘使用限制,确保任何用户在执行ps命令时,其内存消耗不超过设定的值,限制vda磁盘的读取速率为1MB/S。组名设置为data。

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

【机器判分码】linux/cgroup/command/memory

【题目】1.2.9 Linux Bridge网络互通[3.0分]

在controller节点创建两个网络命名空间,分别命名为“ns01”和“ns02”,然后创建名为“br-skill”的Linux Bridge网络桥,关闭Spanning Tree Protocol(STP)并启用该网络桥,接着创建两组端口对,每组包含两个虚拟以太网设备,一个设备连接到网络桥,另一个设备连接到相应的命名空间。最后为命名空间“ns01“分配IP为172.128.9.7,命名空间”ns02“分配IP为172.128.9.8,实现2个命名空间的网络互通。

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

【机器判分码】linux/centos7.9/linux-bridge/network/connect

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

【适用平台】私有云

【题目】1.3.1 OpenStack镜像管理 Python程序开发[2分]

编写Python代码,实现OpenStack镜像增删查改。

使用已经部署完成的OpenStack两节点云平台,在controller节点安装Python 3.7.3的运行环境与依赖库。

在controller节点的/root目录下创建create_image.py文件,编写python代码对接OpenStack API,完成镜像的上传与查询。

(1)创建镜像:要求在OpenStack私有云平台中上传镜像cirros-0.3.4-x86_64-disk.img,名字为pvm_image,disk_format为qcow2,container_format为bare。

(2)查询镜像:查询pvm_image的详细信息,并控制台输出。

完成后提交OpenStack Python运维开发环境 Controller节点的IP地址,用户名和密码提交。

【机器判分码】openstack/python/dev/glance/image/manage

【题目】1.3.2 OpenStack用户管理服务接口开发[3分]

使用已建好的OpenStack Python运维开发环境,在/root目录下创建user_manager.py脚本,使用Flask框架,编写Python代码,端口为5043,IP地址为0.0.0.0,开发出OpenStack用户管理的接口,需要实现的接口如下:

(1)GET /user/<name>,自行调用查询接口,查询指定名称<name>的用户;返回信息以json格式输出到控制台。

(2)POST /user/create,自行调用创建接口,创建名为chinaskill的用户,密码为123456,返回信息以json格式输出到控制台。

(3)DELETE /user/delete/<name>,自行调用删除接口,删除指定名称的用户,若删除成功,返回信息输出到控制台。

完成后提交OpenStack Python运维开发环境 Controller节点的IP地址,用户名和密码到答题框。

【机器判分码】openstack/python/dev/user/flask/api

【题目】1.3.3 OpenStack 数据库操作代码开发[3.0分]

使用已建好的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表。

【机器判分码】openstack/python/dev/database/manage

【题目】1.3.4 OpenStack资源配额管理Placement命令行程序开发[2.0分]

使用已建好的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”

【机器判分码】openstack/dev/python/placement/cli/manage

【任务】任务四、容器云服务搭建[5分]

【适用平台】私有云

【题目】2.1.1 部署Kubernetes容器云平台[1.0分]

使用已创建两台云主机,云主机类型使用4vCPU/12G/100G类型,分别作为Kubernetes集群的Master节点和node节点,然后完成Kubernetes集群部署。

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

【机器判分码】kubernetes/cluster/installation/k8s

【题目】2.1.2 部署Harbor镜像仓库[1.0分]

在Kubernetes集群中完成Harbor镜像仓库部署。

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

【机器判分码】kubernetes/cluster/installation/harbor

【题目】2.1.3 部署Istio服务网格[1.0分]

在Kubernetes集群中完成Istio服务网格组件部署。

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

【机器判分码】kubernetes/cluster/installation/istio

【题目】2.1.4 部署kubeVirt 虚拟化组件[2.0分]

在Kubernetes集群中完成kubeVirt虚拟化组件部署。

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

【机器判分码】kubernetes/cluster/installation/kubevirt

【任务】任务五、容器云服务运维[15分]

【适用平台】私有云

【题目】2.2.1 容器化部署Node-Exporter[1.0分]

编写Dockerfile文件构建exporter镜像,要求基于centos完成Node-Exporter服务的安装与配置,并设置服务开机自启。

编写Dockerfile构建monitor-exporter:v1.0镜像,具体要求如下:(需要用到的软件包:Monitor.tar.gz)

(1)基础镜像:centos:centos7.9.2009;

(2)使用二进制包node_exporter-0.18.1.linux-amd64.tar.gz安装node-exporter服务;

(3)声明端口:9100;

(4)设置服务开机自启。

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

【机器判分码】docker/prometheus/monitor-exporter/dockerfile/create

【题目】2.2.2容器化部署Alertmanager [1.0分]

编写Dockerfile文件构建alert镜像,要求基于centos:latest完成Alertmanager服务的安装与配置,并设置服务开机自启。

编写Dockerfile构建monitor-alert:v1.0镜像,具体要求如下:(需要用到的软件包:Monitor.tar.gz)

(1)基础镜像:centos:centos7.9.2009;

(2)使用二进制包alertmanager-0.19.0.linux-amd64.tar.gz安装Alertmanager服务;

(3)声明端口:9093、9094;

(4)设置服务开机自启。

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

【机器判分码】docker/prometheus/alertmanager/dockerfile/create

【题目】2.2.3 容器化部署Grafana[1.0分]

编写Dockerfile文件构建grafana镜像,要求基于centos完成Grafana服务的安装与配置,并设置服务开机自启。

编写Dockerfile构建monitor-grafana:v1.0镜像,具体要求如下:(需要用到的软件包:Monitor.tar.gz)

(1)基础镜像:centos:centos7.9.2009;

(2)使用二进制包grafana-6.4.1.linux-amd64.tar.gz安装grafana服务;

(3)声明端口:3000;

(4)设置nacos服务开机自启。

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

【机器判分码】docker/prometheus/grafana/dockerfile/create

【题目】2.2.4 容器化部署Prometheus[1.0分]

编写Dockerfile文件构建prometheus镜像,要求基于centos完成Promethues服务的安装与配置,并设置服务开机自启。

编写Dockerfile构建monitor-prometheus:v1.0镜像,具体要求如下:(需要用到的软件包:Monitor.tar.gz)

(1)基础镜像:centos:centos7.9.2009;

(2)使用二进制包prometheus-2.13.0.linux-amd64.tar.gz安装promethues服务;

(3)编辑/data/prometheus/prometheus.yml文件,创建3个任务模板:prometheus、node和alertmanager,并将该文件拷贝到/data/prometheus/目录下;

(4)声明端口:9090;

(5)设置服务开机自启。

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

【机器判分码】docker/prometheus/prometheus/docker/dockerfile/create

【题目】2.2.5 编排部署监控系统[1.0分]

编写docker-compose.yaml文件,使用镜像exporter、alert、grafana和prometheus完成监控系统的编排部署。

编写docker-compose.yaml文件,具体要求如下:

(1)容器1名称:monitor-node;镜像:monitor-exporter:v1.0;端口映射:9100:9100;

(2)容器2名称:monitor- alertmanager;镜像:monitor-alert:v1.0;端口映射:9093:9093、9094:9094;

(3)容器3名称:monitor-grafana;镜像:monitor-grafana:v1.0;端口映射:3000:3000;

(4)容器4名称:monitor-prometheus;镜像:monitor-prometheus:v1.0;端口映射:9090:9090。

完成后编排部署监控系统,将Prometheus设置为Grafana的数据源,并命名为Prometheus。然后提交master节点的IP地址、用户名和密码到答题框。

【机器判分码】docker/prometheus/prometheus/docker/compose/create

【题目】2.2.6 部署GitLab [1.0分]

将GitLab部署到Kubernetes集群中,设置GitLab服务root用户的密码,使用Service暴露服务,并将提供的项目包导入到GitLab中。

在Kubernetes集群中新建命名空间gitlab-ci,将GitLab部署到该命名空间下,Deployment和Service名称均为gitlab,以NodePort方式将80端口对外暴露为30880,设置GitLab服务root用户的密码为admin@123,将项目包demo-2048.tar.gz导入到GitLab中并命名为demo-2048。

完成后提交Master节点的用户名、密码和IP地址到答题框。(需要用到的软件包:CICD-Runners-demo2048.tar.gz)

【机器判分码】kubernetes/cicd/gitlab-runner/gitlab/install

【题目】2.2.7 部署GitLab Runner [1.0分]

将GitLab Runner部署到Kubernetes集群中,为GitLab Runner创建持久化构建缓存目录以加速构建速度,并将其注册到GitLab中。

将GitLab Runner部署到gitlab-ci命名空间下,Release名称为gitlab-runner,为GitLab Runner创建持久化构建缓存目录/home/gitlab-runner/ci-build-cache以加速构建速度,并将其注册到GitLab中。

完成后提交Master节点的用户名、密码和IP地址到答题框。(需要用到的软件包:CICD-Runners-demo2048.tar.gz)

【机器判分码】kubernetes/cicd/gitlab-runner/gitlab-runner/install

【题目】2.2.8 部署GitLab Agent [2.0分]

将Kubernetes集群添加到GitLab项目中指定名称和命名空间。

将Kubernetes集群添加到demo-2048项目中,并命名为kubernetes-agent,项目命名空间选择gitlab-ci。

完成后提交Master节点的用户名、密码和IP地址到答题框。(需要用到的软件包:CICD-Runners-demo2048.tar.gz)

【机器判分码】kubernetes/cicd/gitlab-runner/project/demo-2048

【题目】2.2.9 构建CI/CD [2.0分]

编写流水线脚本触发自动构建,要求基于GitLab项目完成代码的编译、镜像的构建与推送,并自动发布应用到Kubernetes集群中。

编写流水线脚本.gitlab-ci.yml触发自动构建,具体要求如下:

(1)基于镜像maven:3.6-jdk-8构建项目的drone分支;

(2)构建镜像的名称:demo:latest;

(3)将镜像推送到Harbor仓库demo项目中;

(4)将demo-2048应用自动发布到Kubernetes集群gitlab-ci命名空间下。

完成后提交Master节点的用户名、密码和IP地址到答题框。(需要用到的软件包:CICD-Runners-demo2048.tar.gz)

【机器判分码】kubernetes/cicd/gitlab-runner/pipeline/create

【题目】2.2.10 KubeVirt运维:DNS记录[2.0分]

在chinaskills命名空间下,使用镜像fedora-virt:v1.0创建一个VirtualMachineInstance,名称为vmi-dns,并为其创建唯一的DNS记录,其中主机名为“1cloud”,子域名为“chinaskills”,root用户的登录密码为“YDY@2024”。

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

【机器判分码】kubernetes/kubevirt/create/vmi/vmi-dns

【题目】2.2.11 iptables防火墙配置[2.0分]

为了系统的安全,在master节点上设置以下iptables防火墙规则:

1. 允许那些已经建立连接或者与已建立连接相关的入站网络流量访问本机。

2. 开放SSH 服务(对应端口 22)的对外访问权限。

3. 开放MySQL 数据库服务(对应端口 3306)的对外访问权限。

4. 丢弃来自 100.45.6.0/24 网段且进入本机的网络流量,插入到INPUT链第2个位置,保障系统免受该网段潜在威胁。

5. 通过“目的地址转换”规则,实现将访问旧服务器(IP 为 192.168.1.10,端口 80)的流量转发到新服务器(IP 为 192.168.1.20,端口 8080)上。

6. 将本机往 100.168.1.0/24 网段的网络流量直接丢弃,防止本机被“肉鸡”控制。

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

【机器判分码】/linux/iptables/setting6

【任务】任务六、容器云运维开发[10分]

【适用平台】私有云

【题目】2.3.1 管理service资源[2.0分]

Kubernetes Python运维脚本开发,使用Restful APIs方式管理service服务。

使用已经部署完成的Kubernetes两节点云平台,在Master节点安装Python 3.7.3的运行环境与依赖库。

使用python request库和Kubernetes Restful APIs,在/root目录下,创建api_manager_service.py文件,要求编写python代码,代码实现以下任务:

(1)首先查询查询服务service,如果service名称“nginx-svc”已经存在,先删除。

(2)如果不存在“nginx-svc”,则使用service.yaml文件创建服务。

(3)创建完成后,查询该服务的信息,查询的body部分以json格式的文件输出到当前目录下的service_api_dev.json文件中。

(4)然后使用service_update.yaml更新服务端口。

(5)完成更新后,查询该服务的信息,信息通过控制台输出,并通过json格式追加到service_api_dev.json文件后。

编写完成后,提交该云主机的用户名、密码和IP地址到答题框。

【机器判分码】kubernetes/dev/python/service/restful/manage

【题目】2.3.2 管理Pod服务[2.0分]

Kubernetes Python运维脚本开发-使用SDK方式,通过Deployment管理Pod服务。

在前面已建好的Kubernetes开发环境云平台上。使用Kubernetes python SDK的“kubernetes”Python库,在/root目录下,创建sdk_manager_deployment.py文件,要求编写python代码,代码实现以下任务:

(1)首先使用nginx-deployment.yaml文件创建deployment资源。

(2)创建完成后,查询该服务的信息,查询的body部分通过控制台输出,并以json格式的文件输出到当前目录下的deployment_sdk_dev.json文件中。

编写完成后,提交该云主机的用户名、密码和IP地址到答题框。

【机器判分码】kubernetes/dev/python/deployment/create

【题目】2.3.3 通过Docker Restful API 实现容器创建 [4.0分]

Docker容器运维脚本开发,使用Restful APIs方式管理Docker容器服务。

在前面已建好的Kubernetes开发环境云平台上。使用python request库,自行开启Docker REST API端口,端口号为2375,在/root目录下,创建api_docker_manager.py文件,要求编写python代码,代码实现以下任务:

(1)使用提供的nginx:latest镜像创建容器,容器主机名为chinaskills-nginx,开机自启动,声明端口为8010,标签为chinaskill: nginx,网络模式选择bridge;

(2)创建完成之后,查询该容器的信息,查询的body部分通过控制台输出,并以json格式的文件输出到当前目录下的api_containers.json文件中;

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

【机器判分码】kubernetes/dev/python/docker/restful/manage

【题目】2.3.4 Kubernetes CRD自定义资源的管理封装[2.0分]

在前面已建好的Kubernetes开发环境云平台上。Kubernetes容器云平台通过CRD机制进行自定义APIs资源拓展,将chinaskill-cloud-*.yaml共5个文件复制到root目录下。参考chinaskill-cloud-11.yaml文件,编写CRD文件“chinaskill-cloud-crd.yaml”,放在root目录下。

说明:Competition CRD命名要求如下:

Kind为 Competition

Plural为competitions

singular为competition

shortNames为cpt

session含义是赛程

content含义为竞赛内容。

使用已建好的Kubernetes Python运维开发环境,在/root目录下创建crd _manager.py脚本。crd_manager.py编写基于Kubernetes SDK 实现Competition CRD的创建、删除与事件变化监听。

crd_manager.py内部实现3个方法:

crd_manager.py内部实现3个方法:

(1)实现方法create_crd(),实现对Competition CRD的创建。

(2)实现方法delete_crd(),实现对Competition CRD的删除。

(3)实现方法watch_crd_object(),实现对CRD资源的变化事件监听,将监听到Competition CRD被删除,将event信息输出到控制台,并停止监听。

【机器判分码】kubernetes/dev/python/crd/create

【场次名称】第二场:模块三 公有云

【任务】任务一、公有云服务搭建[5分]

【适用平台】华为云

【题目】3.1.1 私有网络管理[1.0分]

在公有云中完成虚拟私有云的创建。

具体要求如下:

(1)在北京四区域进行创建操作;

(2)创建一个账户名以“intnetX-”加选手的IAM账户序号(如“intnetX-999”)的内部网络:IP地址为172.16.0.0/16;

(3)创建子网名称为intnetX-server:IP地址为172.16.1.0/24;

(4)创建子网名称为intnetX-mysql:IP地址为172.16.2.0/24;

完成创建后,提交当前的AK(SecretId)、SK(SecretKey)和intnetX网络的ID到答题框。

【机器判分码】huaweicloud/vpc/create

【题目】3.1.2云实例管理[1.0分]

登录华为云平台,创建两台云实例。

具体要求如下:

(1)计费模式:按需计费;

(2)地域:北京四;

(3)CPU架构:x86计算;

(4)规格:c7.xlarge.2;

(5)镜像:CentOS 7.5 64位;

(6)系统盘:高IO 50G硬盘;

(7)公网带宽:按带宽计费,5Mbps;

(8)实例名称:ChinaSkill-node-1、ChinaSkill-node-2;

(9)登录方式:使用密码登录,密码自定义。

创建完成后,提交当前的AK(SecretId)、SK(SecretKey)和ChinaSkill-node-1的实例ID到答题框。

【机器判分码】huaweicloud/ecs/create

【题目】3.1.3云数据库管理[1.0分]

创建一台云数据库,具体要求如下:

(1)计费模式:按需计费;

(2)地域:北京四;

(3)MySQL数据库版本: 5.7;

(4)实例类型:主备;

(5)实例规格:通用型2核8GB/40GB;

(6)虚拟私有云:net-mysql;

(7)字符集:UTF8;

(8)端口:3306;

(9)数据库密码:Root123456;

(10)数据库名称:chinaskill-mysql;

创建完成后,提交你当前的AK(SecretId)、SK(SecretKey)和云数据库的实例ID到答题框。

【机器判分码】huaweicloud/db/mysql/create

【题目】3.1.4 WordPress上云[1.0分]

自行购买一台云服务器,使用http服务中提供的软件包wordpress-5.0.2-zh_CN.tar.gz,部署LNMP+WordPress服务(LNMP服务自行安装)。使用云数据库chinaskill-mysql读写分离地址。完成WordPress系统上云后,将ChinaSkill-node-1节点的用户名、密码和公网IP到答题框。

【机器判分码】huaweicloud/application/wordpress

【题目】3.1.5安全组管理[1.0分]

根据要求,创建一个安全组。

具体要求如下:

(1)名称:intnetX-security;

(2)地域:北京四;

(3)允许策略:只放行源地址为172.16.1.0/24访问27017端口;

(4)允许策略:只放行源地址为172.16.1.0/24使用ping命令访问;

(5)关联实例:将intnetX-security安全组关联至所创建的数据库中;

创建完成后,提交当前的AK(SecretId)、SK(SecretKey)和安全组ID到答题框。

【机器判分码】huaweicloud/vpc/secure/group/create

【任务】任务二、公有云服务运维[10分]

【适用平台】华为云

【题目】3.2.1云容器引擎[2.0分]

在公有云上,按照要求创建一个x86架构的容器云集群(无需选择可观测性插件)。

具体要求如下:

(1)集群名称:以“kcloud-”加选手的IAM账户序号(如“kcloud-999”);

(2)集群类型:CCE Standard集群;

(3)集群版本:v1.28;

(4)地域:北京四;

(5)集群管理规模:50节点;

(6)节点使用子网:intnetX-server;

(7)节点预留容器IP上限:64;

(8)容器网段:10.10.0.0/16。

(9)取消选择可观测性插件。

创建一个集群节点池,节点池配置信息要求如下:

(1)节点池名称:使用默认名称即可;

(2)节点池期望初始节点数量为1;

(3)节点规格:c6s.xlarge.2

(4)节点操作系统:EulerOS 2.9

创建完成后提交当前的AK(SecretId)、SK(SecretKey)和集群的ID到答题框。

【机器判分码】huaweicloud/cce/create

【题目】3.2.2使用kubectl操作集群[2.0分]

在CCE云容器引擎集群中安装kubectl命令,使用kubectl命令管理CCE云容器引擎集群。

完成后提交连接CCE云容器引擎集群节点的用户名、密码和公网IP地址到答题框。

【机器判分码】huaweicloud/cce/kubectl/install

【题目】3.2.3安装helm[3.0分]

使用提供的Helm软件包,在kcloud集群中安装Helm服务。

使用提供的helm软件包(软件包为helm-v3.3.0-linux-amd64.tar.gz在http服务下),在kcloud集群中安装helm服务。完成后提交连接kcloud集群节点的用户名、密码和公网IP地址到答题框。

【机器判分码】huaweicloud/cce/helm/install

【题目】3.2.4 Pod管理:单容器[3.0分]

在kcloud集群节点/root目录下,编写YAML文件nginx.yaml,具体要求如下:

(1)Pod名称:nginx-pod;

(2)命名空间:default;

(3)容器名称:mynginx;

(4)镜像:nginx;拉取策略:IfNotPresent;

(5)容器端口:80。

完成后使用该YAML文件创建Pod,并提交master节点的用户名、密码和IP到答题框。

【机器判分码】huaweicloud/cce/pod/mynginx

【任务】任务三、公有云运维开发 [10分]

【适用平台】华为云

【题目】3.3.1 python环境准备[3.0分]

通过华为云控制台,选择北京四区域,创建一台x86架构云主机,按需计费的2核,4G,硬盘50G的云实例,实例名为ChinaSkill,选择镜像为CentOS 7.5 64bit(40GB),分配独立的公网IP,带宽选择按使用流量计费5M。

登录此云服务器,安装Python3.6.8 SDK,安装Python安装huaweicloud-sdk-python库。完成后提交服务器节点的用户名、密码和IP地址到答题框。

【机器判分码】huaweicloud/python/pip/install/huaweicloud-sdk-python

【题目】3.3.2 Python运维开发:云主机管理[3.0分]

调用SDK云主机管理的方法,实现云主机的的增删查改。

使用已建好的运维开发环境,在/root/huawei目录下创建ecs_manager.py脚本,完成ECS云主机管理,ecs_manager.py程序支持命令行参数执行。

提示说明:在华为云控制面板“企业\项目管理”菜单下,获取IAM账户的企业项目“ID”,该ID为IAM账号开发“enterprise_project_id”的值。提交前答案前,需安装所开发程序所依赖的Python库。

要求如下:

(1)程序支持根据命令行参数,创建1个云主机。

位置参数“create”,表示创建;

参数“-i 或–input”,格式为json格式文本的云主机的名称、镜像名称2个信息。其他参数同上述开发环境云主机一致。

创建待成功,再返回查询该云主机的信息,结果以json格式输出到控制台。

参考执行实例如下:

python3 /root/huawei/ecs_manager.py create --input '{ “name”: " chinaskill001", " imagename": “imageid”} ’

(2)支持查询给定具体名称的ECS云主机查询。

位置参数“get”,表示查询ECS;

参数“-n 或 --name”支持指定名称ECS查询,类型为string。

参数“-o 或 --output”支持查询该ECS信息输出到文件,格式为json格式。

(3)程序支持查询目前区域账号下所有的ECS云主机。

位置参数“getall”,表示查询所有ECS云主机;

参数“-o 或–output”支持输出到文件,格式为yaml格式。

(4)支持删除指定名称的云主机。

位置参数“delete”,表示删除一个ECS云主机;返回response,通过控制台输出。

参数“-n或–name”支持指定名称查询,类型为string。

完成后提交“chinaskill开发运行环境云主机”的用户名、密码和 IP 地址到答题框。

【机器判分码】huaweicloud/python/ecs/create

【题目】3.3.3 Python运维开发:云服务器组管理[4.0分]

在开发环境云服务器的/root/huawei目录下,编写create_server_group.py文件,创建华为云的云服务器组,具体要求为:

(1)云服务器组名称:chinaskills_server_group;

(2)云服务器组策略:反亲和性;

(3)如果安全组已经存在,代码中需要先删除;

(4)使用其源码的get方法输出此云服务器组的详细信息。

完成后提交云服务器节点的用户名、密码和IP地址到答题框。

【机器判分码】huaweicloud/python/ecs-group/create

【任务】任务四、边缘计算系统运维[10分]

【适用平台】私有云

【题目】3.4.1 云端部署[5.0分]

使用华为云k8s-allinone-v1.22.1.qcow2镜像创建云主机(该镜像启动后内置一个完整的kubernetes服务,登录账号root,密码为Abc@1234),该云主机作为KubeEdge的云端Kubernetes 1.22节点。

然后下载软件包kubernetes_kubeedge.tar.gz到云端节点并部署KubeEdge1.11边缘计算系统,在云端节点部署KubeEdge cloudcore云端模块、启动cloudcore服务并配置该服务可被systemd管理。完成后提交云端节点的IP地址、用户名和密码到答题框。

【机器判分码】kubeedge/cloudcore/install

【题目】3.4.2 边端部署 [5.0分]

**使用华为云上申请2台CentOS7.9的云主机,**主机名分别为edge-node1、edge-node2。在http文件服务器中下载kubernetes_kubeedge.tar.gz软件包,使用该软件包在该虚拟机部署KubeEdge edgecore边端模块,并启动edgecore服务。加入成功之后,启用metrics监控服务。

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

【机器判分码】kubeedge/edgecore/install

【任务】任务五、边缘计算云应用开发[5分]

【适用平台】私有云

【题目】3.5.1 FastAPI 请求接口开发[2.0分]

使用搭建好的边缘计算平台,使用提供的python3.7.3.tar.gz软件包安装Python 3.7.3开发环境,基于FastAPI框架,编写cloudapp_main.py代码实现一组API,服务端口为8010,host为0.0.0.0,具体要求如下:

(1)定义接口/items/{item_id},请求为GET,该接口接受一个参数item_id,并且为int类型,该接口有一个可选的str查询参数,查询参数名为query,在调用该接口时,返回的数据为JSON数据;

(2)定义接口/hello,请求为GET,在调用该接口时,返回数据格式为JSON数据,内容为{“Hello”: “World”};

(3)定义更新PUT请求,接口名为/items/{item_id};

(4)定义请求体模型,模型参数包括name,age;

(5)编写代码,从更新接口中接收请求体模型,在调用接口时,数据格式为JSON格式,返回内容为模型中定义的名字和路径参数;

(6)将cloudapp_main.py代码放在root目录下,自行手动启动服务。

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

【机器判分码】kubeedge/python/dev/fastapi/item/service

【题目】3.5.2 FastAPI 文件上传接口开发[3.0分]

使用搭建Python 3.7.3的开发环境,基于FastAPI框架,编写cloudapp_file.py代码实现文件上传接口,服务端口为8000,host为0.0.0.0,具体要求如下:

(1)上传接口名称为“upload”,参数名称为“file_yaml”;

(2)上传的文件格式为yaml,读取该文件内容,转换成JSON格式;

(3)接口返回响应信息为JSON格式,字段包含文件名称、文件大小与文件内容。格式如下:

{“filename”: 读到的yaml文件实际名称;

“filesize”: 读到的yaml文件实际大小;

“content”: 读到文件内容,转换为json格式后内容};

(4)将chinaskill-cloud-*.yaml共5个文件复制到root目录下。

(6)将cloudapp_main.py代码放在root目录下,自行手动启动服务。

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

【机器判分码】kubeedge/python/dev/fastapi/fileupload/service

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com