Proxmox Ubuntu Template med Cloud Init
Proxmox Ubuntu Template med Cloud Init
Med en Ubuntu Cloud-Init Template i Proxmox VE kan du udrulle en ny, fuldt opdateret og færdigkonfigureret Ubuntu-server (med bruger, SSH-nøgler og netværk klar) på få sekunder i stedet for at gennemgå en manuel ISO-installation hver gang.
1. Download Ubuntu 26.04 Cloud Image
Log ind på din Proxmox-node via SSH eller åbn >_ Shell i Proxmox Web UI.
Hent det officielle Ubuntu 26.04 Server Cloud Image direkte ned i Proxmox's ISO-mappe:
wget -P /var/lib/vz/template/iso/ https://cloud-images.ubuntu.com/daily/server/releases/26.04/release/ubuntu-26.04-server-cloudimg-amd64.img
Verificér at image-filen er hentet ned:
ls -lh /var/lib/vz/template/iso/
Valgfrit (Anbefalet): Indbyg qemu-guest-agent i imaget
Ubuntu Cloud Images har ikke altid qemu-guest-agent præinstalleret. Ved at skyde pakken direkte ind i image-filen med virt-customize (fra pakken libguestfs-tools), kan Proxmox automatisk aflæse VM'ens IP-adresse og lukke maskinen pænt ned fra Web UI på alle fremtidige kloner:
apt update && apt install libguestfs-tools -y
virt-customize -a /var/lib/vz/template/iso/ubuntu-26.04-server-cloudimg-amd64.img --install qemu-guest-agent
2. Opret Base VM i Proxmox
Opret en ny virtuel maskine, der skal fungere som grundlag for din template. Det er god praksis at vælge et højt VM-ID (f.eks. 9000), så dine templates ligger samlet for sig selv:
qm create 9000 --name "ubuntu-26.04-cloud-init-template" --memory 2048 --cores 2 --net0 virtio,bridge=vmbr0
Forklaring af argumenter:
9000: Unikt VM-ID for templaten.--name: Navnet på din template i Proxmox UI.--memory 2048: Tildeler 2 GB RAM som standard (kan ændres pr. klon).--cores 2: Tildeler 2 CPU-kerner.--net0 virtio,bridge=vmbr0: Opretter netværkskort med VirtIO-driver koblet på standard-bridgenvmbr0.
3. Importér og Konfigurér Disk Image
Importér det downloadede Ubuntu 26.04 cloud-image ind i dit Proxmox storage-pool (her local-lvm):
qm importdisk 9000 /var/lib/vz/template/iso/ubuntu-26.04-server-cloudimg-amd64.img local-lvm
Tilkobl derefter den importerede disk til VM 9000 som en SCSI-disk, sæt den som boot-disk, og tilføj selve Cloud-Init drevet samt seriel konsol og Guest Agent:
# Tilkobl disken til VirtIO SCSI controlleren
qm set 9000 --scsihw virtio-scsi-pci --scsi0 local-lvm:vm-9000-disk-0
# Sæt VM'en til at boote fra scsi0 disken
qm set 9000 --boot c --bootdisk scsi0
# Tilføj Cloud-Init drev til dynamisk konfiguration
qm set 9000 --ide2 local-lvm:cloudinit
# Tilføj seriel konsol (kræves af Ubuntu Cloud Images til visning under boot)
qm set 9000 --serial0 socket --vga serial0
# Aktivér QEMU Guest Agent i Proxmox VM-indstillingerne
qm set 9000 --agent enabled=1
Udvid diskstørrelsen (Valgfrit)
Standard cloud-imaget fylder kun ca. 2.2 GB. Du kan udvide disken på templaten (f.eks. til 30 GB) allerede nu — Cloud-Init udvider automatisk partitionen til fuld størrelse ved første opstart:
qm resize 9000 scsi0 100G
4. Konfigurér Cloud-Init Parametre
Du kan sætte dine standard-loginoplysninger, SSH-nøgler og netværkskonfiguration direkte på templaten, så alle nye kloner fødes med disse indstillinger:
# Sæt netværk til DHCP som standard
qm set 9000 --ipconfig0 ip=dhcp
# Angiv standard brugernavn og adgangskode
qm set 9000 --ciuser admin
qm set 9000 --cipassword 'DitSikkerhedsPassword'
# Indlæs offentlige SSH-nøgler (genbruger nøglerne fra Proxmox's authorized_keys)
qm set 9000 --sshkeys ~/.ssh/authorized_keys
/root/.ssh/authorized_keys), kan du pege direkte på dén fil med qm set 9000 --sshkeys ~/.ssh/authorized_keys (alle nøgler i filen — én pr. linje — tilføjes). Alternativt kan du i Proxmox Web UI under VM 9000 → Cloud-Init → SSH public key dobbeltklikke og indsætte flere nøgler på hver sin linje.5. Konvertér VM til en Template
Når alle indstillinger er på plads, konverteres VM 9000 til en egentlig Proxmox Template:
qm template 9000
(Herefter kan du frit slette den rå .img-fil i /var/lib/vz/template/iso/ hvis du vil frigøre plads).
6. Sådan bruger du din nye Template (Klon en ny VM)
Du kan nu oprette nye Ubuntu 26.04 servere på få sekunder — enten ved at højreklikke på templaten (9000) i Proxmox Web UI og vælge Clone, eller direkte fra CLI:
# Opret en fuld klon fra template 9000 til nyt VM-ID 201
qm clone 9000 201 --name "ubuntu-docker-01" --full
# (Valgfrit) Sæt fast IPv4 og IPv6 på den nye VM før opstart:
qm set 201 --ipconfig0 ip=192.0.2.15/24,gw=192.0.2.1,ip6=2001:db8:7001:2800:192:0:2:15/64,gw6=2001:db8:7001:2800::1
# Start den nye server
qm start 201
7. Samlet Hurtig-Script (Alt-i-én)
Hvis du vil oprette hele Ubuntu 26.04 Cloud-Init templaten i én samlet arbejdsgang på din Proxmox-node:
# 1. Hent Ubuntu 26.04 Cloud Image og indbyg qemu-guest-agent
wget -P /var/lib/vz/template/iso/ https://cloud-images.ubuntu.com/daily/server/releases/26.04/release/ubuntu-26.04-server-cloudimg-amd64.img
apt update && apt install libguestfs-tools -y
virt-customize -a /var/lib/vz/template/iso/ubuntu-26.04-server-cloudimg-amd64.img --install qemu-guest-agent
# 2. Opret VM 9000 og importér disk
qm create 9000 --name "ubuntu-26.04-cloud-init-template" --memory 2048 --cores 2 --net0 virtio,bridge=vmbr0
qm importdisk 9000 /var/lib/vz/template/iso/ubuntu-26.04-server-cloudimg-amd64.img local-lvm
# 3. Tilkobl disk, Cloud-Init, konsol og Guest Agent
qm set 9000 --scsihw virtio-scsi-pci --scsi0 local-lvm:vm-9000-disk-0
qm set 9000 --boot c --bootdisk scsi0
qm set 9000 --ide2 local-lvm:cloudinit
qm set 9000 --serial0 socket --vga serial0
qm set 9000 --agent enabled=1
qm resize 9000 scsi0 100G
# 4. Sæt DHCP, bruger, SSH-nøgler og omdan til template
qm set 9000 --ipconfig0 ip=dhcp
qm set 9000 --ciuser admin
qm set 9000 --sshkeys ~/.ssh/authorized_keys
qm template 9000