【楚怡杯】职业院校技能大赛 “云计算应用” 赛项样题三

news2024/11/13 12:58:28

        某企业根据自身业务需求,实施数字化转型,规划和建设数字化平台,平台聚焦“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 Barbican服务安装与使用

        在控制节点安装barbican服务,安装服务完毕后,创建一个密钥。

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

        1.2.1 Glance镜像上传

        在OpenStack私有云平台上,使用cirros-0.3.4-x86_64-disk.img镜像创建一个名为cirros的镜像。

        1.2.2 RPM包管理

        解决依赖包冲突,安装libguestfs-tools工具。

        1.2.3 Raid磁盘阵列管理

        在云主机上对云硬盘进行操作,先进行分区,然后创建名为/dev/md5、raid级别为5的磁盘阵列加一个热备盘。

        1.2.4 使用Heat模板创建flavor

        编写模板server.yaml,按要求创建云主机类型。

        1.2.5 虚拟机调整flavor

        使用OpenStack私有云平台,请修改相应配置,实现云主机调整实例大小可以使用。

        1.2.6 快照管理

      在OpenStack私有云平台上,创建云主机VM1并打快照,使用qemu-img相关命令,修改compat版本。

        1.2.7 Swift配置Glance后端存储

        使用OpenStack私有云平台,修改相应的配置文件,使对象存储Swift作为glance镜像服务的后端存储。

        1.2.8 Glance镜像存储限制

        在OpenStack平台上,请修改Glance后端配置文件,将用户的镜像存储配额限制为20GB。

        1.2.9 RabbitMQ集群部署

        使用OpenStack私有云平台,创建三个云主机搭建RabbitMQ集群。

        1.2.10 云平台安全策略提升

        使用OpenStack,安装必要组件,将私有云平台的访问策略从http提升至https。

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

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

        1.3.1 编写Shell脚本备份数据库

        编写数据库的定期备份shell脚本。

        1.3.2 Ansible部署MariaDB服务

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

        1.3.3 Ansible部署ELK服务

        编写Playbook,部署的ELK。

        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 容器化部署MariaDB:

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

        2.2.2 容器化部署Redis

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

        2.2.3 容器化部署Pig

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

        2.2.4 容器化部署Nginx

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

        2.2.5 编排部署Pig快发开发平台

        编写docker-compose.yaml文件,要求使用镜像mariadb、redis、pig和nginx完成Pig快速开发平台的编排部署。

        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应用的四个微服务设置默认版本的VirtualService,将所有流量路由到每个微服务的v1版本。

        2.2.11 KubeVirt运维:创建VM

        使用云端镜像在default命名空间下创建一台VM,名称为exam,指定VM的内存、CPU、运行策略、启动参数等配置。

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

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

        2.3.1 管理Pod服务

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

        2.3.2 自定义调度器

        Kubernetes Python运维脚本开发-使用Restful API方式管理调度器。

        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 安装Helm

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

        3.2.5 Secrets管理--Opaque

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

        3.2.6 私有仓库管理

     在master节点添加搭建的本地私有chart仓库源,并上传wordpress-13.0.23.tgz包至chartmuseum私有仓库中。可以使用本地仓库chart源部署应用。

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

        3.3.1 开发环境搭建

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

        3.3.2 密钥对管理

        编写Python代码,实现密钥对的创建。

        3.3.4 云硬盘管理

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

        3.3.4 云主机管理

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

        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/2139803.html

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

相关文章

高亮下位机温湿度

效果如下: 如何对QTextEditor中的内容进行高亮和格式化显示: 首先我们要自定义一个类WenshiduHighlighter,继承自QSyntaxHighlighter实现构造函数,在构造函数中将需要匹配的正则和对应的格式创建,存到成员变量中重写父类的void h…

DNS应答报文分析

目录 DNS应答以太网数据帧 1. 数据链路层 1.1 以太网首部:(目的MAC地址6字节)(源MAC地址6字节)(帧类型2字节)共14字节 1.2 以太网首部数据 2. 网络层 2.1 IP协议头部共20个字节 2.2 IP协议头部数据 3. 传输层 3.1 UDP头部共8字节 3.2 UDP头部数据 4. 应用层 4.1 D…

低空经济第一站:无人机飞手人才培养技术详解

在低空经济蓬勃发展的背景下,无人机飞手作为直接操作者和应用者,其人才培养技术成为推动这一新兴经济形态持续健康发展的关键。以下是对无人机飞手人才培养技术的详细解析: 一、培养目标 无人机飞手的培养旨在培养具备扎实无人机操作技能、…

_Array类,类似于Vector,其实就是_string

例子&#xff1a; using namespace lf; using namespace std;int main() {_Array<int> a(10, -1);_Array<_string> s { _t("one"), _t("two") };_pcn(a);_pcn(s);} 结果&#xff1a; 源代码_Array.h&#xff1a; /***********************…

el-table 的单元格 + 图表 + 排序

<el-table border :data"tableDataThree" height"370px" style"width: 100%"><el-table-column :key"activeName 8" width"50" type"index" label"序号" align"center"></el…

macOS系统Homebrew工具安装及使用

1.打开Homebrew — The Missing Package Manager for macOS (or Linux) 2.复制安装命令到终端执行 复制 执行 3. 开始自动安装过程 4.安装成功 5.使用brew安装wget工具

第L6周:机器学习-随机森林(RF)

&#x1f368; 本文为&#x1f517;365天深度学习训练营 中的学习记录博客&#x1f356; 原作者&#xff1a;K同学啊 目标&#xff1a; 1.什么是随机森林&#xff08;RF&#xff09; 随机森林&#xff08;Random Forest, RF&#xff09;是一种由 决策树 构成的 集成算法 &#…

