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

news2024/11/15 20:56:10

某企业根据自身业务需求,实施数字化转型,规划和建设数字化平台,平台聚焦“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地址,用户名和密码。

模块一 私有云(30分)

企业首先完成私有云平台搭建和运维,私有云平台提供云主机、云网络、云存储等基础架构云服务,并开发自动化运维程序。

任务1 私有云服务搭建(5分)

1.1.1     基础环境配置

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

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

1.1.2     yum源配置

使用提供的http服务地址,分别设置controller节点和compute节点的yum源文件http.repo。

1.1.3     配置无秘钥ssh

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

1.1.4     基础安装

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

1.1.5     数据库安装与调优

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

1.1.6     Keystone服务安装与使用

在控制节点上安装Keystone服务并创建用户。

1.1.7     Glance安装与使用

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

1.1.8     Nova安装

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

1.1.9     Neutron安装

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

1.1.10   Dashboard安装

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

1.1.11   Swift安装

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

1.1.12   Cinder创建硬盘

在控制节点和计算节点分别安装Cinder服务,请在计算节点,对块存储进行扩容操作。

1.1.13   Cloudkitty服务安装与使用

在控制节点安装cloudkitty服务,安装完毕后,启用hashmap评级模块,并设置计费规则。

任务2 私有云服务运维(15分)

1.2.1     使用Heat模板创建用户

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

1.2.2     KVM优化

在OpenStack平台上修改相关配置文件,启用-device virtio-net-pci in kvm。

1.2.3     NFS对接Glance后端存储

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

1.2.4     Redis主从

使用赛项提供的OpenStack私有云平台,创建两台云主机,配置为redis的主从架构。

1.2.5     Linux系统调优-脏数据回写

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

1.2.6     Glance调优

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

1.2.7     Cinder数据加密

使用自行创建的OpenStack云计算平台,通过相关配置,开启Cinder块存储的数据加密功能。

1.2.8     Linux内核优化

修改相应的配置文件,对Linux系统进行内核优化操作。

1.2.9     JumpServer堡垒机部署

使用提供的软件包安装JumpServer堡垒机服务,并配置使用该堡垒机对接自己安装的控制和计算节点。

1.2.10   SkyWalking 应用部署

申请一台云主机,使用提供的软件包安装Elasticsearch服务和SkyWalking服务。再申请一台云主机,用于搭建gpmall商城应用,并配置SkyWalking 监控gpmall主机。

完成私有云平台的调优或排错工作。(本任务只公布考试范围,不公布赛题)

任务3 私有云运维开发(10分)

1.3.1     编写Shell一键部署脚本

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

1.3.2     Ansible部署MariaDB服务

编写Ansible脚本,部署MariaDB服务。

1.3.3     Ansible部署zabbix服务

编写Ansible脚本,部署zabbix服务。

1.3.4     编写OpenStack容器云平台自动化运维工具。(本任务只公布考试范围,不公布赛题)

模块二 容器云(30分)

企业构建Kubernetes容器云集群,引入KubeVirt实现OpenStack到Kubernetes的全面转型,用Kubernetes来管一切虚拟化运行时,包含裸金属、VM、容器。同时研发团队决定搭建基于Kubernetes 的CI/CD环境,基于这个平台来实现DevOps流程。引入服务网格Istio,实现业务系统的灰度发布,治理和优化公司各种微服务,并开发自动化运维程序。

任务1 容器云服务搭建(5分)

2.1.1     部署容器云平台

使用OpenStack私有云平台创建两台云主机,分别作为Kubernetes集群的master节点和node节点,然后完成Kubernetes集群的部署,并完成Istio服务网格、KubeVirt虚拟化和Harbor镜像仓库的部署。

任务2 容器云服务运维(15分)

2.2.1     容器化部署Node-Exporter

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

2.2.2     容器化部署Alertmanager

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

2.2.3     容器化部署Grafana

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

2.2.4     容器化部署Prometheus

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

2.2.5     编排部署监控系统

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

2.2.6     部署GitLab

新建命名空间devops,使用Deployment将GitLab部署到该命名空间下,并完成GitLab服务的初始化配置。

2.2.7     配置GitLab

