天下职业技能大赛云计算--高职组赛题卷②(容器云) ...

饭宝  论坛元老 | 2024-7-23 08:23:17 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 1021|帖子 1021|积分 3063

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

说明:本任务提供有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集群的应用体系部署与运维。
需要情况私信博主!!


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

饭宝

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表