知识卡片

cloud-init标准化实例首次启动配置

专业/工作 · 323

内容

云环境里每个新建的虚拟机实例都需要一次性的初始化工作(装软件、建用户、设主机名),如果靠人工登录逐台配置,规模稍大就无法维护。解决办法是把这段初始化脚本或声明式配置作为”用户数据”和镜像一起传给虚拟机,虚拟机启动时由内置的代理程序读取这份数据并在系统就绪后自动执行,之后不再重复运行。这套机制把”镜像本身”和”这次要做的定制”分离开——同一个基础镜像可以在不同实例上执行完全不同的初始化逻辑,不需要为每种定制场景都单独做一个镜像。发散:这是不可变基础设施思路的早期雏形——与其维护无数个预装好特定软件的镜像变体,不如维护一个干净的基础镜像加一份可插拔的启动脚本,两者独立演化。

参考来源

《OpenStack云计算实战手册 第3版》第9章《深入OpenStack》