在GitLab中创建一个名为drone的GitLab OAuth应用程序,创建一个新项目,并将提供的项目包导入到该项目中。

2.2.8     部署Drone

使用Deployment将Drone服务部署到devops命名空间下,并使用Service暴露服务。

2.2.9     构建CI/CD

编写流水线脚本,触发流水线自动构建,完成流水线的构建,构建成功后访问自动发布的服务。

2.2.10   服务网格:创建VirtualService

将Bookinfo应用部署到default命名空间下,为Bookinfo应用创建一个名为reviews的VirtualService,要求来自指定用户的所有流量将被路由到reviews服务的v2版本。

2.2.11   KubeVirt运维:快照管理

使用提供的镜像在default命名空间下创建一台VM,名称为exam,指定VM的配置信息,并为VM创建名为exam的快照。

2.12      完成容器云平台的调优或排错工作。(本任务只公布考试范围,不公布赛题)

任务3 容器云运维开发(10分)

2.3.1     管理service资源

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

2.3.2     管理Pod资源

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

2.3.3     编写Kubernetes容器云平台自动化运维工具。(本任务只公布考试范围,不公布赛题)

模块三 公有云(40分)

企业选择国内公有云提供商,选择云主机、云网络、云硬盘、云防火墙、负载均衡等服务,可创建Web服务,共享文件存储服务,数据库服务,数据库集群等服务。搭建基于云原生的DevOps相关服务,构建云、边、端一体化的边缘计算系统,并开发云应用程序。

根据上述公有云平台的特性,完成公有云中的各项运维工作。

任务1 公有云服务搭建(5分)

3.1.1     私有网络管理

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

3.1.2     云实例管理

登录公有云平台,创建两台云实例虚拟机。

3.1.3     管理数据库

使用intnetX-mysql网络创建两台chinaskill-sql-1和chinaskill-sql-2云服务器,并完成MongoDB安装。

3.1.4     主从数据库

在chinaskill-sql-1和chinaskill-sql-2云服务器中配置MongoDB主从数据库。

3.1.5     node环境管理

使用提供的压缩文件,安装Node.js环境。

3.1.6     安全组管理

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

3.1.7     RocketChat上云

使用http服务器提供文件,将Rocket.Chat应用部署上云。

3.1.8     NAT网关

根据要求创建一个公网NAT网关。

3.1.9     云服务器备份

创建一个云服务器备份存储库名为server_backup,容量为100G。将ChinaSkill-node-1云服务器制作镜像文件chinaskill-image。

3.1.10   负载均衡器

根据要求创建一个负载均衡器chinaskill-elb。

3.1.11   弹性伸缩管理

根据要求新建一个弹性伸缩启动配置。

任务2 公有云服务运维(10分)

3.2.1     云容器引擎

在公有云上,按照要求创建一个x86架构的容器云集群。

3.2.2     云容器管理

使用插件管理在kcloud容器集群中安装Dashboard可视化监控界面。

3.2.3     使用kubectl操作集群

在kcloud集群中安装kubectl命令,使用kubectl命令管理kcloud集群。

3.2.4     Secrets管理--Opaque

在master节点/root目录下编写YAML文件secret.yaml,要求执行文件创建密钥。

3.2.5     公有云安全:入侵检测系统

使用提供的makechk.tar.gz包安装chkrootkit入侵检测工具,安装完毕后使用chkrootkit工具扫描系。

3.2.6     公有云安全:日志分析服务

然后使用提供的sepb_elk_latest.tar镜像安装ELK服务。

任务3 公有云运维开发(10分)

3.3.1     开发环境搭建

创建一台云主机,并登录此云服务器,安装Python3.68运行环境与SDK依赖库。

3.3.2     云数据库管理:调用SDK云数据库管理的方法,实现云数据库的增删查改。

3.3.3     容器集群管理:调用SDK容器集群方法,实现容器集群增、删查、改。

3.3.4     弹性伸缩组管理

编写Python代码,调用弹性伸缩组API,创建弹性伸缩组。

3.3.5     完成公有云平台自动化运维程序开发。(本任务只公布考试范围,不公布赛题)

任务4 边缘计算系统运维(10分)

