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


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

    说明:本任务提供有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集群的应用系统部署与运维。

    需要环境的可以私信博主!!!

  • 相关阅读:
    大数据学习:进程管理(2)
    MySQL事务详解
    window 11 wsl 安装docker
    Spring底层架构核心概念
    聚观早报 | 飞书签约韵达速递;蔚来首颗自研芯片“杨戬”量产
    数仓之数据质量及Apache Griffin简介
    [软考中级]软件设计师-uml
    前端JavaScript入门到精通,javascript核心进阶ES6语法、API、js高级等基础知识和实战 —— Web APIs(四)
    【面试经典150 | 数组】除自身以外数组的乘积
    前端总结35.JS封装事件库
  • 原文地址:https://blog.csdn.net/Aluxian_/article/details/132969459