全国职业技能大赛云计算--高职组赛题卷④(容器云)
全国职业技能大赛云计算--高职组赛题卷④(容器云)
- 第二场次题目:容器云平台部署与运维
- 任务1 Docker CE及私有仓库安装任务(5分)
- 任务2 基于容器的web应用系统部署任务(15分)
- 任务3 基于容器的持续集成部署任务(15分)
- 任务4 Kubernetes容器云平台部署与运维(15分,本任务只公布考试范围,不公布赛题)
- 需要环境的可以私信博主!!!
第二场次题目:容器云平台部署与运维
说明:本任务提供有4台服务器master、node1、node2和cicd-node,都安装了centos7.5操作系统,在/opt/centos目录下有CentOS-7-x86_64-DVD-1804系统光盘文件所有文件,在/opt/containerk8s目录下有本次容器云运维所需的所有文件。
某公司技术部产品开发上线周期长,客户的需求经常得不到及时响应。引入CICD (Continuous Integration持续集成、Continuous Delivery持续交付) 成了公司的当务之急,研发团队决定搭建基于Kubernetes 的CICD环境,希望基于这个平台来实现DevOps的部分流程,来减轻开发、部署、运维的负担。
为了能够让公司开发的web应用系统产品能够基于服务器的性能、可靠性、高可用性与方便维护,研发部决定使用微服务架构,实现基于Kubernetes的容器化部署。
任务1 Docker CE及私有仓库安装任务(5分)
1.在master、node1、node2、cicd-node各节点中分别安装DockerCE和docker-compose。
2.在cicd-node节点安装Harbor私有仓库,导入/opt/containerk8s/docker/images目录下所有镜像,并推送到Harbor私有仓库。
3.在node1节点上从仓库中拉取mysql:latest和wordpress:latest镜像,创建/root/wproject/docker-compse.yaml文件,编排部署wordpress,并设置 restart策略。
4.在node1节点上停止并删除上述部署的wordpress容器。
任务2 基于容器的web应用系统部署任务(15分)
将该公司开发的基于微服务架构的web应用系统Chinaskillmall实现全容器化部署(web应用系统Chinaskillmall容器化所需要的所有软件包在/opt/containerk8s/ Chinaskillmall目录下)。Chinaskillmall应用系统架构图如下:


