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

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 全国职业技能大赛云计算--高职组赛题卷②(容器云)

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


说明:本任务提供有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应用系统架构图如下:


99028b711a554f44a30a88dc33a5fedc.png



03191969767b4afead227b3795736080.png


请将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集群的应用系统部署与运维。

需要环境私信博主!!

相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
相关文章
|
运维 Kubernetes jenkins
全国职业技能大赛云计算--高职组赛题卷⑤(容器云)
全国职业技能大赛云计算--高职组赛题卷⑤(容器云)
200 1
|
运维 关系型数据库 Linux
全国职业技能大赛云计算--高职组赛题卷⑤(私有云)
全国职业技能大赛云计算--高职组赛题卷⑤(私有云)
139 1
|
运维 Linux 云计算
全国职业技能大赛云计算--高职组赛题卷②(私有云)
全国职业技能大赛云计算--高职组赛题卷②(私有云)
174 0
|
运维 jenkins 持续交付
全国职业技能大赛云计算--高职组赛题卷①(容器云)
全国职业技能大赛云计算--高职组赛题卷①(容器云)
129 0
|
运维 Linux 云计算
全国职业技能大赛云计算--高职组赛题卷①(私有云)
全国职业技能大赛云计算--高职组赛题卷①(私有云)
206 0
|
运维 Kubernetes jenkins
全国职业技能大赛云计算--高职组赛题卷④(容器云)
全国职业技能大赛云计算--高职组赛题卷④(容器云)
160 0
|
运维 Kubernetes 应用服务中间件
全国职业技能大赛云计算--高职组赛题卷③(容器云)
全国职业技能大赛云计算--高职组赛题卷③(容器云)
79 0
|
运维 关系型数据库 Linux
全国职业技能大赛云计算--高职组赛题卷④(私有云)
全国职业技能大赛云计算--高职组赛题卷④(私有云)
154 0
|
运维 Linux 云计算
全国职业技能大赛云计算--高职组赛题卷③(私有云)
全国职业技能大赛云计算--高职组赛题卷③(私有云)
93 0
|
存储 人工智能 运维
技术服务深耕本地市场:阿里云在日本的探索与实践|国家经理专栏
未来,我们将进一步将阿里云在中国的生态优势和服务日本本地市场的经验结合起来,联合本地合作伙伴进一步打造电子价签等符合本地市场需求的一站式解决方案,为传统行业数字化转型做出更大贡献。