项目需求:某企业根据自身业务需求,实施数字化转型,规划和建设数字化平台建设, 平台聚焦“DevOps 建运一体”和“数据驱动产品开发”,拟采用开源 OpenStack 搭建企业内部私有云平台,开源 Kubernetes 搭建云原生服务平台,选择国内主流公有云平台服务, 基于数字化平台底座,面向业务开发云应用产品。
拟将该任务交给工程师A 与B,分工协助完成云平台服务部署、云应用开发、云系统运维等任务,系统架构如下:
系统架构如图1 所示,IP 地址规划如表1 所示。
说明:
1.竞赛使用集群模式进行,比赛时给每个参赛队提供独立的租户与用户,各用户的资源配额相同,选手通过用户名与密码登录竞赛用私有云平台,创建云主机进行相应答题; 同组 2 名选手的账号密码一样。
2.表中的x 为赛位号;在进行OpenStack 搭建时的第二块网卡地址根据题意自行创建;
3.根据图表给出的信息,检查硬件连线及网络设备配置,确保网络连接正常;
4.考试所需要的账号资源、竞赛资源包与附件均会在考位信息表与设备确认单中给出;
5.竞赛过程中,为确保服务器的安全,请自行修改服务器密码;在考试系统提交信息时,请确认自己的 IP 地址,用户名和密码。
【适用平台】私有云
1.控制节点主机名为 controller,设置计算节点主机名为 compute; 2.hosts 文件将 IP 地址映射为主机名。
使用提供的用户名密码,登录提供的 OpenStack 私有云平台,在当前租户下,使用CentOS7.9 镜像,创建两台云主机,云主机类型使用 4vCPU/12G/100G_50G 类型。当前租户下默认存在一张网卡,自行创建第二张网卡并连接至 controller 和 compute 节点(第二张网卡的网段为 10.10.X.0/24,X 为工位号,不需要创建路由)。自行检查安全组策略,以确保网络正常通信与 ssh 连接,然后按以下要求配置服务器:
(1)设置控制节点主机名为 controller,设置计算节点主机名为 compute;
(2)修改 hosts 文件将 IP 地址映射为主机名;
使用提供的 http 服务地址,分别设置 controller 节点和 compute 节点的 yum 源文件http.repo。
使用提供的 http 服务地址,在 http 服务下,存在 centos7.9 和 iaas 的网络 yum 源, 使用该 http 源作为安装 iaas 平台的网络源。分别设置 controller 节点和 compute 节点的yum 源文件 http.repo。完成后提交控制节点的用户名、密码和 IP 地址到答题框。
配置 controller 节点可以无秘钥访问 compute 节点。
配置 controller 节点可以无秘钥访问 compute 节点,配置完成后,尝试 ssh 连接compute 节点的 hostname 进行测试。完成后提交 controller 节点的用户名、密码和 IP 地址到答题框。
在控制节点和计算节点上分别安装 openstack-iaas 软件包。
在控制节点和计算节点上分别安装 openstack-iaas 软件包,根据表 2 配置两个节点脚本文件中的基本变量(配置脚本文件为/etc/openstack/openrc.sh)。
完成后提交控制节点的用户名、密码和 IP 地址到答题框。
在控制节点上使用安装 Mariadb、RabbitMQ 等服务。并进行相关操作。
在 controller 节点上使用 iaas-install-mysql.sh 脚本安装 Mariadb、Memcached、RabbitMQ 等服务。安装服务完毕后,修改/etc/my.cnf 文件,完成下列要求:
完成后提交控制节点的用户名、密码和 IP 地址到答题框。
在控制节点上安装 Keystone 服务并创建用户。
在 controller 节点上使用 iaas-install-keystone.sh 脚本安装 Keystone 服务。
然后创建 OpenStack 域 210Demo,其中包含 Engineering 与 Production 项目,在域210Demo 中创建组 Devops,其中需包含以下用户:
完成后提交控制节点的用户名、密码和 IP 地址到答题框。
(创建Engineering和Production项目并添加到210Demo域中)
(创建Devops组并添加到210Demo域中)
(创建Robert用户,密码设置为000000,并添加到210Demo域中和Engineering项目中,并添加email地址)
(将用户Robert分配为项目Engineering的成员(member)和管理员(admin))
(创建George用户,密码设置为000000,并添加到210Demo域中和Engineering项目中,并添加email地址)
(将用户George分配为项目Engineering的成员(member))
(创建William用户,密码设置为000000,并添加到210Demo域中和Production项目中,并添加email地址)
(将用户William分配为项目Production的成员(member)和管理员(admin))
(创建John用户,密码设置为000000,并添加到210Demo域中和Production项目中,并添加email地址)
(将用户John分配为项目Production的成员(member)和管理员(admin))
在控制节点上安装 Glance 服务。上传镜像至平台,并设置镜像启动的要求参数。
在 controller 节点上使用 iaas-install-glance.sh 脚本安装 glance 服务。然后使用提供的 coreos_production_pxe.vmlinuz 镜像(该镜像为 Ironic Deploy 镜像,是一个AWS 内核格式的镜像,在 OpenStack Ironic 裸金属服务时需要用到)上传到 OpenStack 平台中,命名为 deploy-vmlinuz。完成后提交控制节点的用户名、密码和 IP 地址到答题框。
比赛原环境包都有,欢迎私信留言(不太方便发镜像包 私信我)