IaaS #

Di dalam ekosistem cloud computing, Infrastructure as a Service (IaaS) merupakan model layanan paling mendasar yang memiliki tingkat abstraksi paling rendah. Jika kita menganalogikan layanan cloud seperti pembangunan gedung perkantoran, maka IaaS adalah penyewaan lahan tanah kosong beserta bahan bangunan dasarnya — semen, besi pondasi, dan batu bata. Kitalah yang bertanggung jawab penuh untuk merancang arsitektur gedung, mendirikan dinding, memasang atap, hingga mengecat interiornya. IaaS memberikan tingkat kontrol, kustomisasi, dan fleksibilitas tertinggi di antara model layanan cloud lainnya. Namun, kontrol maksimal ini diiringi dengan konsekuensi tanggung jawab operasional dan tingkat keahlian teknis yang sangat besar dari tim engineering kita. Memahami komponen arsitektur IaaS, pembagian tanggung jawabnya secara presisi, serta skenario penggunaan yang ideal adalah kunci utama untuk merancang infrastruktur cloud yang tangguh dan hemat biaya.

Konsep Dasar dan Filosofi Abstraksi #

Filosofi utama di balik IaaS adalah menggabungkan sumber daya fisik (perangkat keras) milik cloud provider, lalu membaginya secara virtual menggunakan teknologi Hypervisor (virtualisasi) untuk disewakan kepada banyak pelanggan (multi-tenancy). Hypervisor bertindak sebagai lapisan abstraksi yang berada di atas hardware fisik server. Ia memecah resource CPU, memori RAM, harddisk, dan kartu jaringan fisik menjadi ratusan mesin virtual independen yang kita kenal sebagai Virtual Machine (VM).

  Traditional On-Premise Data Center:
    [ Aplikasi Kita ] -> [ Runtime & OS ] -> [ Virtualisasi ] -> [ Server & Storage Fisik ]
    * Kita mengelola 100% dari keamanan fisik gedung hingga instalasi kabel jaringan.

  Infrastructure as a Service (IaaS):
    [ Aplikasi Kita ] -> [ Runtime & OS ]
    ------------------------- BATAS ABSTRAKSI -------------------------
    [ Virtualisasi ] -> [ Server & Storage Fisik ]
    * Provider mengelola hardware fisik; kita mengelola OS ke atas secara mandiri.

Dalam model IaaS, batas pembatas tanggung jawab (demarcation line) ditarik tepat di atas hypervisor. Cloud provider menjamin ketersediaan fisik data center, keutuhan hardware server, dan kestabilan hypervisor. Di luar batas itu — mulai dari instalasi sistem operasi (OS guest), konfigurasi firewall jaringan virtual, instalasi database middleware, hingga keamanan kode aplikasi — sepenuhnya berada di bawah kendali dan tanggung jawab kita sendiri.


Komponen-Komponen Utama IaaS #

Infrastruktur IaaS terdiri dari tiga pilar utama yang saling terhubung untuk membentuk satu kesatuan ekosistem server virtual:

1. Compute (Virtual Machine / VM) #

Virtual Machine adalah unit komputasi utama di IaaS. Kita dapat memilih sistem operasi (berbagai distro Linux seperti Ubuntu, RedHat, Rocky Linux, atau Windows Server) dan mengonfigurasi kapasitas hardware virtualnya.

Cloud provider membagi tipe-tipe VM berdasarkan karakteristik beban kerja (workload classification):

  • General Purpose: Keseimbangan performa CPU dan RAM. Cocok untuk server web skala menengah, server testing, atau repositori kode.
  • Compute Optimized: Dioptimalkan dengan CPU berkecepatan tinggi. Cocok untuk pemrosesan batch, server game, transkod video, dan komputasi ilmiah.
  • Memory Optimized: Menyediakan kapasitas RAM raksasa. Sangat ideal untuk in-memory database (seperti SAP HANA atau Redis cache skala besar).
  • Storage Optimized: Dilengkapi dengan harddisk NVMe lokal berlatensi super rendah. Sangat cocok untuk sistem database NoSQL (Cassandra, MongoDB) atau distributed file system.

