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

本文涉及的产品
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
RDS AI 助手,专业版
简介: 全国职业技能大赛云计算--高职组赛题卷①(容器云)

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


说明:本任务提供有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。(1分)

2.在cicd-node节点安装Registry私有仓库,导入/opt/containerk8s/docker/images目录下所有镜像,并推送到Registry私有仓库。

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应用系统架构图如下:


5ca29b8e18264cdebfdb5244436c6ecc.png


70a775d4b47446f3af099f4c2d344f1a.png


请将mysql数据库组件、redis组件和Zookeeper组件按照要求进行容器化,其他组件已经实现容器化,直接从仓库中拉取镜像运行容器即可(Chinaskillmall-Kafka:v1.1、Chinaskillmall-nginx:v1.1、Chinaskillmall-jar: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制作Redis镜像,生成镜像名为Chinaskillmall-Redis:v1.1,并推送到私有仓库。具体要求如下:

(1)基于centos基础镜像;

(2)指定作者为Chinaskill;

(3)安装Redis服务,暴露6379端口;

(4)设置服务自启动。

3.编写Dockerfile制作Zookeeper镜像,生成镜像名为Chinaskillmall-Zookeeper:v1.1,并推送到私有仓库。具体要求如下:

(1)基于centos基础镜像;

(2)指定作者为Chinaskill;

(3)安装Zookeeper服务,暴露2181端口;

(4)设置服务自启动。

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,将镜像推送到registry私有仓库。

5.在master节点/root目录下克隆ChinaskillProject项目,修改项目中的index.html文件(/root/ChinaskillProject/templates/index.html)中的“Hello,word!”修改为“Hello,ChinaSkill!”,提交并推送(push)代码。


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

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

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

相关实践学习
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。     相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
相关文章
|
应用服务中间件 Linux 网络安全
Linux 安装 Nginx 并配置为系统服务(超详细)
Linux 安装 Nginx 并配置为系统服务(超详细)
|
SQL 存储 关系型数据库
解析MySQL Binlog:从零开始的入门指南【binlog入门指南】
解析MySQL Binlog:从零开始的入门指南【binlog入门指南】
14029 0
|
Java 应用服务中间件 Linux
【Docker容器化技术】docker安装与部署、常用命令、容器数据卷、应用部署实战、Dockerfile、服务编排docker-compose、私有仓库
本文主要讲解了Docker的安装与部署、常用命令、容器数据卷、应用部署实战、Dockerfile、服务编排docker-compose、私有仓库以及Docker容器虚拟化与传统虚拟机比较。
14240 38
【Docker容器化技术】docker安装与部署、常用命令、容器数据卷、应用部署实战、Dockerfile、服务编排docker-compose、私有仓库
|
安全 网络协议 网络安全
【网络连接】ping不通的常见原因+解决方案,如何在只能访问网关时诊断,并修复IP不通的问题
【网络连接】ping不通的常见原因+解决方案,如何在只能访问网关时诊断,并修复IP不通的问题
28632 0
|
Linux 网络虚拟化 Docker
新手向导:轻松掌握Docker搭建OpenVPN
OpenVPN 是一个开源的VPN软件包,支持多种操作系统和平台。它包含社区版(免费但需具备Linux命令
4775 2
|
运维 Kubernetes jenkins
全国职业技能大赛云计算--高职组赛题卷⑤(容器云)
全国职业技能大赛云计算--高职组赛题卷⑤(容器云)
406 1
|
应用服务中间件 网络安全 nginx
轻松上手Nginx Proxy Manager:安装、配置与实战
Nginx Proxy Manager (NPM) 是一款基于 Nginx 的反向代理管理工具,提供直观的 Web 界面,方便用户配置和管理反向代理、SSL 证书等。本文档介绍了 NPM 的安装步骤,包括 Docker 和 Docker Compose 的安装、Docker Compose 文件的创建与配置、启动服务、访问 Web 管理界面、基本使用方法以及如何申请和配置 SSL 证书,帮助用户快速上手 NPM。
11868 1
|
数据可视化 关系型数据库 MySQL
【MySQL】MySQL8.0 创建用户及授权 - 看这篇就足够了
本文介绍了在MySQL 8.0+版本中创建和管理用户的详细步骤,包括通过命令行进入MySQL、创建数据库、用户及授权等操作,并提供了具体命令示例。适合初学者参考学习,帮助实现系统的权限管理和安全控制。
8486 3
【MySQL】MySQL8.0 创建用户及授权 - 看这篇就足够了
|
NoSQL 关系型数据库 数据库
JumpServer的Docker部署实战案例
JumpServer的Docker部署实战案例,详细介绍了JumpServer的概述、环境准备、基于Docker的快速部署步骤,以及如何访问JumpServer的WebUI。
2090 1