当前位置:   article > 正文

2022 年全国职业院校技能大赛高职组云计算赛项试卷-容器云-1_黑龙江职业院校技能大赛云计算赛黑龙江真题评分模板

黑龙江职业院校技能大赛云计算赛黑龙江真题评分模板

2022 年全国职业院校技能大赛高职组云计算赛项试卷

........

【任务 1 】容器云平台搭建[5 分]

【适用平台】私有云

【题目 1】平台部署--部署容器云平台[1.5 分]

登录 OpenStack 私有云平台,使用 CentOS7.9 镜像创建两台云主机,使用 kubeeasy 工具完成 Kubernetes 1.22.1 集群的搭建。然后使用 nginx 镜像在 default 命名空间下创建一个名为exam 的 Pod,并为该 Pod 设置环境变量 exam,其值为 2022。完成后提交 master 节点的用户名、密码和 IP 到答题框。

1.Kubernetes 集群部署成功得 1 分;

2.Pod 创建成功且环境变量设置正确得 0.5 分。

搭建kubernetes集群:

前提条件设置好主机名,域名解析,这里就不写出来了。

  1. mount -o loop chinaskills_cloud_paas_v2.0.1.iso /mnt/
  2. cp -rfv /mnt/* /opt/
  3. umount /mnt/

安装kubeeasy

kubeeasy为Kubernetes集群专业部署工具,极大的简化了部署流程。其特性如下:

全自动化安装流程;

支持DNS识别集群;

支持自我修复:一切都在自动扩缩组中运行;

支持多种操作系统(如 Debian、Ubuntu 16.04、CentOS7、RHEL等);

支持高可用。

在master节点安装kubeeasy工具:

mv /opt/kubeeasy /usr/bin/kubeeasy

1.2 安装依赖包

在master节点执行命令:

  1. kubeeasy install depend \
  2. --host 10.24.2.10,10.24.2.11 \  #自己的两台主机IP地址
  3. --user root \
  4. --password Abc@1234 \
  5. --offline-file /opt/dependencies/base-rpms.tar.gz

1.3 配置SSH免密钥

安装Kubernetes集群的时候,需要配置Kubernetes集群各节点间的免密登录,方便传输文件和通讯。

在master节点执行以下命令完成集群所有节点间的免密钥配置:

  1. kubeeasy create ssh-keygen \
  2. --master 10.24.2.10 \ #master节点的IP地址
  3. --worker 10.24.2.11 \ #node节点的IP地址
  4. --user root --password Abc@1234 #自己的虚拟机密码

在master节点执行以下命令部署Kubernetes集群:

  1. kubeeasy install kubernetes \
  2. --master 10.24.2.10 \ #master节点的IP地址
  3. --worker 10.24.2.11 \ #node节点的IP地址
  4. --user root \
  5. --password Abc@1234 \
  6. --version 1.22.1 \
  7. --offline-file /opt/kubernetes.tar.gz

安装完成后,kubernetes集群就搭建好了。

创建一个名为 exam-pod.yaml 的文件,然后将以下内容复制到该文件中:

  1. vi exam-pod.yaml
  2. #添加以下内容
  3. apiVersion: v1
  4. kind: Pod
  5. metadata:
  6.   name: exam
  7.   namespace: default
  8. spec:
  9.   containers:
  10.   - name: nginx
  11.     image: nginx
  12.     env:
  13.     - name: exam
  14.       value: "2022"

使用 kubectl 创建 Pod:

kubectl apply -f exam-pod.yaml

【题目 2】平台部署--部署 Istio 服务网格[0.5 分]

在 Kubernetes 集群上完成 Istio 服务网格环境的安装,然后新建命名空间 exam,为该命

名空间开启自动注入 Sidecar。完成后提交 master 节点的用户名、密码和 IP 到答题框。

1.Istio 所有组件运行成功得 0.3 分;

2.命名空间 exam 自动注入成功得 0.2 分。

解压 Istio 压缩包:

  1. cd /opt/
  2. tar -xzf istio.tar.gz
  3. cd istio/

将 Istio 的 bin 目录添加到您的 PATH 环境变量中:

export PATH=$PWD/bin:$PATH

使用 IstioOperator 的默认配置安装 Istio:

istioctl install --set profile=demo -y

验证 Istio 是否已成功安装:

kubectl get pods -n istio-system

创建 exam 命名空间:

kubectl create namespace exam

为 exam 命名空间启用自动注入 Sidecar:

kubectl label namespace exam istio-injection=enabled

现在,当你在 exam 命名空间中创建新的 Pod 时,Istio 将自动为每个 Pod 注入 Sidecar 代理。

【题目 3】平台部署--部署 KubeVirt 虚拟化[1 分]

在 Kubernetes 集群上完成 KubeVirt 虚拟化环境的安装。

完成后提交 master 节点的用户名、密码和 IP 到答题框。

1.KubeVirt 所有组件运行成功得 1 分。

  1. tar -xzvf kubevirt.tar.gz
  2. cd kubevirt/
  3. kubectl create -f kubevirt-operator.yaml
  4. kubectl create -f kubevirt-cr.yaml
  5. kubectl get pods -n kubevirt 

当看到全部的pod都是Running就部署成功了。

【题目 4】平台部署--部署 Harbor 仓库及 Helm 包管理工具[1 分]

在 master 节点上完成 Harbor 镜像仓库及 Helm 包管理工具的部署。然后使用 nginx 镜像自定义一个 Chart,Deployment 名称为 nginx,副本数为 1,然后将该 Chart 部署到 default命名空间下,Release 名称为 web。

完成后提交 master 节点的用户名、密码和 IP 到答题框。

1.Harbor 仓库部署成功得 0.5 分;

2.Helm 工具安装成功得 0.2 分;

3.Chart 包部署成功得 0.3 分。

安装docker-compose

在master节点安装docker-conpose:

curl -L "https://github.com/docker/compose/releases/download/1.29.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose  

给docker-compose文件添加可执行权限

chmod +x /usr/local/bin/docker-compose

添加软连接到/usr/bin/docker-compose

ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

验证是否安装成功:

docker-compose version

部署Harbor:

解压安装包:

  1. tar -xzvf harbor-offline.tar.gz
  2. cd harbor

修改Harbor配置信息:

  1. vi harbor.yml
  2. hostname: 10.18.4.10   # 只需要修改为本机IP或域名
  3. harbor_admin_password: 12345   #密码也可以修改成自己想要的

启动Harbor:

./prepare  &&  ./install.sh

在安装脚本执行成功后,启动Harbor:

docker-compose up -d

部署helm工具:

tar -zxvf helm-v3.7.1-linux-amd64.tar.gz

这将在当前目录下创建一个名为 linux-amd64 的文件夹。

进入解压缩后的目录:

cd linux-amd64

在这个目录下,您会找到一个名为 helm 的可执行文件。

将 helm 可执行文件移动到 /usr/local/bin/ 目录,这样您就可以在系统的任何位置运行 Helm 命令:

sudo mv helm /usr/local/bin/

确认 Helm 安装成功:

helm version

如果安装成功,您将看到 Helm 的版本信息。

使用 Helm 创建一个新的 Chart:

helm create nginx-chart

这将创建一个名为 nginx-chart 的目录,其中包含一个默认的 Helm Chart 结构。

cd nginx-chart

修改 Chart.yaml 文件,添加或更新以下内容:

  1. vi Chart.yaml
  2. apiVersion: v2
  3. name: nginx
  4. description: A Helm chart for Kubernetes
  5. type: application
  6. version: 0.1.0
  7. appVersion: 1.21

修改 values.yaml 文件,设置副本数为 1:

replicaCount: 1   #已经修改,可以不修改

修改 templates/deployment.yaml 文件,将 Deployment 名称更改为 nginx:

  1. apiVersion: apps/v1
  2. kind: Deployment
  3. metadata:
  4.   name: nginx   #改这里
  5.   labels:
  6. {{- include "nginx.labels" . | nindent 4 }}
  7. ........

使用 Helm 部署您的自定义 Nginx Chart:

在这一步请切换目录到nginx-chart的上一级目录

helm install web ./nginx-chart --namespace default

这将在 default 命名空间下部署名为 web 的 Helm release。

完成上述步骤后,您应该已经成功地将自定义 Nginx Chart 部署到 Kubernetes 集群中。您可以使用以下命令来检查 Pod 的状态:

kubectl get pods --namespace default

【题目 5 】集群管理-- 备份 ETCD 数据[1 分]

Kubernetes 使用 ETCD 来存储集群的实时运行数据,为防止服务器宕机导致 Kubernetes集群数据丢失,请将 Kubernetes 集群数据备份到/root/etcd.db 中。

完成后提交 master 节点的 IP 地址、用户名和密码到答题框。

1.etcdctl 工具安装成功得 0.2 分;

2.ETCD 数据备份成功得 0.8 分。

解压etc压缩包:

tar xvzf etcd-v3.4.25-linux-amd64.tar.gz

将 etcdctl 二进制文件复制到一个系统路径中:

 cp   etcd-v3.4.25-linux-amd64/etcdctl  /usr/local/bin/

设置可执行权限:

chmod +x /usr/local/bin/etcdctl

设置 etcdctl 的环境变量。您需要从 etcd 的配置中获取以下参数:

ETCDCTL_API:设置为 3(etcd API 的版本)。

ETCDCTL_ENDPOINTS:etcd 的端点列表(使用逗号分隔)。

ETCDCTL_CACERT:etcd 服务器的 CA 证书路径。

ETCDCTL_CERT:etcd 服务器的客户端证书路径。

ETCDCTL_KEY:etcd 服务器的客户端密钥路径。

可以从/etc/kubernetes/manifests/etcd.yaml中查看相应的内容。例如:

  1. export ETCDCTL_API=3
  2. export ETCDCTL_ENDPOINTS=https://127.0.0.1:2379
  3. export ETCDCTL_CACERT=/etc/kubernetes/pki/etcd/ca.crt
  4. export ETCDCTL_CERT=/etc/kubernetes/pki/etcd/server.crt
  5. export ETCDCTL_KEY=/etc/kubernetes/pki/etcd/server.key

请确保将上述示例中的路径替换为实际路径。

使用 etcdctl 工具备份 etcd 数据:

etcdctl snapshot save /root/etcd.db

这将会将 etcd 数据备份到 /root/etcd.db 文件中。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AI编程探险家/article/detail/60103
推荐阅读
相关标签
  

闽ICP备14008679号