2. Virtual Networking #

Jaringan fisik data center diabstraksikan oleh IaaS menjadi software-defined networking (SDN). Kita dapat merancang topologi jaringan virtual kita sendiri secara terisolasi menggunakan komponen berikut:

  • VPC (Virtual Private Cloud): Batas isolasi jaringan virtual utama kita di cloud.
  • Subnetting: Membagi VPC menjadi beberapa segmen jaringan. Kita memisahkan instans ke dalam Public Subnet (dapat diakses langsung dari internet, contoh: Load Balancer) dan Private Subnet (terisolasi dari internet luar, contoh: Server Database).
  • Security Groups & Network ACLs: Firewall virtual tingkat instans (stateful) dan tingkat subnet (stateless) yang wajib kita konfigurasi untuk mengontrol port mana saja yang boleh dimasuki trafik data.
  • NAT Gateway: Menghubungkan instans di private subnet ke internet luar (untuk mengunduh patch OS keamanan) tanpa memperbolehkan pihak internet luar masuk ke dalam instans.

Berikut adalah diagram topologi jaringan virtual IaaS yang umum diimplementasikan untuk mengamankan data plane aplikasi:

flowchart TD
    subgraph VPC["Virtual Private Cloud (VPC)"]
        direction TB
        subgraph PublicSubnet["Public Subnet (Dengan Route ke Internet Gateway)"]
            LB["Load Balancer (Multi-AZ)"]
            NAT["NAT Gateway"]
        end
        
        subgraph PrivateSubnet["Private Subnet (Akses Internet via NAT)"]
            VM1["VM Server A (App)"]
            VM2["VM Server B (App)"]
        end
        
        LB --> VM1
        LB --> VM2
        VM1 -. "Trafik Outbound" .-> NAT
        VM2 -. "Trafik Outbound" .-> NAT
    end
    
    User["Pengguna (Internet)"] --> LB
    NAT --> Internet["Internet Gateway (Publik)"]

3. Storage Layer (Penyimpanan Virtual) #

Di lingkungan IaaS, penyimpanan dibagi menjadi beberapa tipe sesuai dengan kebutuhan latensi dan persistensi data:

  • Ephemeral Storage (Instance Store): Harddisk fisik yang menempel langsung pada server fisik host tempat VM berjalan. Memiliki kecepatan baca/tulis yang sangat ekstrem, namun bersifat tidak kekal (non-persistent). Jika VM dihentikan atau dipindahkan ke host lain oleh provider, seluruh data di storage ini akan hilang selamanya.
  • Block Storage (Persistent Disk): Harddisk virtual independen yang terhubung ke VM melalui jaringan khusus storage. Data di dalamnya bersifat permanen meskipun VM dimatikan atau dihapus. Kita bisa melepaskan (detach) block storage ini dari VM-A dan memasangnya kembali (attach) ke VM-B.
  • File Storage: Shared storage (seperti NFS/SMB) yang memungkinkan ribuan VM membaca dan menulis ke satu media penyimpanan yang sama secara simultan.

Tabel di bawah ini membandingkan karakteristik ketiga jenis storage utama dalam IaaS:

Kriteria Block Storage File Storage Object Storage
Protokol / Akses SCSI / NVMe (Mount langsung sebagai disk lokal) NFS / SMB (Protokol sharing folder jaringan) HTTP REST API (Akses via SDK/URL)
Latensi I/O Sangat Rendah (Optimal untuk transaksi cepat) Sedang (Tergantung trafik jaringan share) Tinggi (Tidak cocok untuk proses I/O instan)
Kapasitas Skalabilitas Terbatas (Ukuran disk ditentukan di awal) Sangat Fleksibel (Skala otomatis bertumbuh) Tidak Terbatas (Tanpa batas kapasitas fisik)
Kasus Penggunaan Sistem Operasi, file mentah database relasional. Shared media asset, direktori bersama CMS. Backup arsip, aset gambar/video statis web.

