Paket 1 · Fondasi DevOpsModul B — Proxmox VE & Virtualization

Membuat dan Mengelola VM (Virtual Machine) dan LXC (Linux Container)

Praktik membuat VM dari ISO dan LXC dari template di Proxmox, lengkap dengan perintah pengelolaan sehari-hari.

Setelah Proxmox terpasang, langkah berikutnya adalah membuat beban kerja. Proxmox menyediakan dua jenis: VM (KVM) yang menjalankan OS lengkap, dan LXC yang berbagi kernel host sehingga lebih ringan.

VM vs LXC

AspekVM (KVM)LXC
KernelSendiriBerbagi kernel host
IsolasiSangat kuat (hardware virtual)Kuat, tetapi berbagi kernel
Konsumsi resourceLebih besarLebih ringan
Waktu bootPuluhan detikBeberapa detik
Cocok untukOS berbeda, Windows, lab keamananService Linux ringan, web server
Snapshot/backupDidukung penuhDidukung penuh

Rekomendasi pemula

Gunakan LXC untuk belajar Linux, web server, dan deployment ringan. Gunakan VM saat butuh kernel sendiri, Windows, atau isolasi penuh.

1. Membuat VM dari ISO

Lewat GUI

  1. Klik Create VM di kanan atas.
  2. General: isi nama dan VM ID.
  3. OS: pilih ISO instalasi (misalnya Ubuntu Server) dari storage local.
  4. System: biarkan default, aktifkan QEMU Agent bila installer mendukung.
  5. Disks: pilih storage, ukuran disk, dan format.
  6. CPU: jumlah core, tipe host untuk performa terbaik di lab.
  7. Memory: misalnya 2048 MB.
  8. Network: pilih bridge vmbr0 dan model VirtIO.
  9. Klik Finish, lalu buka Console dan install OS seperti biasa.

Lewat CLI

qm create 100 \
  --name ubuntu-web \
  --memory 2048 \
  --cores 2 \
  --net0 virtio,bridge=vmbr0 \
  --scsihw virtio-scsi-pci \
  --scsi0 local-lvm:20 \
  --ide2 local:iso/ubuntu-24.04-live-server-amd64.iso,media=cdrom \
  --boot order=ide2 \
  --ostype l26

qm start 100
qm terminal 100

Jika perlu mengubah urutan boot setelah instalasi:

qm set 100 --boot order=scsi0

2. Membuat LXC dari template

LXC membutuhkan template OS. Unduh template yang tersedia:

pveam update
pveam available --section system | grep debian
pveam download local debian-12-standard_12.7-1_amd64.tar.zst
pveam list local

Buat container:

pct create 200 local:vztmpl/debian-12-standard_12.7-1_amd64.tar.zst \
  --hostname web-ct \
  --memory 1024 \
  --cores 2 \
  --rootfs local-lvm:8 \
  --net0 name=eth0,bridge=vmbr0,ip=dhcp \
  --features nesting=1 \
  --unprivileged 1

pct start 200
pct enter 200

Di dalam container, cek identitas dan konektivitas:

hostname
ip -br a
ping -c 3 1.1.1.1

Unprivileged container

Gunakan --unprivileged 1 untuk keamanan lebih baik. Container privileged hanya bila benar-benar dibutuhkan, misalnya untuk mount perangkat tertentu.

3. Mengelola VM dan LXC sehari-hari

Perintah VM

qm list
qm status 100
qm start 100
qm shutdown 100
qm reboot 100
qm stop 100
qm config 100
qm resize 100 scsi0 +10G

Perintah LXC

pct list
pct status 200
pct start 200
pct shutdown 200
pct reboot 200
pct stop 200
pct config 200
pct enter 200

Konsol dan eksekusi jarak jauh

# Konsol VM (butuh dukungan serial atau noVNC di web)
qm terminal 100

# Eksekusi perintah di dalam LXC tanpa masuk interaktif
pct exec 200 -- apt update
pct exec 200 -- systemctl status ssh

4. Cloud-init untuk VM

Cloud-init memungkinkan pembuatan VM dengan konfigurasi awal otomatis: user, SSH key, hostname, dan IP.

  1. Gunakan image cloud, misalnya Ubuntu cloud image.
  2. Tambahkan drive CloudInit:
    qm set 101 --ide2 local-lvm:cloudinit
  3. Isi user dan SSH key:
    qm set 101 --ciuser deploy --sshkeys ~/.ssh/id_ed25519.pub
  4. Atur IP statis:
    qm set 101 --ipconfig0 ip=192.168.1.61/24,gw=192.168.1.1
  5. Jalankan VM dan cek login SSH.

5. Praktik: menyiapkan server web sederhana

  1. Buat LXC Debian dengan IP statis 192.168.1.60/24.
  2. Masuk ke container dan install Nginx:
    pct enter 200
    apt update && apt install -y nginx
    systemctl enable --now nginx
  3. Cek dari host:
    curl -I http://192.168.1.60
  4. Bila berhasil, Anda sudah punya server web pertama di Proxmox.

Ringkasan

  • VM menjalankan OS lengkap; LXC lebih ringan karena berbagi kernel.
  • VM dibuat dari ISO, LXC dibuat dari template pveam.
  • Kelola keduanya dengan qm dan pct.
  • Cloud-init mempercepat provisioning VM secara otomatis.

Selanjutnya

Pelajari cara melindungi data dan mengatur resource di Snapshot, Backup, Restore, dan Resource Management.

On this page