3.4.1     云端部署

构建Kubernetes容器云平台,云端部署KubeEdge CloudCore云测模块,并启动cloudcore服务。

3.4.2     边端部署

在边侧部署KubeEdge EdgeCore边侧模块,并启动edgecore服务。

3.4.3     边缘应用部署

通过边缘计算平台完成应用场景镜像部署与调试。(本任务只公布考试范围,不公布赛题)

任务5 边缘计算云应用开发(5分)

3.5.1     对接边缘计算系统,完成云应用微服务开发。(本任务只公布考试范围,不公布赛题)

#需要资源或有问题的,可私博主!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1364560.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Redis反序列化的一次问题

redis反序列化的一次问题 1. 问题描述 springbootredis不少用,但是一直没遇到什么问题,直接代码拷贝上去就用了。这次结合spring-security,将自定义的spring-security的UserDetails接口的实现类SecurityUser,反序列化取出时报错…

Packet Tracer - Configure Cisco Routers for Syslog, NTP, and SSH Operations

Packet Tracer - 配置Cisco路由器以实现Syslog、NTP和SSH功能 地址表 目标: 配置OSPF MD5身份验证。配置NTP服务。设置路由器将消息记录到syslog服务器。配置R3路由器以支持SSH连接。 背景/场景: 在本练习中,您将配置OSPF MD5身份验证以实…

一文快速搞懂Nginx —— Nginx 详解

一文快速搞懂Nginx 一、niginx 简介二、正向 / 反向代理2.1 正向代理2.2 反向代理 三、负载均衡四、动静分离五、web 缓存六、Niginx 安装6.1 windows版本下的安装6.2 Linux版本下的安装 七、常用命令八、为什么选择Nginx 一、niginx 简介 Nginx 同 Apache 一样都是一种 Web 服…

C语言光速入门笔记

C语言是一门面向过程的编译型语言,它的运行速度极快,仅次于汇编语言。C语言是计算机产业的核心语言,操作系统、硬件驱动、关键组件、数据库等都离不开C语言;不学习C语言,就不能了解计算机底层。 目录 C语言介绍C语言特…

PAT 乙级 1056 组合数的和

给定 N 个非 0 的个位数字,用其中任意 2 个数字都可以组合成 1 个 2 位的数字。要求所有可能组合出来的 2 位数字的和。例如给定 2、5、8,则可以组合出:25、28、52、58、82、85,它们的和为330。 输入格式: 输入在一行…

水母目标检测数据集VOC格式500张

水母,一种美丽而神秘的海洋生物,以其独特的形态和生态习性而备受瞩目。 水母的体型呈伞状,身体透明,有各种颜色和花纹。它们没有骨骼,身体由胶状物质组成,非常柔软和脆弱。水母通过触手上的刺细胞释放毒素…

Unity 一文掌握使用AddListener方法为组件事件添加监听器的方法