Kapan IaaS adalah Pilihan Tepat #

Meskipun model PaaS dan Serverless menawarkan kepraktisan operasional tanpa manajemen server, IaaS tetap menjadi pilihan utama dan terbaik bagi organisasi dalam skenario-skenario berikut:

1. Migrasi Sistem Warisan (Lift-and-Shift Migration) #

Banyak aplikasi korporat lama (legacy system) didesain sangat erat dengan konfigurasi sistem operasi lokal, driver tertentu, atau memerlukan lisensi software yang diikat pada alamat MAC fisik server. Mengubah aplikasi-aplikasi ini agar kompatibel dengan lingkungan PaaS atau kontainer membutuhkan biaya dan waktu rekayasa ulang yang sangat mahal. Mendeploy sistem tersebut ke VM IaaS adalah solusi migrasi tercepat dan paling aman.

2. Kustomisasi Sistem Operasi dan Kernel tingkat Tinggi #

Jika aplikasi kita memerlukan modifikasi kernel Linux tingkat rendah (misalnya untuk mengaktifkan modul kernel real-time, kustomisasi swap file, atau tuning performa TCP stack di tingkat OS), kita wajib menggunakan IaaS. Layanan PaaS memblokir akses ke tingkat ini demi keamanan multi-tenant mereka.

3. Kepatuhan Regulasi Keras (Regulatory Compliance) #

Beberapa regulasi industri keuangan atau pemerintahan mewajibkan organisasi untuk memiliki audit penuh terhadap sistem operasi server mereka, membatasi versi enkripsi SSH yang aktif, menginstal agen antivirus/IDS di level OS, serta mengontrol lokasi fisik partisi harddisk. Persyaratan audit ketat seperti ini hanya bisa dijawab menggunakan keleluasaan akses administrasi penuh di IaaS.

4. Perangkat Virtual Jaringan Khusus (Network Virtual Appliances) #

Jika kita ingin menjalankan firewall komersial dari pihak ketiga (seperti Palo Alto Networks, Fortinet) atau merancang router virtual kustom untuk menghubungkan data center lokal kita ke cloud via VPN IPSec, kita harus men-deploy image perangkat tersebut di atas VM IaaS.


Kebocoran Biaya: Bahaya “VM Sprawl” dan Mitigasinya #

Salah satu kerugian ekonomi terbesar di lingkungan IaaS adalah fenomena VM Sprawl (pembiakan Virtual Machine liar). Hal ini terjadi ketika para developer membuat VM baru untuk keperluan testing sementara, namun lupa mematikan atau menghapusnya setelah testing selesai.

Karena IaaS mengenakan biaya sewa berdasarkan waktu aktif instans (per detik atau per jam), VM yang menganggur tanpa ada trafik di dalamnya akan terus menyedot anggaran bulanan organisasi. Masalah ini diperparah oleh adanya Orphaned Block Storage — harddisk virtual yang tertinggal dan tetap ditagih biayanya meskipun VM induknya telah dihapus.

Strategi Mitigasi VM Sprawl #

Untuk mencegah pemborosan biaya IaaS, kita harus menerapkan strategi otomatisasi berikut:

  • Terapkan Kebijakan Tagging Wajib: Setiap VM yang dibuat wajib memiliki tag penanggung jawab, nama proyek, dan tanggal kedaluwarsa.
  • Skrip Pembersih Otomatis (Automated Cleanup Script): Jalankan skrip pembersih berkala untuk mematikan VM di lingkungan development pada malam hari saat kantor sepi, serta mendeteksi block storage yatim piatu (orphaned volumes) yang tidak terhubung ke VM mana pun untuk segera dihapus secara aman.

