Ubuntu CloudInit 文档项目教程
项目介绍
Ubuntu CloudInit 文档项目是一个为 Proxmox 设置 Ubuntu 虚拟机模板的简短指南,使用 CloudInit 实现脚本化配置。CloudInit 是 Ubuntu 包,负责云实例的早期初始化,自 Ubuntu 18.04 起安装在官方 Ubuntu 服务器镜像中。该项目假设您希望通过 UEFI 而不是 BIOS 启动虚拟机,Proxmox 节点的主要存储称为 local-zfs
,并使用 Ubuntu 24.04。
项目快速启动
下载云镜像
首先,下载 Ubuntu 的云镜像并调整其大小:
wget -q https://cloud-images.ubuntu.com/noble/current/noble-server-cloudimg-amd64.img
qemu-img resize noble-server-cloudimg-amd64.img 32G
创建虚拟机
接下来,创建一个基本的虚拟机:
sudo qm create 8001 --name "ubuntu-2404-cloudinit-template" --ostype l26 \
--memory 1024 \
--agent 1 \
--bios ovmf --machine q35
应用案例和最佳实践
设置默认区域
CloudInit 可以配置默认区域,确保所有虚拟机具有一致的区域设置:
#cloud-config
locale: en_US.UTF-8
生成 SSH 密钥
自动生成 SSH 密钥并添加到用户的 ~/.ssh/authorized_keys
中,以便用户可以登录:
#cloud-config
ssh_pwauth: true
users:
- name: ubuntu
ssh-authorized-keys:
- ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC...
典型生态项目
Proxmox
Proxmox 是一个开源的虚拟化管理平台,支持 KVM 和容器虚拟化。它与 CloudInit 集成,使得创建和管理云实例变得简单。
Ubuntu Cloud Images
Ubuntu Cloud Images 是专为云环境设计的 Ubuntu 镜像,预装了 CloudInit,适用于各种云提供商。
通过这些模块,您可以快速了解和使用 Ubuntu CloudInit 文档项目,并将其应用于实际的虚拟化环境中。