在Unity中,很多组件都带有事件,比如: Button组件:onClick() Toggle组件:On Value Changed(Boolean) Dropdown组件:On Value Changed(Int32) InputField组件:On Value Changed(String)、On End Edit(Stri…

【leetcode】力扣算法之有效的数独【中等难度】

题目描述 请你判断一个 9 x 9 的数独是否有效。只需要 根据以下规则 ,验证已经填入的数字是否有效即可。 数字 1-9 在每一行只能出现一次。数字 1-9 在每一列只能出现一次。数字 1-9 在每一个以粗实线分隔的 3x3 宫内只能出现一次。(请参考示例图&…

CodeWave智能开发平台--03--目标:应用创建--07供应商数据表格

摘要 本文是网易数帆CodeWave智能开发平台系列的第09篇,主要介绍了基于CodeWave平台文档的新手入门进行学习,实现一个完整的应用,本文主要完成07供应商数据表格 CodeWave智能开发平台的09次接触 CodeWave参考资源 网易数帆CodeWave开发者…

Micro-app 微前端框架demo介绍

Micro-app 框架 1、框架安装 npm i micro-zoe/micro-app --save2、子应用对应的view页面 <template><div><!-- name(必传)&#xff1a;应用名称url(必传)&#xff1a;应用地址&#xff0c;会被自动补全为http://localhost:3000/index.htmlbaseroute(可选)&…

mysql进阶-重构表

目录 1. 原因 2. 如何重构表呢&#xff1f; 2.1 命令1&#xff1a; 2.2 命令2&#xff1a; 2.3 命令3&#xff1a; 1. 原因 正常的业务开发&#xff0c;为什么需要重构表呢&#xff1f; 原因1&#xff1a;某张表存在大量的新增和删除操作&#xff0c;导致表经历过大量的…

Kali Linux——设置中文

【问题现象】 从下图可以看到&#xff0c;菜单全是英文的。对于英文不好的同学&#xff0c;使用起来很难受。 【解决方法】 1、获取root权限 su root 2、进入语言设置 dpkg-reconfigure locales 3、选择zh_CN.UTF-8 UTF-8 4、设置默认 5、安装完成 6、重启虚拟机 reboot…

多租户看这一篇就够了

什么是多租户&#xff1f;举个例子&#xff1a;马云、马化腾和刘强东三个人去租房子&#xff0c;他们因为家里经济困难所以勤工俭学&#xff0c;三个人决定合租一套三室一厅的房子&#xff0c;虽然每个人有自己的房间&#xff0c;但是家里的水电、厨房、卫生间和热水器都是大家…

强化学习的数学原理学习笔记 - 蒙特卡洛方法(Monte Carlo)

文章目录 概览&#xff1a;RL方法分类蒙特卡洛方法&#xff08;Monte Carlo&#xff0c;MC&#xff09;MC BasicMC Exploring Starts&#x1f7e6;MC ε-Greedy 本系列文章介绍强化学习基础知识与经典算法原理&#xff0c;大部分内容来自西湖大学赵世钰老师的强化学习的数学原理…

欧拉函数算法总结

知识概览 欧拉函数为1~n中与n互质的数的个数。假设一个数N分解质因数后的结果为 则欧拉函数 这可以用容斥原理来证明。 欧拉函数的应用 欧拉定理&#xff1a;若a与n互质&#xff0c;则。 费马小定理&#xff1a;欧拉定理中的n为质数p时&#xff0c;可以得到若a与p互质&#xff…

Java:结束本机端口被占用进程

前言 在实际开发当中我们&#xff0c;往往在idea中将某个服务的启动给关闭了&#xff0c;但是在nacos的某个服务上&#xff0c;我们却可以看到本地别名服务还是在上面挂载着本地再次启动的时候就提示【端口被占用】&#xff0c;今天就说一下如何解决这个问题 操作 点击即可预…

我的创作纪念日——redis的历史纪录

机缘 最开始只想存留点Redis的操作信息&#xff0c;后来写着写着也就写多了&#xff0c;虽然后面很长时间由于忙就没继续写&#xff0c;但是还是偶尔登录看一下&#xff0c;有好几篇文章的浏览量还是很多的呢。 收获 收获不多&#xff0c;粉丝也才三十多个&#xff0c;浏览量感…

mac版viso软件 流程图软件omnigraffile

OmniGraffle 是一款由 The Omni Group 开发的绘图工具&#xff0c;主要用于创建各种类型的图表、流程图、组织结构图、网站地图等。它提供了丰富的绘图工具和功能&#xff0c;包括形状、线条、文本、颜色、样式等&#xff0c;可以帮助用户轻松地创建出精美的图表和图形。 OmniG…

优化器(一)torch.optim.SGD-随机梯度下降法

torch.optim.SGD-随机梯度下降法 import torch import torchvision.datasets from torch import nn from torch.utils.data import DataLoaderdataset torchvision.datasets.CIFAR10(root./data, trainFalse, downloadTrue,transformtorchvision.transforms.ToTensor()) data…

【51单片机】独立按键控制LED灯

不同于上篇文章只用代码控制&#xff0c;这次我们要再加上独立按键一同控制LED灯 目录 独立按键控制LED亮灭&#xff1a;代码实现&#xff1a; 独立按键控制LED状态&#xff1a;代码实现&#xff1a; 独立按键实现二进制LED显示&#xff1a;代码实现&#xff1a; 独立按键控制…