请将Zookeeper组件、redis组件和Chinaskillmall前端Nginx组件按照要求进行容器化,其他组件已经实现容器化,直接从仓库中拉取镜像运行容器即可(Chinaskillmall- mysql:v1.1、Chinaskillmall-Kafka:v1.1、Chinaskillmall-jar:v1.1):
1.编写Dockerfile制作Redis镜像,生成镜像名为Chinaskillmall-Redis:v1.1,并推送到私有仓库。具体要求如下:
(1)基于centos基础镜像;
(2)指定作者为Chinaskill;
(3)安装Redis服务,暴露6379端口;
(4)设置服务自启动。
2.编写Dockerfile制作Zookeeper镜像,生成镜像名为Chinaskillmall-Zookeeper:v1.1,并推送到私有仓库。具体要求如下:
(1)基于centos基础镜像;;
(2)指定作者为Chinaskill;
(3)安装Zookeeper服务,暴露2181端口;
(4)设置服务自启动。
3. 编写Dockerfile制作web应用系统nginx镜像,生成镜像名为Chinaskillmall-nginx:v1.1,并推送到私有仓库。具体要求如下:
商城网站实现Chinaskillmall前端容器化,
(1)基于centos基础镜像;
(2)指定作者为Chinaskill;
(3)安装nginx服务,将提供的dest目录传到镜像内,并将dest目录内的前端文件复制到nginx的工作目录;
(4)暴露80端口;
(5)设置服务自启动。
4.创建/root/Chinaskillmallproject/docker-compose.yaml文件,使用上述镜像编排部署Chinaskillmall应用系统。
任务3 基于容器的持续集成部署任务(15分)
该公司决定采用GitLab + Jenkins来构建CICD环境,以缩短新功能开发上线周期,及时满足客户的需求,实现DevOps的部分流程,来减轻部署运维的负担,可视化容器生命周期管理、应用发布和版本迭代更新,请完成GitLab + Jenkins的CICD环境部署:
1.从私有仓库中拉取gitlab:latest镜像,创建/root/devops/docker-compose.yaml文件,启动gitlab服务,实现web浏览器正常访问gitlab服务。
2.创建gitlab用户(用户名:Chinaskill),创建gitlab项目(项目名:ChinaskillProject),实现通过SSH链接克隆项目。
3.从私有镜像仓库中拉取Jenkins镜像,在cicd-node节点上运行部署Jenkins容器,将容器的8080端口映射为宿主机的8080端口。
4.新建Jenkins任务,配置Jenkins webhook,将镜像推送到Harbor私有仓库。
5.在master节点/root目录下克隆ChinaskillProject项目,修改项目中的index.html文件(/root/ChinaskillProject/templates/index.html)中的“Hello,word!”修改为“Hello,ChinaSkill!”,提交并推送(push)代码。
任务4 Kubernetes容器云平台部署与运维(15分,本任务只公布考试范围,不公布赛题)
本任务内容为:Kubernetes集群环境搭建和运维、基于Kubernetes集群的应用系统部署与运维。
需要环境的可以私信博主!!!
相关文章:
全国职业技能大赛云计算--高职组赛题卷④(容器云)
全国职业技能大赛云计算--高职组赛题卷④(容器云) 第二场次题目:容器云平台部署与运维任务1 Docker CE及私有仓库安装任务(5分)任务2 基于容器的web应用系统部署任务(15分)任务3 基于容器的持续…...
【TCP】延时应答 与 捎带应答
延时应答 与 捎带应答 一. 延迟应答(效率机制)二. 捎带应答(效率机制) 一. 延迟应答(效率机制) 延时应答:相当于 流量控制 的延伸。 流量控制是 踩下了刹车,是发送方发的不要太快&a…...
URL与URI小结
文章目录 一、URL是什么?URL的一般形式: 二、分类三、URI总结 一、URL是什么? 每条由Web服务器返回的内容都是和它管理的某个文件相关联的,这些文件中的每一个都有一个唯一的名字,叫做URL(通用资源定位符&…...
QT--day5
注册 mainwindow.h #ifndef MAINWINDOW_H #define MAINWINDOW_H#include <QMainWindow> #include<QPushButton> #include<QLineEdit> #include<QLabel> #include <QMessageBox> #include<QString> #include<QSqlDatabase> …...
在windows和linux上玩转Tensorrt
为避免重复,一些安装内容我直接贴其他大佬的帖子了,我是按照他们的步骤来操作的,趟过一遍,没有问题。 本篇着重在tensort在Cmakelist中如何配置,以及如何配置编译动/静态库,比较基础,也是想做个…...
七天学会C语言-第五天(函数)
1. 调用有参函数 有参函数是一种接受输入参数(参数值)并执行特定操作的函数。通过向函数传递参数,你可以将数据传递给函数,让函数处理这些数据并返回结果。 例1:编写一程序,要求用户输入4 个数字…...
340. 至多包含 K 个不同字符的最长子串
340. 至多包含 K 个不同字符的最长子串 vip...
【分布式计算】副本数据Replicated Data
作用:可靠性、高性能、容错性 问题:如何保持一致、如何更新 问题:存在读写/写写冲突 一个简单的方法就是每个操作都保持顺序,但是因为网络延迟会导致问题 Data-centric models: consistency model?? ??? 读取时,…...
erlang练习题(二)
题目一 替换元组或列表中指定位置的元素,新元素作为参数和列表或元组一起传入函数内 解答 replaceIdx(List, Index, Val) ->replaceIdx(List, Index, Val, 1, []).replaceIdx([], _, _, _, Acc) ->lists:reverse(Acc);%% 到达替换位置的处理replaceIdx([_ …...
CRM软件系统价格不同的原因
很多人在了解CRM系统时,发现不同品牌的CRM价格有着很大的区别。一些CRM系统只需要几千块钱,一些CRM系统的报价却要上万,甚至十几万。为什么CRM系统价格不同?下面我们就来说说。 1、功能不同 从功能方面来说,一些CRM系…...
json数据解析
目录 一、读数据 1、简单对象读取 2、数组读取 3、对象读取 二、写数据 1、简单生成JSON 2、对象数组JSON 3、嵌套对象 三、一个综合例子 1、读JSON 2、写JSON 一、读数据 1、简单对象读取 {"app": "xnwVideo","src": "C:\\buil…...
Verilog零基础入门(边看边练与测试仿真)-状态机-笔记(7-10讲)
文章目录 第七讲第八讲第九讲第十讲 第七讲 1、最简单的状态机-三角波发生器 1、两种状态的代码: //最简单的状态机,三角波发生器; timescale 1ns/10ps module tri_gen(clk,res,d_out); input clk; input res; o…...
【Hadoop】HDFS API 操作大全
🍁 博主 "开着拖拉机回家"带您 Go to New World.✨🍁 🦄 个人主页——🎐开着拖拉机回家_Linux,大数据运维-CSDN博客 🎐✨🍁 🪁🍁 希望本文能够给您带来一定的帮助…...
Webpack打包图片
一、在js文件中引入图片 二、在package.config.js中配置加载器 module.exports {mode: "production", // 设置打包的模式:production生产模式 development开发模式module: {rules: [// 配置img加载器{test: /\.(jpg|png|gif)$/i,type:"asset/resou…...
DipC 构建基因组 3D 结构(学习笔记)
背景 本文主要记录了 DipC 数据的复现过程、学习笔记及注意事项。 目录 下载 SRA 数据使用 SRA Toolkit 转换 SRA 数据为 Fastq 格式使用 bwa 比对测序数据使用 Hickit 计算样本的基因组 3D 结构使用散点图展示 3D 结构计算 3D 结构重复模拟的稳定性其他 步骤 1. 下载 SRA…...
Qt中音频的使用
对于音频我们在使用的过程中一般是录制音频、播放音频。针对这两个需求介绍Qt中音频的使用。 Qt中音频的录制 步骤: 1、获取系统中的音频设备。 2、创建QAudioRecorder对象,指定使用的音频设备,通过QAudioRecorder的setAudioInput函数设置…...
[centos]centos7源码编译cmake报错Could NOT find OpenSSL
测试环境: centos7.9 cmake3.25.0 ./bootstrap以后报错如下: Could NOT find OpenSSL, try to set the path to OpenSSL root folder in the system variable OPENSSL_ROOT_DIR (missing: OPENSSL_CRYPTO_LIBRARY OPENSSL_INCLUDE_DIR) CMake Error …...
vue若依前端项目搭建
1.项目搭建 首先进入到你需要创建的项目目录下面,然后输入命令vue create .创建项目 接下来选择手动搭建,然后把下面图片中的内容选上 再然后继续配置一些参数信息 接下来运行npm run serve项目就启动起来了 2.配置登录界面文件 首先修改src/router…...
基于win32实现TB登陆滑动验证
这里写目录标题 滑动验证触发条件:失败条件:解决方法:清除cooKie 滑动验证方式一:win32 api获取窗口句柄,选择固定位置 成功率高方式二: 原自动化滑动,成功率中 案例 先谈理论,淘宝 taobao.com …...
vue学习-07todoList案例与浏览器本地存储
TodoList Todo List(任务列表)是一个简单的Web应用程序示例,用于管理任务、代办事项或清单。Vue.js 是一个非常适合构建这种类型应用程序的框架,因为它提供了数据绑定、组件化、响应式和轻松管理用户界面的能力。 以下是一个基本…...
stm32G473的flash模式是单bank还是双bank?
今天突然有人stm32G473的flash模式是单bank还是双bank?由于时间太久,我真忘记了。搜搜发现,还真有人和我一样。见下面的链接:https://shequ.stmicroelectronics.cn/forum.php?modviewthread&tid644563 根据STM32G4系列参考手…...
RocketMQ延迟消息机制
两种延迟消息 RocketMQ中提供了两种延迟消息机制 指定固定的延迟级别 通过在Message中设定一个MessageDelayLevel参数,对应18个预设的延迟级别指定时间点的延迟级别 通过在Message中设定一个DeliverTimeMS指定一个Long类型表示的具体时间点。到了时间点后…...
在HarmonyOS ArkTS ArkUI-X 5.0及以上版本中,手势开发全攻略:
在 HarmonyOS 应用开发中,手势交互是连接用户与设备的核心纽带。ArkTS 框架提供了丰富的手势处理能力,既支持点击、长按、拖拽等基础单一手势的精细控制,也能通过多种绑定策略解决父子组件的手势竞争问题。本文将结合官方开发文档,…...
Cesium1.95中高性能加载1500个点
一、基本方式: 图标使用.png比.svg性能要好 <template><div id"cesiumContainer"></div><div class"toolbar"><button id"resetButton">重新生成点</button><span id"countDisplay&qu…...
基础测试工具使用经验
背景 vtune,perf, nsight system等基础测试工具,都是用过的,但是没有记录,都逐渐忘了。所以写这篇博客总结记录一下,只要以后发现新的用法,就记得来编辑补充一下 perf 比较基础的用法: 先改这…...
Java多线程实现之Callable接口深度解析
Java多线程实现之Callable接口深度解析 一、Callable接口概述1.1 接口定义1.2 与Runnable接口的对比1.3 Future接口与FutureTask类 二、Callable接口的基本使用方法2.1 传统方式实现Callable接口2.2 使用Lambda表达式简化Callable实现2.3 使用FutureTask类执行Callable任务 三、…...
【C语言练习】080. 使用C语言实现简单的数据库操作
080. 使用C语言实现简单的数据库操作 080. 使用C语言实现简单的数据库操作使用原生APIODBC接口第三方库ORM框架文件模拟1. 安装SQLite2. 示例代码:使用SQLite创建数据库、表和插入数据3. 编译和运行4. 示例运行输出:5. 注意事项6. 总结080. 使用C语言实现简单的数据库操作 在…...
AI编程--插件对比分析:CodeRider、GitHub Copilot及其他
AI编程插件对比分析:CodeRider、GitHub Copilot及其他 随着人工智能技术的快速发展,AI编程插件已成为提升开发者生产力的重要工具。CodeRider和GitHub Copilot作为市场上的领先者,分别以其独特的特性和生态系统吸引了大量开发者。本文将从功…...
全志A40i android7.1 调试信息打印串口由uart0改为uart3
一,概述 1. 目的 将调试信息打印串口由uart0改为uart3。 2. 版本信息 Uboot版本:2014.07; Kernel版本:Linux-3.10; 二,Uboot 1. sys_config.fex改动 使能uart3(TX:PH00 RX:PH01),并让boo…...
Web 架构之 CDN 加速原理与落地实践
文章目录 一、思维导图二、正文内容(一)CDN 基础概念1. 定义2. 组成部分 (二)CDN 加速原理1. 请求路由2. 内容缓存3. 内容更新 (三)CDN 落地实践1. 选择 CDN 服务商2. 配置 CDN3. 集成到 Web 架构 …...
