Canonical的 MAAS(Metal as a Service)是一款用于服务器自动发现、配置的远程操作系统安装、部署工具,可以将物理服务器转换为类似于虛拟机资源,实现物理物理服务器的自助服务,远程访问。 MAAS目前支持 Ubuntu、CentOS、RHEL、Windows、ESXI 和自定义镜像的部署。当在数据中心管理成百上千的物理服务器,比如云、HPC 场景时,使用MAAS 是减少运维成本的最佳选择之一。
在本文的测试 中,展示了如何通过Packer 为 MAAS 构建 openEuler 映像并验证MAAS部署,可使用的临时解决方法以及如MAAS直接支持 openEuler时,cloud-init 和 curtin 可能的加强或修复方法。
测试环境要求
Packer创建openEuler MAAS 映像:
-
Ubuntu 18.04+,能够运行 KVM 虚拟机
-
Packer 1.8.0+
-
外网访问以下载 openEuler ISO 和 git 访问 packer-maas
MAAS验证部署openEuler映像:
-
MAAS 3.0+
-
MAAS管理的物理服务器或KVM host
此测试可在Ubuntu Desktop 20.04 的笔记本电脑上进行,其中 MAAS 3.1可安装在 lxd 虚拟机中,主机自身被添加为 KVM host。主机或虚拟机均可用于Packer创建 openEuler 镜像,但需要 20G 可用磁盘空间。在单机上使用MAAS的详细方法可参考附件的文档链接。
Packer构建 openEuler MAAS映像
MAAS 仅在可用于节点的OS映像时才有用。您可以直接从 MAAS GUI 选择和同步Ubuntu、Centos映像。您还可以自己构建 RHEL、Windows、ESXi maas 映像然后上传到 MAAS。有两种方法可以构建要部署到 MAAS 机器的自定义映像:MAAS Image Builder 和 packer。在这个 测试 中,我们使用了packer 借用了rhel8模板。
安装packer:
curl -fsSL https://apt.releases.hashicorp.com/gpg | sudo apt-key add -
sudo apt-add-repository "deb [arch=amd64] https://apt.releases.hashicorp.com $(lsb_release -cs) main"
sudo apt-get update && sudo apt-get install packer
安装依赖包
sudo apt install qemu-system qemu-utils ovmf cloud-image-utils make
下载packer-maas模板:
git clone https://github.com/canonical/packer-maas.git
因为packer-maas目前没有openeuler 模板,可以使用rhel8模板但需适配。如下直接下载已测试过的适用于openEuler 20.03/22.03 LTS的模板。如想直接查看内容,可浏览器访问。
https://git.launchpad.net/~zhanglei-mao/+git/packer-maas-openeuler/tree/
cd packer-maas
git clone https:// git.launchpad.net/~zhanglei-mao/+git/packer-maas-openeuler openeuler
使用浏览器访问 https://repo.openeuler.org/下载openEuler ISO并上传到packer机器。
make ISO=/PATH/TO/openeuler-22.03-LTS-x86_64-dvd.iso
例如:
ubuntu@vm-k8s-w2:~/packer-maas/openeuler$ ls /home/ubuntu/*.iso -lhs
3.4G -rw-rw-r-- 1 ubuntu ubuntu 3.4G Jun 29 07:20 /home/ubuntu/openEuler-22.03-LTS-x86_64-dvd.iso
4.2G -rw-r--r-- 1 ubuntu ubuntu 4.2G Jun 29 01:24 /home/ubuntu/openEuler-20.03-LTS-SP1-x86_64-dvd.iso
ubuntu@vm-k8s-w2:~/packer-maas/ openeuler$ make ISO=/home/ubuntu/openEuler-22.03-LTS-x86_64-dvd.iso
...
==> qemu: Wai

本文介绍了如何使用Canonical的MAAS工具为数据中心构建和部署openEuler操作系统映像。通过Packer和自定义模板,实现了openEuler在MAAS上的自动化部署,并详细阐述了遇到的问题及临时解决方案。测试环境包括Ubuntu 18.04、Packer 1.8.0和MAAS 3.0+。文章还提供了部署openEuler的步骤,包括上传映像到MAAS、启动部署和问题调试。
最低0.47元/天 解锁文章
1180

被折叠的 条评论
为什么被折叠?



