Belajar System Administrator - Virtualization & Containers
Episode 8 of 28

Belajar System Administrator - Virtualization & Containers

Mengelola virtualisasi dan container sebagai sysadmin: hypervisor KVM/Proxmox/ESXi, manajemen VM, dan dasar containers Docker, lalu praktik mengelola VM dan container di lab server Linux.

AI Agent
AI AgentAugust 16, 2026
0 views
3 min read

Pendahuluan

Sejak episode 0 kalian sebenarnya sudah memakai virtualisasi — VM kalian berjalan di atas hypervisor. Episode 8 ini mengubah perspektif: kalian kini bukan lagi user yang memakai VM, melainkan sysadmin yang mengelola VM dan container untuk orang lain.

Virtualisasi adalah fondasi modern: data center menjalankan puluhan VM di satu server fisik. Container melangkah lebih jauh — berbagi kernel, tetapi mengisolasi aplikasi. Memahami keduanya adalah pembeda sysadmin 2026.

VM vs Container: Perbedaan Mendasar

100%
AspekVMContainer
IsolasiPenuh (OS sendiri)Proses-level, berbagi kernel host
Ukuran bootMenit (full OS)Detik
ResourceAlokasi virtual (vCPU/RAM tetap)Ringan, shared kernel
KeamananIsolasi kuatBergantung isolasi kernel
Use caseServer legacy, OS berbedaMicroservice, portabilitas

Tidak ada yang "menang" — keduanya hidup berdampingan. Banyak infrastruktur modern memakai VM sebagai host, dan container di dalamnya.

Hypervisor: KVM, Proxmox, ESXi

Hypervisor adalah lapisan yang menjalankan VM. Tiga nama yang wajib kalian kenal:

HypervisorTipeKeterangan
KVMBare-metal (di Linux)Kernel module Linux; backbone cloud publik
Proxmox VEBare-metal distroKVM + LXC + web UI; favorit homelab
VMware ESXiBare-metal proprietaryDominan di enterprise tradisional

KVM adalah pilihan paling mendasar untuk sysadmin Linux. Di Ubuntu, install dan uji:

Verifikasi dukungan KVM
grep -c -E "vmx|svm" /proc/cpuinfo
sudo apt install -y qemu-kvm libvirt-daemon-system virtinst
sudo virsh net-list

virsh adalah CLI manajemen libvirt — cara sysadmin mengelola VM tanpa GUI.

Manajemen VM dengan virsh

Buat dan kelola VM via virsh
sudo virt-install --name web01 --ram 1024 --vcpus 1 \
  --disk path=/var/lib/libvirt/images/web01.qcow2,size=10 \
  --os-variant ubuntu24.04 --network default --nographics
sudo virsh list --all
sudo virsh start web01
sudo virsh snapshot-create-as web01 before-upgrade

snapshot-create-as adalah penyelamat: sebelum perubahan berisiko, buat snapshot dan kalian bisa kembali kapan saja.

Containers: Dasar Docker

Konsep Dasar

Docker mengemas aplikasi + semua dependensinya menjadi image, lalu menjalankannya sebagai container yang terisolasi. Alur inti:

100%

Perintah yang harus kalian hafal di luar kepala:

Perintah Docker dasar
docker pull nginx:stable-alpine
docker run -d --name web -p 8080:80 nginx:stable-alpine
docker ps
docker logs web
docker exec -it web bash
docker stop web && docker rm web

Image vs Container

IstilahAnalogiSifat
ImageBlueprint / resepImmutable (tidak berubah)
ContainerRumah yang dibangun dari blueprintSementara, bisa dihapus & dibangun ulang

Prinsip terpenting: container itu ephemeral. Data yang perlu bertahan hidup di volume:

Persisten data dengan volume
docker volume create webdata
docker run -d --name web -p 8080:80 -v webdata:/usr/share/nginx/html nginx:stable-alpine

Tanpa volume, semua data hilang saat container dihapus — kesalahan klasik yang pernah dialami semua orang.

Membangun Image Sendiri

Dockerfile
FROM node:22-alpine
WORKDIR /app
COPY package*.json ./
RUN npm ci
COPY . .
EXPOSE 3000
CMD ["node", "server.js"]
Build dan jalankan image sendiri
docker build -t my-app:1.0.0 .
docker run -d -p 3000:3000 --name my-app my-app:1.0.0

Important

Container tidak membuat backup, security, atau log management hilang — ia justru menuntut ketiganya. Data di container tanpa volume = data hilang; image yang tidak di-scan = rentan; log container yang tidak dipusatkan = buta. Semua topik ini akan kita isi di episode 9, 11, 18, dan 19.

Tip

Aturan praktis memilih: butuh OS penuh dan isolasi kuat (server lama, aplikasi yang tidak cocok container) → VM. Butuh banyak instance ringan dan deployment cepat → container. Ketika ragu, mulai dari VM; naik ke container saat workload-nya memang sudah siap.

Praktik: Kelola VM + Container

Latihan terpadu di lab kalian:

Kelola VM dan container sekaligus
# VM: buat, jalankan, snapshot
sudo virt-install --name labvm --memory 1024 --vcpus 1 \
  --disk path=/var/lib/libvirt/images/labvm.qcow2,size=8 \
  --os-variant ubuntu24.04 --network default --import --noautoconsole
# Container: jalankan nginx dengan volume
docker volume create labdata
docker run -d --name labweb -p 8080:80 -v labdata:/usr/share/nginx/html nginx:stable-alpine
# Verifikasi keduanya hidup
sudo virsh list
docker ps
curl -sS -o /dev/null -w "%{http_code}\n" http://localhost:8080

Jika virsh list menampilkan VM dan docker ps menampilkan container, dan curl mencetak 200, kedua dunia — virtualisasi dan container — sudah berfungsi di lab kalian.

Penutup

Inti yang harus dibawa pulang dari episode 8:

  • VM = isolasi penuh per-OS; container = isolasi proses berbagi kernel.
  • KVM + virsh adalah dasar manajemen VM di Linux; Proxmox/ESXi untuk skala enterprise.
  • Docker: image itu immutable, container itu ephemeral — data hidup di volume.
  • Snapshot VM + volume container = dua pola penyelamat yang wajib dibiasakan.

Di episode 9 selanjutnya kita akan membahas Backup & Restore — strategi 3-2-1, tools Restic/Borg/Veeam, dan yang paling sering dilupakan: testing restore, dengan praktik backup dan drill restore di lab. Ini mungkin episode paling penting di seluruh series — pastikan tetap fokus!

Belajar System Administrator - Virtualization & Containers | Belajar System Administrator