WebSocket vs. Server-Sent Events:选择最适合你的实时数据流技术

引言&#xff1a; 在当今这个信息爆炸的时代&#xff0c;用户对于网页应用的实时性要求越来越高。从即时通讯到在线游戏&#xff0c;再到实时数据监控&#xff0c;WebSocket技术因其能够实现浏览器与服务器之间的全双工通信而受到开发者的青睐。 WebSocket技术为现代Web应用…

java计算机毕设课设—电子政务网系统(附源码、文章、相关截图、部署视频)

这是什么系统&#xff1f; 资源获取方式在最下方 java计算机毕设课设—电子政务网系统(附源码、文章、相关截图、部署视频) 电子政务网系统主要用于提升政府机关的政务管理效率&#xff0c;核心功能包括前台网站展示、留言板管理、后台登录与密码修改、网站公告发布、政府部…

高级Java程序员必备的技术点:你准备好了吗?

在Java编程的世界里&#xff0c;成为一名高级程序员不仅需要深厚的基础知识&#xff0c;还需要掌握一系列高级技术和最佳实践。这些技术点是通向技术专家之路的敲门砖&#xff0c;也是应对复杂项目挑战的利器。本文将探讨高级Java程序员必备的技术点&#xff0c;帮助你自我提升…

VS code 安装使用配置 Continue

Continue 插件介绍 Continue 是一款高效的 VS Code 插件&#xff0c;提供类似 GitHub Copilot 的功能&#xff0c;旨在提升开发者的编程效率。其配置简单&#xff0c;使用体验流畅&#xff0c;深受开发者喜爱。 主要功能特点 智能代码补全 Continue 能够基于当前代码上下文生…

MATLAB 可视化基础:绘图命令与应用

目录 1. 绘制子图1.1基本绘图命令1.2. 使用 subplot 函数1.3. 绘图类型 2.MATLAB 可视化进阶(以下代码均居于以上代码的数据定义上实现)2.1. 极坐标图2.3. 隐函数的绘制 3.总结 在数据分析和科学计算中&#xff0c;数据可视化是理解和解释结果的关键工具。今天&#xff0c;我将…

Javaの运算符 Day5

1. 算数运算符 1.1 二元运算符&#xff08;两个操作数&#xff09;的算数运算符 操作符描述求和-求差*求积/求商%求余 代码举例 public class TestOperator {public static void main(String[] args) {int a 20;int b 12;System.out.println(a b);System.out.println(a …

【算法】队列与BFS

【ps】本篇有 4 道 leetcode OJ。 目录 一、算法简介 二、相关例题 1&#xff09;N 叉树的层序遍历 .1- 题目解析 .2- 代码编写 2&#xff09;二叉树的锯齿形层序遍历 .1- 题目解析 .2- 代码编写 3&#xff09;二叉树最大宽度 .1- 题目解析 .2- 代码编写 4&#xf…

UART协议

目录 一、概述二、帧格式起始位数据位奇偶校验位停止位 三、数据传输过程四、串行通信接口RS232RS422RS485 五、UART环回程序设计 参考&#xff1a;正点原子FPGA开发指南 一、概述 UART&#xff08;通用异步收发器&#xff09;是一种异步、全双工的串行通信总线&#xff0c;在…

CGAL 从DSM到DTM holefilling remeshing

CGAL 从DSM到DTM holefilling & remeshing 上一节简单地删除被建筑物覆盖的大片区域中的顶点会导致大的Delaunay三角面&#xff0c;从而得到了较差的DTM&#xff0c;所以一个额外的步骤可以帮助产生更好的形状网格:删除大于阈值的面&#xff0c;并用孔洞填充算法进行三角化…

C++速通LeetCode简单第17题-爬楼梯

思路要点&#xff1a;将问题转化为求斐波那契数列的第n项&#xff0c;然后迭代。 思路分析&#xff1a;最后一次爬的阶数不是1就是2&#xff0c;假设爬n阶的方法数是f(n)&#xff0c;假设最后一次爬1阶&#xff0c;那么爬前面的 n-1阶的方法数是f(n-1)&#xff1b;假设最后一次…

力扣题解2848

大家好&#xff0c;欢迎来到无限大的频道。 今日继续给大家带来力扣题解。 题目描述&#xff08;简单&#xff09;&#xff1a; 与车相交的点 给你一个下标从 0 开始的二维整数数组 nums 表示汽车停放在数轴上的坐标。对于任意下标 i&#xff0c;nums[i] [starti, endi] &…

熵权法详细讲解+Python代码实现

&#x1f935;‍♂️ 个人主页&#xff1a;艾派森的个人主页 ✍&#x1f3fb;作者简介&#xff1a;Python学习者 &#x1f40b; 希望大家多多支持&#xff0c;我们一起进步&#xff01;&#x1f604; 如果文章对你有帮助的话&#xff0c; 欢迎评论 &#x1f4ac;点赞&#x1f4…

大数据新视界 --大数据大厂之 Cassandra 分布式数据库:高可用数据存储的新选择

&#x1f496;&#x1f496;&#x1f496;亲爱的朋友们&#xff0c;热烈欢迎你们来到 青云交的博客&#xff01;能与你们在此邂逅&#xff0c;我满心欢喜&#xff0c;深感无比荣幸。在这个瞬息万变的时代&#xff0c;我们每个人都在苦苦追寻一处能让心灵安然栖息的港湾。而 我的…