0
点赞
收藏
分享

微信扫一扫

用juju自动化部署ubuntu系统(基于MAAS和PXE)

用juju自动化部署ubuntu系统(基于MAAS和PXE)

阅读原文

建议阅读原文,始终查看最新文档版本,获得最佳阅读体验:《用juju自动化部署ubuntu系统(基于MAAS和PXE)》

https://docs.dingtalk.com/i/nodes/1OQX0akWmxjM6rjGuaq7bePw8GlDd3mE

前言

juju非常适合用于部署和管理各种应用,比如OpenStack、mysql、vault、ceph、k8s等等。

但有有时候我们希望仅用juju实现自动化部署ubuntu系统,而不自动安装应用,我们想要自己配置ubuntu系统并安装需要的应用,这也是很容易实现的。

下面是具体操作:

选择合适的model

关于如何部署MAAS和juju controller,可以参考这篇文档:《自动化部署k8s,自动化部署监控、告警、日志组件以及在k8s上用vLLM部署大模型详细图文教程》

部署好juju controller后,会自动创建一个model,名为controller,本文就直接在此model上添加machine(部署系统),当然也可以再新建一个model

用juju自动化部署ubuntu系统(基于MAAS和PXE)_云基础设施

用juju add-machine命令向当前model添加一台新的machine(可以是物理机也可以是虚拟机)

下行的命令会将MAAS中带有ComfyUI这个tag的machine,自动化部署系统,但不会自动安装任何应用

juju add-machine --constraints tags=ComfyUI --base ubuntu@22.04

等待部署完成后,就可以通过juju ssh命令连接到machine进行操作了。

也可以用juju deploy命令实现

下行的命令会将MAAS中带有AIGC这个tag的machine,先自动化安装系统,然后部署postgresql这个charm,如果不指定base,则会根据此charm支持的最高版本的base决定要安装哪个版本的操作系统。本人写作本文时,postgresql支持的最高版本OS是ubuntu server 22.04,如果手动指定--base参数,并设置为ubuntu server 24.04,则命令会报错

juju deploy postgresql --constraints tags=AIGC

故障诊断

machine的状态一直处于rebooting

如下图,我发现用juju add-machine命令或者juju deploy命令实现自动化安装操作系统时,型号为dell Precision 3660的machine一直没法完成部署,一直提示“Deploying: Rebooting”。

查看MAAS日志,发现安装完系统,重启后,进度一直停留在“Node installation - 'cloudinit' searching for network data from DataSourceMAAS”

用juju自动化部署ubuntu系统(基于MAAS和PXE)_PXE引导_02

用juju自动化部署ubuntu系统(基于MAAS和PXE)_服务器管理_03

后来我发现是ubuntu版本的问题,如果指定安装ubuntu server 22.04,则没有问题。

但是很奇怪的是,我用同样的方法给kvm虚拟机自动化部署ubuntu server 24.04系统,则一切正常

下图中的“microk8s-node10”就是用juju add-machine命令部署系统的。

用juju自动化部署ubuntu系统(基于MAAS和PXE)_服务器管理_04

关于作者和DreamAI

https://docs.dingtalk.com/i/nodes/Amq4vjg890AlRbA6Td9ZvlpDJ3kdP0wQ?iframeQuery=utm\_source=portal&utm\_medium=portal\_recent

关注微信公众号“AI发烧友”,获取更多IT开发运维实用工具与技巧,还有很多AI技术文档!

用juju自动化部署ubuntu系统(基于MAAS和PXE)_PXE引导_05

举报

相关推荐

0 条评论