Berikut adalah contoh skrip otomatisasi Terraform sederhana yang mengaktifkan deteksi penghapusan tidak disengaja (prevent_destroy) serta mewajibkan tagging pada pembuatan VM IaaS guna mengendalikan siklus hidup resource:

# ✓ BENAR: Gunakan lifecycle rules dan tagging wajib untuk mitigasi kebocoran biaya IaaS
resource "aws_instance" "development_app_server" {
  ami           = "ami-0c55b159cbfafe1f0"
  instance_type = "t3.small"
  subnet_id     = aws_subnet.dev_private.id

  # Mengaktifkan siklus hidup pencegahan penghapusan tidak disengaja untuk VM produksi
  lifecycle {
    prevent_destroy = false # Set true untuk VM produksi kritis
  }

  # Tagging wajib untuk monitoring biaya (FinOps) dan audit otomatis
  tags = {
    Name        = "Dev-App-Server"
    Environment = "Development"
    Owner       = "Tim-Engineering-Platform"
    Project     = "Modernisasi-Sistem"
    AutoStop    = "20:00-WIB" # Skrip eksternal membaca tag ini untuk mematikan VM di malam hari
  }
}

Komparasi Layanan IaaS Antar-Provider (Vendor-Agnostic) #

Bagi seorang arsitek cloud yang berprinsip vendor-agnostic (tidak terikat pada satu vendor), penting untuk diingat bahwa konsep IaaS adalah universal. Meskipun nama produk dan command CLI-nya berbeda, fungsionalitas di balik layanannya adalah sama.

Tabel di bawah ini memetakan terminologi komponen IaaS pada tiga provider cloud terbesar di dunia:

Komponen Universal Amazon Web Services (AWS) Google Cloud Platform (GCP) Microsoft Azure
Virtual Machine EC2 Instance Compute Engine VM Instance Azure Virtual Machine
Virtual Private Network VPC (Virtual Private Cloud) VPC Virtual Network (VNet)
Block Storage EBS (Elastic Block Store) Persistent Disk (PD) Azure Managed Disk
File Storage EFS (Elastic File System) Cloud Filestore Azure Files
Load Balancer ELB (ALB, NLB, Gateway) Cloud Load Balancing Azure Load Balancer
Layanan Bastion Host AWS Systems Manager Session Mgr Identity-Aware Proxy (IAP) Azure Bastion

Ringkasan #

  • IaaS adalah model cloud dengan tingkat abstraksi terendah, memberikan keleluasaan kontrol sistem operasi dan jaringan virtual penuh, dengan konsekuensi beban tanggung jawab operasional tertinggi bagi tim engineering kita.
  • Compute (VM), virtual networking, dan block storage adalah tiga pilar utama yang menyusun arsitektur IaaS di cloud provider mana pun.
  • IaaS sangat ideal untuk lift-and-shift migration, aplikasi warisan yang tidak siap di-refactor, kustomisasi kernel sistem operasi tingkat tinggi, serta kebutuhan kepatuhan regulasi data yang ketat.
  • Waspadai bahaya VM Sprawl dan Orphaned Storage, yang merupakan penyebab utama kebocoran anggaran infrastruktur IaaS harian. Terapkan tagging wajib dan shutdown scheduler otomatis.
  • Pahami pemisahan firewall stateful (Security Group) dan stateless (Network ACL) dalam virtual networking IaaS untuk meminimalkan celah keamanan jaringan internal.
  • Konsep IaaS bersifat universal lintas provider — memindahkan arsitektur IaaS dari AWS ke Google Cloud atau Azure hanya memerlukan adaptasi terminologi dan sintaksis API, tanpa perlu mengubah logika arsitektur jaringan dasar kita.

← Sebelumnya: Control Plane vs Data Plane   Berikutnya: FaaS/Serverless →

About | Author | Content Scope | Editorial Policy | Privacy Policy | Disclaimer | Contact