全国职业技能大赛云计算--高职组赛题卷②(容器云)

2023-09-18 10:15:36

第二场次题目:容器云平台部署与运维

说明:本任务提供有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和owncloud:latest镜像,创建/root/wproject/docker-compse.yaml文件,编排部署owncloud,并设置 restart策略。
4.在node1节点上停止并删除上述部署的owncloud容器。

任务2 基于容器的web应用系统部署任务(15分)

将该公司开发的基于微服务架构的web应用系统Chinaskillmall实现全容器化部署(web应用系统Chinaskillmall容器化所需要的所有软件包在/opt/containerk8s/ Chinaskillmall目录下)。Chinaskillmall应用系统架构图如下:

在这里插入图片描述

在这里插入图片描述
请将mysql数据库组件、Chinaskillmall前端nginx组件和Chinaskillmall业务后台按照要求进行容器化,其他组件已经实现容器化,直接从仓库中拉取镜像运行容器即可(Chinaskillmall-Redis:v1.1、Chinaskillmall-Zookeeper:v1.1、Chinaskillmall-Kafka:v1.1):
1.编写Dockerfile制作数据库MySQL镜像,生成镜像名为Chinaskillmall-mysql:v1.1,并推送其到私有仓库。具体要求如下:
(1)基于centos基础镜像;
(2)指定作者为Chinaskill;
(3)安装mariadb数据库,并使用root用户进行数据库初始化;设置数据库支持UTF-8编码;设定root用户的密码为123456,并给root用户赋予远程访问的权限;
(4)创建数据库Chinaskillmall并使用Chinaskillmall数据库,导入Chinaskillmalldb.sql;
(5)开放3306端口;
(6)设置服务自启动。
2.编写Dockerfile制作Web应用系统nginx镜像,生成镜像名为Chinaskillmall-nginx:v1.1,并推送其到私有仓库。具体要求如下:
(1)基于centos基础镜像;
(2)指定作者为Chinaskill;
(3)安装nginx服务,将提供的dest目录传到镜像内,并将dest目录内的前端文件复制到nginx的工作目录;
(4)暴露80端口;
(5)设置服务自启动。
3.编写Dockerfile制作web应用系统后端服务镜像,生成镜像名为Chinaskillmall-jar:v1.1,并推送到私有仓库。具体要求如下:
(1)使用CentOS基础镜像;
(2)指定作者为Chinaskill;
(3)安装java JDK环境,将提供的jar包传到镜像内;
(5)编写启动脚本,设置脚本自启动。
4.创建/root/Chinaskillmallproject/docker-compose.yaml文件,使用上述镜像编排部署Chinaskillmall应用系统。

任务3 基于容器的持续集成部署任务(15分)

该公司决定采用GitLab + Gitlab-runner来构建CICD环境,以缩短新功能开发上线周期,及时满足客户的需求,实现DevOps的部分流程,来减轻部署运维的负担,可视化容器生命周期管理、应用发布和版本迭代更新,请完成GitLab + Gitlab-runner的CICD环境部署:
1.从私有仓库中拉取gitlab:latest镜像,创建/root/devops/docker-compose.yaml文件,启动gitlab服务,实现web浏览器正常访问gitlab服务。
2.创建gitlab用户(用户名:Chinaskill),创建gitlab项目(项目名:ChinaskillProject),实现通过SSH链接克隆项目。
3.从私有镜像仓库中拉取gitlab-runner镜像,在cicd-node节点上运行gitlab-runner容器。
4.完成gitlab-runner的配置,编写gitlab-ci.yaml,注册runner,将镜像推送到Harbor私有仓库。
5.在master节点/root目录下克隆ChinaskillProject项目,修改项目中的index.html文件(/root/ChinaskillProject/templates/index.html)中的“Hello,word!”修改为“Hello,ChinaSkill!”,提交并推送(push)代码。

任务4 Kubernetes容器云平台部署与运维(15分,本任务只公布考试范围,不公布赛题)

本任务内容为:Kubernetes集群环境搭建和运维、基于Kubernetes集群的应用系统部署与运维。

需要环境私信博主!!

更多推荐

redis 初识与入门

1.什么是RedisRedis是一种基于内存的数据库,对数据的读写操作都是在内存中完成,因此读写速度非常快,常用于缓存,消息队列、分布式锁等场景。Redis提供了多种数据类型来支持不同的业务场景,比如String(字符串)、Hash(哈希)、List(列表)、Set(集合)、Zset(有序集合)、Bitmaps(位图)

