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

        某企业根据自身业务需求,实施数字化转型,规划和建设数字化平台,平台聚焦“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 OpenStack平台内存优化

        搭建完OpenStack平台后,关闭系统的内存共享,打开透明大页。

        

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

        1.2.1 OpenStack开放镜像权限

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

        1.2.2 OpenStack消息队列调优

        在OpenStack私有云平台,分别通过用户级别、系统级别、配置文件来设置RabbitMQ服务的最大连接数为10240。

        1.2.3 OpenStack镜像压缩

        在HTTP文件服务器中存在一个镜像为CentOS7.5-compress.qcow2的镜像,请对该镜像进行压缩操作。

        1.2.4 Glance对接Cinder存储

        在自行搭建的OpenStack平台中修改相关参数,使Glance可以使用Cinder作为后端存储。

        1.2.5 使用Heat模板创建容器

        在自行搭建的OpenStack私有云平台上,在/root目录下编写Heat模板文件,要求执行yaml文件可以创建名为heat-swift的容器。

        1.2.6 Nova清除缓存

        在OpenStack平台上,修改相关配置,让长时间不用的镜像缓存在过一定的时间后会被自动删除。

        1.2.7 Redis集群部署。

        部署Redis集群,Redis的一主二从三哨兵架构。

        1.2.8 redis服务调优-内存大页

        请修改Redis的内存大页机制,规避大量拷贝时的性能变慢问题。

        1.2.9 JumpServer堡垒机部署

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

        1.2.10 MongoDB主从

        使用提供的OpenStack云平台创建两台云主机,在两台云主机中部署MongoDB数据库服务并配置MongoDB主从数据库。

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

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

        1.3.1 编写Shell一键部署脚本

        编写一键部署脚本,要求可以一键部署gpmall商城应用系统。

        1.3.2 Ansible部署FTP服务

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

        1.3.3 Ansible部署Kafka服务

        编写Playbook,部署的ZooKeeper和Kafka。

        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文件构建mysql镜像,要求基于centos完成MariaDB数据库的安装和配置,并设置服务开机自启。

        2.2.2 容器化部署Redis

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

        2.2.3 容器化部署Nginx

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

        2.2.4 容器化部署ERP

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

        2.2.5 编排部署ERP管理系统

        编写docker-compose.yaml文件,要求使用镜像mysql、redis、nginx和erp完成ERP管理系统的编排部署。

        2.2.6 部署Jenkins

        使用Deployment将Jenkins部署到devops命名空间下,使用提供的软件包完成离线插件的安装,并完成Jenkins的基础配置。

        2.2.7 部署GitLab

        使用Deployment将GitLab部署到devops命名空间下,设置GitLab登录信息,然后新建公开项目,并将提供的代码上传到该项目。

        2.2.8 配置Jenkins连接GitLab

        在Jenkins中配置GitLab凭据,完成后测试其连通性。

        2.2.9 构建CI/CD

        在Jenkins中新建流水线任务,然后在GitLab项目中编写声明式Pipeline,触发构建,要求完成构建项目,然后构建Docker镜像并推送到Harbor仓库,并基于新构建的镜像完成服务自动发布到Kubernetes集群。

        2.2.10 服务网格:流量镜像

        将Bookinfo应用部署到default命名空间下,创建请求路由reviews,将指定的流量路由到reviews微服务的v1版本,然后将相同流量镜像到reviews微服务的v2版本。

        2.2.11 KubeVirt运维:快照管理

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

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

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

        2.3.1 管理Deployment服务

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

        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 云硬盘存储卷

        根据要求购买云硬盘存储卷。

        3.2.6 Secrets管理--Opaque

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

        

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

        3.3.1 开发环境搭建

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

        3.3.2 安全组管理

        调用api安全组的接口,实现安全组的增删查改。

        3.3.3 安全组规则管理

        调用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.mzph.cn/bicheng/54460.shtml

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

相关文章

JVM字节码与局部变量表

文章目录 局部变量表javap字节码指令分类 指令指令数据类型前缀加载和存储指令加载常量算术指令其他指令 字节码示例说明 局部变量表 每个线程的帧栈是独立的,每个线程中的方法调用会产生栈帧,栈帧中保存着方法执行的信息,例如局部变量表。 …

防火墙配置变更管理

在任何组织中,当涉及到网络安全时,频繁地更换防火墙是必要的,实施简化的防火墙更改管理策略模板可以减少管理时间,还可以减少每次变更引入新的安全性或合规性问题的可能性。典型的防火墙变更管理流程将包括以下步骤: …

八股文-多线程、并发

八股文-多线程、并发 最近学到了一种方法,可以用于简历项目经验编写以及面试题目的回答 STAR法则:在什么背景下,你需要解决什么问题,你做了啥,得到了什么结果 情境(Situation): 描…

【裸机装机系列】4.kali(ubuntu)-配置个人用户的sudo权限并进行bashrc的其他配置

前面更新好软件之后,就正式进入使用环节了,不过先不要着急,还需要配置一些东西才能使用 文中提到的: 自己账户内——frank㉿practice root账户内——root㉿practice其中 ㉿ 前 是用户名 ㉿ 后 是主机名 也就是在前面U盘装机的时…

动态语言? 静态语言? ------区别何在?java,js,c,c++,python分给是静态or动态语言?

JavaScript 被称为动态语言,而 Java 被称为静态语言 这主要与它们在类型系统、编译执行方式以及运行时行为等方面的不同特性有关。详细差异如下: JavaScript (动态语言) 动态类型: 在JavaScript中,变量的类型是在运行时确定的。这…

