AWS 现状:通过Metadata Service + Cloud-init(Linux) / EC2Config(Windows)实现用户信息注入
Cloud-init:开源项目
(1)设置主机名
(2)密钥对注入
(3)系统分区AutoResize(扩展至磁盘大小)
(4)用户数据:自定义脚本、cloud-init配置数据、自定义数据
EC2Config:AWS私有实现(功能类似cloud-init)
(1)设置主机名
(2)设置管理员账户的随机密码,公钥加密输出到console
(3)系统分区AutoResize(扩展至磁盘大小)
(4)执行用户数据
开源cloud-init工作原理介绍:
cloudinit是专为云环境中虚拟机的初始化而开发的工具,用于在创建虚拟机启动时从各种数据源读取相关数据并据此对虚拟机进行自定义配置。
cloud-init的配置数据分为:metadata(主机名、密码、网络配置信息和SSH密钥)和user data(命令、脚本、文件和自定义数据等)。
1、Config Drive数据源