24年 第三部分(题目整理)含边缘计算
公有云
一.公有云服务搭建
私有网络管理
在公有云中完成虚拟私有云的创建
具体要求如下:
(1)在北京四区域进行创建操作;
(2)创建一个名为intnetX的内部网络:IP地址为172.16.0.0/16;
(3)创建子网名称为intnetX-server:IP地址为172.16.1.0/24;
(4)创建子网名称为intnetX-mysql:IP地址为172.16.2.0/24;
云实例管理
登录华为云平台,创建两台云实例。
具体要求如下:
(1)计费模式:按需计费;
(2)地域:北京四;
(3)CPU架构:x86计算;
(4)规格:c7.xlarge.2;
(5)镜像:CentOS 7.5 64位;
(6)系统盘:高IO 50G硬盘;
(7)公网带宽:按带宽计费,5Mbps;
(8)实例名称:ChinaSkill-node-1、ChinaSkill-node-2;
(9)登录方式:使用密码登录,密码自定义。
安全组管理
根据要求,创建一个安全组。
具体要求如下:
(1)名称:intnetX-security;
(2)允许策略:只放行源地址为172.16.1.0/24访问27017端口;
(3)允许策略:只放行源地址为172.16.1.0/24使用ping命令访问;
(4)关联实例:将intnetX-security安全组关联至所创建的数据库中;
NAT网关
根据要求创建一个公网NAT网关。具体配置如下:
(1)名称为:kcloud-nat;
(2)虚拟私有云:intnetX;
(3)子网:intnetX-server;
(4)规则:内部子网地址访问外网;
(5)设置Chinaskill-node-1云服务器3000端口转换为外部3000服务端口。
MongoDB数据库管理
使用intnetX-mysql网络创建三台云服务器chinaskill-sql-1、chinaskill-sql-2和chinaskill-sql-3(系统使用 CentOS7.9),使用提供的压缩文件mongodb-repo.tar.gz中的软件包源,在这三台云服务器上部署 MongoDB数据库服务。
MongoDB主从数据库
在chinaskill-sql-1、chinaskill-sql-2和chinaskill-sql-3云服务器中配置MongoDB一主二从数据库+副本集 操作, chinaskill-sql-1节点为主节点,其余节点为从节点,配置MongoDB集群名称为cloud。
云主机备份
创建一个云服务器备份存储库名为server_backup,容量为100G。将ChinaSkill-node-1云服务器制作镜像文件chinaskill-image。
负载均衡器
根据要求创建一个负载均衡器chinaskill-elb。
将ChinaSkill-node-1和ChinaSkill-node-2加入负载均衡的后端。设置一个可用的公网服务IP,服务端口 为3000。配置监听器,监听3000端口。对浮动公共IP进行Web访问测试。
弹性伸缩管理
根据要求新建一个弹性伸缩启动配置。
具体要求如下:
(1)启动配置名称: template-exam;
(2)计费模式:按量计费;
(3)地域:上海一;
(4)镜像: chinaskill-image;
(5)登录方式:使用密码登录,密码自定义。
创建一个伸缩组,具体要求如下:
(1)名称: as-exam;
(2)最小伸缩数: 1;起始实例数: 1;最大伸缩数: 5;
(3)启动配置: template-exam;
(4)使用负载均衡: chinaskill-elb;
(5)移出策略:移出最旧的实例。
为伸缩组as-exam新建告警触发策略,具体要求如下:
(1)如果实例的内存利用率在5分钟内的最大值小于40%,且连续发生3次。则实例数减少1台。冷却60 秒;
(2)如果实例的内存利用率在5分钟内的最大值大于80%,且连续发生3次。则实例数增加1台。冷却60 秒;
(3)如果实例的CPU利用率在5分钟内的最大值小于40%,且连续发生3次。则实例数减少1台。冷却60 秒;
(4)如果实例的CPU利用率在5分钟内的平均值大于等于80%,且连续发生3次。则实例数增加1台。冷却60秒。
公有云服务运维
云容器引擎
在公有云上,按照要求创建一个x86架构的容器云集群(无需选择可观测性插件)。
具体要求如下:
(1)集群名称:kcloud;
(2)集群版本:v1.27;
(3)地域:北京四;
(4)集群管理规模:50节点;
(5)节点使用子网:intnetX-server;
(6)节点预留容器IP上限:64;
(7)容器网段:10.10.0.0/16。
创建一个集群节点,节点配置信息要求如下:
(1)节点名称:kcloud-server;
(2)节点规格:c6s.xlarge.2
(3)节点:EulerOS 2.9
(4)使用docker容器引擎
使用kubectl操作集群
在kcloud集群中安装kubectl命令,使用kubectl命令管理kcloud集群。
生命周期管理-配置Pod生命周期
登录kcloud集群节点,在default命名空间下创建一个名Pod,并进行Pod生命周期管理。
登录kcloud集群节点,在default命名空间下使用 nginx:latest 镜像创建一个名为lifecycle-demo的Pod,要求容器创建成功后执行命令"echo Hello from the postStart handler > /usr/share/message”,容器终止前执行命令“nginx -s quit; while killall -0 nginx; do sleep 1;done"。
定时任务管理一创建定时任务
在kcloud集群节点/root目录下编写yaml文件date.yaml完成定时管理任务。具体要求如下:
(1)CronJob名称:date;
(2)命名空间:default;
(3)基于时间的调度规则:每分钟启动一次;
(4)容器名称:hello;镜像:busybox。
云容器引擎
云容器管理
kubectl操作
helm配置
wordpress 应用部署
根据提供的 chart 包 wordpress-13.0.23.tgz 部署 wordpress 服务,根据 chart 包中内容创建 wordpress 所需要的 pv,并修改其访问模式为 NodePort。使⽤修改后的 chart 包 创建 wordpress 服务。
chartmuseum 仓库部署
在 k8s 集群中创建 chartmuseum 命名空间,编写 yaml ⽂件在chartmuseum 命名空间中使用chartmuseum:latest 镜像创建本地私有 chart 仓库,设置其仓库存储目录为宿主机的 /data/charts ⽬录。编写 service.yaml ⽂件,为 chart 私有仓库创建 Service 访问策略,定义其为ClusterIP 访问模式。编写完成后启动 chartmuseum 服务。
公有云运维开发
华为云开发环境搭建
创建一台云主机,并登录此云服务器,基于云服务器Python3.6.8运行环境,安装SDK依赖库。
通过华为云控制台,选择北京四区域,创建一台 x86 架构,“按需计费”的2核,4G,系统盘50G的云实例,实例名为chinaskill,选择镜像为CentOS 7.9 64bit(40GB),分配独立的公网IP,带宽选择按使用流量计费5M。登录此云服务器,在云服务器Python3.6.8环境上,安装华为云最新版本SDK的依赖库,包括“弹性云服务”、“虚拟私有云”、“镜像服务”、“容器云引擎”、“云数据库”的python库。
密钥对管理
编写Python代码,实现密钥对的创建。
在云服务器的/root/huawei/目录下编写create_keypair.py文件,使用SDK编写 Python代码,创建华为云的秘钥对,具体要求为:
1.秘钥对名称:chinaskills_keypair;
2.如果秘钥对已经存在,代码中需要先删除;
3.输出此秘钥对详细信息。
云主机管理
调用SDK云主机管理的方法,实现云主机的的增删查改。
使用已建好的运维开发环境,在/root/huawei目录下创建ecs_manager.py脚本,完成ECS云主机管理,ecs_manager.py程序支持命令行参数执行。
提示说明:华为云主机支持安装所需Python库。提交前答案前,需安装所开发程序所依赖的Python库。
1.程序支持根据命令行参数,创建1个云主机。
位置参数“create”,表示创建;
参数“-i 或--input”,格式为json格式文本的云主机的名称、镜像名称2个信息。
其他参数同上述开发环境云主机一致。
创建待成功,再返回查询该云主机的信息,结果以json格式输出到控制台。参考执行实例如下:
python3 /root/huawei/ecs_manager.py create --input '{ "name": " chinaskill001", " imagename": "imageid"} '
1.支持查询给定具体名称的ECS云主机查询。
位置参数“get”,表示查询ECS;参数“-n 或 --name”支持指定名称ECS查询,类型为string。参数“-o 或 --output”支持查询该ECS信息输出到文件,格式为json格式。
1.程序支持查询目前区域账号下所有的ECS云主机。位置参数“getall”,表示查询所有ECS云主机;参数“-o 或--output”支持输出到文件,格式为yaml格式。
2.支持删除指定名称的云主机。位置参数“delete”,表示删除一个ECS云主机;返回response,通过控制台输出。参数“-n或--name”支持指定名称查询,类型为string。
虚拟私有云VPC管理
调用apisdk安全组的接口,实现VPC的增删查改。
在云服务器的/root/huawei目录下编写create_vpc.py文件。使用SDK编写Python代码,创建华为云的虚 拟私有云,具体要求为:
(1)虚拟私有云名称: chinaskills_vpc;
(2)如果虚拟私有云已经存在,代码中需要先删除;
(3)输出此虚拟私有云的详细信息(状态要求为OK)。
边缘计算
KubeEdge cloudcore 云端模块部署与配置
在本地 http 文件服务器中下载 k8s-allinone-v1.22.1.qcow2 镜像(该镜像启动后内 置一个完整的 kubernetes 服务)并完成下列操作:
(1)上传该镜像至公有云 OBS 存储桶中;
(2)使用该镜像文件创建为私有镜像;
(3)使用该镜像创建一台云主机,该云主机作为 KubeEdge 的云端节点。
云主机申请完成之后,在提供的 OBS 访问域名中,下载软件包 kubernetes_kubeedge.tar 到云端节点并部署 KubeEdge1.11 边缘计算系统,在云端节点部署 KubeEdge cloudcore 云端模块、启动 cloudcore 服务并配置该服务可被 systemd 管理。
KubeEdge edgecore 边端模块部署与配置
在本地 OpenStack 环境中申请两台 CentOS7.9 虚拟机做为 KubeEdge 的边缘端节点。主 机名分别为 edge-node1、edge-node2。在 http 文件服务器中下载 kubernetes_kubeedge.tar 软件包,使用该软件包在该虚拟机部署 KubeEdge edgecore 边 端模块,并启动 edgecore 服务。加入成功之后,启用 metrics 监控服务。