【数据结构与算法】LeetCode:双指针法

文章目录 LeetCode:双指针法正序同向而行(快慢指针)移除元素移动零(Hot 100)删除有序数组中的重复项颜色分类(Hot 100)压缩字符串移除链表元素删除排序链表中的重复元素删除排序链表中的重复元素…

声通科技子公司金讯数智,引领热线创新与治理新篇章

6月28日,“热线发展与治理创新”年度论坛在美丽的海滨城市厦门圆满落幕。此次盛会汇聚了政府、高校及企业界的精英,共同探讨人工智能如何赋能政府治理与政务服务创新,其中,声通科技子公司西安金讯数智信息技术有限公司&#xff08…

无人机维修保养一对一教学技术详解

随着无人机技术的日益普及和应用的广泛深入,无人机的维修保养成为确保飞行安全、延长使用寿命的关键环节。为了培养专业的无人机维护人才,一对一教学成为了一种高效、针对性的培训方式。以下将详细解析无人机维修保养一对一教学的技术要点,涵…

QT Layout布局,隐藏其中的某些部件后,不影响原来的布局

最近在工作时,被要求,需要将布局中的某些部件隐藏后,但不能影响原来的布局。 现在记录解决方案! 一、水平布局(垂直布局一样) ui中的布局 效果: 按钮可以任意隐藏,都不影响其中布…

Ceph 基本架构(一)

Ceph架构图 Ceph整体组成 Ceph 是一个开源的分布式存储系统,设计用于提供优秀的性能、可靠性和可扩展性。Ceph 的架构主要由几个核心组件构成,每个组件都有特定的功能,共同协作以实现高可用性和数据的一致性。 以下是 Ceph 的整体架构及其…

Pikachu靶场之XSS

先来点鸡汤,少就是多,慢就是快。 环境搭建 攻击机kali 192.168.146.140 靶机win7 192.168.146.161 下载zip,pikachu - GitCode 把下载好的pikachu-master,拖进win7,用phpstudy打开网站根目录,.....再用…

CleanMyMac 5 for Mac 最新中文破解版下载 系统优化垃圾清理工具

今天给大家带来的是CleanMyMac最新款CleanMyMac 5,它是一个全面的Mac清理和维护工具,通过提供多项强大的功能,帮助用户简化日常维护任务,提升系统性能,同时保护个人隐私和安全。无论是新手还是经验丰富的Mac用户&#…

【SpringBoot】调度和执行定时任务--Quartz(超详细)

Quartz 是一个功能强大的任务调度框架,广泛用于在 Java 应用程序中定时执行任务,同时它支持 Cron 表达式、持久化任务、集群等特性。以下是 Quartz 的详细使用教程,包括安装、基本概念、简单示例和高级功能。 1. 安装 Quartz 首先&#xff…

京东广告投放平台整洁架构演进之路

作者:广告研发 赵嘉铎 前言 从去年开始京东广告投放系统做了一次以领域驱动设计为思想内核的架构升级,在深入理解DDD思想的同时,我们基于广告投放业务的本质特征大胆地融入了自己的理解和改造。新架构是从设计思想到落地框架都进行了彻底的…

Python 解析 Charles JSON Session File (.chlsj)

Charles 代理,是一款抓包软件,可以帮助我们抓取浏览器请求跟响应。 1、在 Filter 里面输入需要抓包的网址 2、右键 Export Session 3、文件类型选择 JSON Session File (.chlsj) 保存 4、解析响应的数据结构 response.body.text 是文本字符串。 # 导入…

自然语言处理-基于注意力机制的文本匹配

背景: 任务三:基于注意力机制的文本匹配 输入两个句子判断,判断它们之间的关系。参考ESIM(可以只用LSTM,忽略Tree-LSTM),用双向的注意力机制实现。 参考 《神经网络与深度学习》 第7章 Reaso…

SpringCloud微服务消息驱动的实践指南

Spring Cloud是一个用于构建分布式系统的开发工具,通过它可以快速搭建基于微服务架构的应用,并提供了丰富的功能和解决方案。在Spring Cloud中,消息驱动是一种常见的通信模式,通过消息传递来实现不同微服务之间的数据交互。本文将…

【移动端开发】“明日头条APP”

文章目录 1 系统概述1.1研究背景1.2研究意义 2 系统设计2.1 关键技术2.2 系统设计2.2.1 系统功能模块2.2.2 数据库设计 3 系统实现3.1 数据模型3.1.1 NewsURL3.1.2 NewsType3.1.3 NewsInfo 3.2 数据库操作3.2.1 DBOpenHelper3.2.2 DBManager 3.3 适配器类3.3.1 AddItem3.3.2 In…

用 JS 实现一个发布订阅模式

在JavaScript中,发布订阅模式(Pub/Sub)是一种常用的设计模式,用于实现不同组件之间的解耦通信。在这种模式中,发布者(Publisher)不直接给订阅者(Subscriber)发送消息&…

容器技术--Dockerfile 构建镜像

Dockerfile dockerfile 是一系列命令&参数构成的脚本,这些命令应用于基础镜像,最终创建一个新的镜像,可以提供一致的运行环境。【也可以登录容器,自己安装软件,最后commit为镜像】 命令 FROM 指定基础镜像(必须),如FROM ubuntu;每一个指令就生成一层镜像;RUN 运…