Mengenal virtual machine di cloud: peran hypervisor, kategori instance general, compute, memory, storage, dan GPU, serta model pembelian on-demand, reserved, dan spot, lengkap dengan komparasi EC2, Google Compute Engine, dan Azure VM.

Di episode 5, kalian sudah membangun VPC lengkap dengan subnet publik dan privat. Namun rumah tanpa penghuni tidak berguna. Episode 6 ini membahas "penghuni" utama cloud: virtual machine (VM) — atau yang di AWS disebut EC2 instance, di GCP disebut Compute Engine, dan di Azure disebut Virtual Machines.
Kita akan melihat bagaimana VM lahir di atas hypervisor, kenapa VM dikategorikan dalam beberapa keluarga, bagaimana model pembelian mempengaruhi biaya secara dramatis, dan diakhiri komparasi ketiga provider besar.
VM adalah komputer yang diemulasi penuh: CPU virtual, memori, disk, dan perangkat jaringan virtual — semuanya berjalan di atas satu mesin fisik yang dibagi banyak penyewa. Perantara yang membagi mesin fisik itu disebut hypervisor.
Ada dua jenis hypervisor:
Note
Hypervisor itu seperti manajer gedung apartemen: satu gedung fisik dibagi menjadi banyak unit sewaan, tiap unit terisolasi penuh dari unit lain. Penyewa di unit sebelah tidak bisa membaca data kalian karena hypervisor mengisolasi memori, disk, dan jaringan virtual secara ketat. Kekuatan inilah yang membuat cloud bisa berbagi hardware tanpa saling mengganggu.
Konsekuensi praktis dari virtualisasi adalah elastisitas: menambah VM baru hanya butuh beberapa menit, bukan berminggu-minggu seperti membeli server fisik. Kalian bisa menaikkan kapasitas saat traffic naik dan menurunkannya saat sepi — sesuatu yang mustahil dilakukan dengan mudah di era on-premise.
Tidak semua beban kerja sama. Web server butuh keseimbangan CPU dan RAM; encoding video butuh CPU yang sangat kuat; database besar butuh banyak memori; training machine learning butuh GPU. Karena itu setiap provider mengelompokkan VM ke dalam keluarga instance, masing-masing dengan keseimbangan resource berbeda:
| Keluarga | Fokus | Contoh AWS | Contoh GCP | Contoh Azure |
|---|---|---|---|---|
| General purpose | Web server, aplikasi | t3.medium, m6i.large | e2-medium, n2-standard-2 | B2s, D2s_v3 |
| Compute optimized | CPU tinggi | c6i.2xlarge | c3-highcpu-8 | F4s_v2 |
| Memory optimized | RAM besar | r6i.2xlarge | m3-memory-16 | E8s_v3 |
| Storage optimized | I/O tinggi | i4i.2xlarge | high-memory + local SSD | L8s_v2 |
| Accelerated (GPU) | ML, rendering | g5.2xlarge, p4d.24xlarge | a2-highgpu-1g | NC6s_v3 |
Nama instance itu bukan sekadar kode acak — di AWS, huruf pertama menunjukkan keluarga (t untuk general, c untuk compute, r untuk memory), angka menunjukkan generasi, dan suffix menunjukkan ukuran. Memahami pola ini membantu kalian "membaca" kebutuhan resource sekaligus menghindari dua kesalahan umum: membayar mahal untuk resource yang tidak dipakai, atau memilih instance yang terlalu lemah sehingga aplikasi melambat.
Biaya compute adalah salah satu item terbesar di tagihan cloud. Untungnya, semua provider menawarkan tiga model pembelian dengan trade-off yang sama:
| Model | Komitmen | Diskon | Risiko | Cocok untuk |
|---|---|---|---|---|
| On-demand | Tidak ada | 0 persen | Tidak ada | Beban tak terduga, development |
| Reserved / Savings Plans | 1-3 tahun | sekitar 30-70 persen | Overcommit jika beban menurun | Beban stabil yang berjalan 24/7 |
| Spot / Preemptible | Tidak ada | hingga sekitar 90 persen | Instance bisa direklamasi kapan saja | Batch, training ML, workload stateless |
Model on-demand adalah tarif penuh per detik — fleksibel, tapi paling mahal. Model reserved (di AWS disebut Reserved Instances atau Savings Plans, di GCP Committed Use Discount, di Azure Reserved VM Instances) memberikan diskon besar sebagai imbalan komitmen 1-3 tahun — ideal untuk database dan aplikasi yang memang berjalan terus.
Warning
Model spot (Spot Instances di AWS, Preemptible VMs di GCP, Azure Spot Virtual Machines) menawarkan diskon hingga sekitar 90 persen dengan syarat: provider boleh mereklamasi instance kapan saja — di AWS kalian mendapat pemberitahuan dua menit, di GCP tiga puluh detik. Jangan pernah menaruh database atau data penting di spot instance. Spot hanya aman untuk workload stateless yang bisa diulang dari nol: proses batch, rendering, atau training model yang checkpoint-nya tersimpan di tempat lain.
Tip
Strategi yang dipakai banyak tim: gunakan reserved untuk menutupi beban dasar (base load) yang memang stabil, lalu spot untuk menangani lonjakan (burst). Dengan cara ini kalian membayar diskon untuk kapasitas yang pasti terpakai, dan membayar sangat murah untuk kapasitas fleksibel yang boleh hilang.
Waktu untuk praktik. Perintah aws ec2 run-instances membuat sebuah VM baru di subnet yang sudah ada:
aws ec2 run-instances \
--image-id ami-0abcdef1234567890 \
--instance-type t3.medium \
--key-name lab-key \
--subnet-id subnet-0abc123 \
--security-group-ids sg-0abc123 \
--associate-public-ip-addressPenjelasan singkat tiap flag:
--image-id menentukan sistem operasi awal (AMI). Bayangkan sebagai "cetakan" awal komputer.--instance-type menentukan ukuran VM, misalnya t3.medium yang termasuk keluarga general purpose.--key-name memilih key pair SSH untuk masuk ke server — akses login utama kalian.--subnet-id menempatkan VM di subnet tertentu; subnet publik berarti ia mendapat IP publik.--security-group-ids memasang aturan firewall yang mengizinkan traffic tertentu masuk.Important
Pada episode 4 kita sudah membahas IAM dan temporary credentials — sekarang prinsip itu bertemu praktik. Jangan pernah membuat instance dengan password statis atau key yang dibagikan. Gunakan key pair terpisah per lingkungan, lalu kombinasikan dengan instance role dan credentials sementara agar akses selalu bisa dicabut dan diputar ulang.
Meski konsepnya sama, ketiga provider memberi nama dan aturan yang berbeda:
| Aspek | AWS EC2 | GCP Compute Engine | Azure Virtual Machines |
|---|---|---|---|
| Penamaan instance | t3, m6i, c6i | e2, n2, c3 | B, D, E, F |
| Diskon komitmen | Reserved / Savings Plans | Committed Use Discount | Reserved VM Instances |
| Model spot | Spot Instances | Preemptible VMs | Azure Spot Virtual Machines |
| Penagihan | Per detik (minimal 60 detik) | Per detik (minimal 60 detik) | Per detik |
Tip
Semua provider menagih per detik dengan minimum satu menit — menyalakan instance hanya untuk "sebentar" tidak lagi membuang uang seperti era billing per jam. Namun hati-hati dengan kuota: setiap akun punya batas vCPU per region. Kalian perlu mengajukan kuota increase sebelum mengejar kapasitas besar, jadi rencanakan sejak awal, bukan saat sudah terdesak.
Pada episode 6 ini, kita telah mengupas fondasi compute cloud: hypervisor sebagai pembagi hardware fisik, lima kategori instance yang masing-masing dirancang untuk beban kerja berbeda, serta tiga model pembelian dengan trade-off biaya dan risiko yang jelas. Kalian juga sudah melihat perintah aws ec2 run-instances dan peta komparasi EC2, Compute Engine, dan Azure VM.
Kunci yang harus dibawa pulang:
VM yang berjalan tanpa penyimpanan hanyalah mesin tanpa data. Di episode 7, kita akan membahas Cloud Storage Solutions (Block, File & Object Storage) — EBS dan Persistent Disk untuk block, EFS dan Filestore untuk file, hingga S3, Cloud Storage, dan Blob Storage untuk object, lengkap dengan lifecycle policy yang mengotomatiskan penyimpanan murah.