Mysql的逻辑架构、存储引擎

1.逻辑架构剖析1.1服务器处理客户端请求首先MySQL是典型的C/S架构,即Clinet/Server架构,服务端程序使用的mysqld。不论客户端进程和服务器进程是采用哪种方式进行通信,最后实现的效果是:客户端进程向服务器进程发送一段文本(SQL语句),服务器进程处理后再向客户端进程发送一段文本(处理结果)。那服务

什么是枚举类型?如何定义和使用枚举?

枚举类型是C语言中一种非常有用的数据类型,它允许你创建一组有限的命名常量,以提高代码的可读性和可维护性。本文将详细解释什么是枚举类型,如何定义和使用它们。什么是枚举类型?在C语言中,枚举类型(Enum)是一种用户定义的数据类型,它允许你为一组相关的常量赋予有意义的名字。枚举类型的主要优点是它可以帮助你使代码更易于理解,

优思学院|六西格玛核心方法:CTQ关键质量树

在六西格玛管理方法中,CTQ是Critical-To-Quality的缩写。CTQ代表客户需求,这些需求被认为是项目/产品/流程的成功与否的关键因素,得到了执行团队的认可。CTQ树最初是作为六西格玛方法的一部分开发的。然而,您可以在各种情况下使用它们,包括在为内部客户开发产品、流程和服务时。例如,“改善客户服务”这样的

面试中的压力测试:如何稳定自己的心态

🌷🍁博主猫头虎(🐅🐾)带您GotoNewWorld✨🍁🦄博客首页——🐅🐾猫头虎的博客🎐🐳《面试题大全专栏》🦕文章图文并茂🦖生动形象🐅简单易学!欢迎大家来踩踩~🌺🌊《IDEA开发秘籍专栏》🐾学会IDEA常用操作,工作效率翻倍~💐🌊《100天精通Golang(基础入门篇)》🐅学会Gol

Ribbon负载均衡器

两种:1.1集中式负载均衡,服务端负载均衡硬件nginx轮询、负载、哈希、随机、权重为什么要做负载均衡?1.2客户端负载均衡器用客户端负载均衡器很多机制可以自定义小知识:不想让别人调自己,只想用别人的,怎么做?只需要不注册spring.cloud.nacos.discovery.register-enabled=fal

【全面】CSS3新增了哪些新特性?

目录一、选择器的扩展1.属性选择器2.伪类选择器3.伪元素选择器二、盒子模型的增强1.box-sizing属性2.边框圆角(border-radius)3.盒阴影(box-shadow)三、过渡和动画效果1.过渡效果2.动画效果四、响应式布局1.媒体查询(mediaquery)2.弹性布局(Flexbox)CSS3是C

IDEA——工程项目的两种窗口开发模式

文章目录引言一、多项目窗口模式的便利1.1源码debug二、多项目窗口模式的弊端三、多项目窗口的版本管理四、单项目、多项目窗口模式转换引言idea编辑器有两种窗口模式,一种是单项目窗口,另一种是多项目窗口。我个人使用较多的是单项目窗口,即一个微服务项目,或单体项目一个独立的idea窗口。此模式好处有两方面,一是开发者可

基于Java+vue前后端分离安全教育平台设计实现(源码+lw+部署文档+讲解等)

博主介绍:✌全网粉丝30W+,csdn特邀作者、博客专家、CSDN新星计划导师、Java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌🍅文末获取源码联系🍅👇🏻精彩专栏推荐订阅👇🏻不然下次找不到哟2022-2024年最全的计算机软件毕业设计选题

卷运维不如卷网络安全

最近发现很多从事运维的选择了辞职,重新规划自己的职业发展方向。运维工程师这个岗位在IT行业里面确实是处于最底层的,不管什么环节出现问题,基本都是运维背锅。背锅也就罢了,薪资水平也比不上别的岗位。一般运维的薪资水平大多数都是6-9K,还要高频出差。规模小一点的公司省内出差,规模稍微大一点的公司基本全国各地到处飞,而且一呆

《人件》读书笔记

作者与书籍简介:《人件》1987年第一次出版,这本书与《人月神话》共同被誉为软件管理图书的“双子星”。作者TomDeMarco与TimothyLister均为美国咨询师。《人件》是两位作者在越洋航班中的思想碰撞中产生的,“软件系统的主要问题不在技术,而在于社会性因素”这一想法一经产生,作者就展开了一系列的案例研究,一步

热文推荐