Skip to content

Jaringan Virtual

Cockpit menyediakan alat untuk mengonfigurasi dan mengelola konektivitas jaringan bagi beban kerja virtual. Layanan ini mendukung dua model jaringan utama: jaringan standar tingkat host dan jaringan terdistribusi tingkat klaster.


1. Jaringan Virtual Host (Jaringan Standar)

Jaringan virtual host didefinisikan pada cakupan host hypervisor individual. Jaringan ini mengonfigurasi jembatan virtual (virtual bridge) tingkat host dan mengontrol bagaimana VM berkomunikasi dengan jaringan luar atau beban kerja lokal lainnya.

Parameter Konfigurasi

  • Nama (Name): Pengidentifikasi jaringan virtual.
  • Tipe/Driver: Jaringan standar libvirt.
  • Mode:
    • NAT (Network Address Translation): VM berbagi alamat IP fisik host. Lalu lintas masuk (inbound) diblokir secara default, sementara lalu lintas keluar (outbound) dirutekan melalui host.
    • Rute (Routed): Lalu lintas keluar dirutekan langsung ke jaringan fisik tanpa translasi alamat, memerlukan konfigurasi rute di sisi hulu.
    • Hanya Host (Host-Only / Isolated): VM hanya dapat berkomunikasi dengan VM lain pada switch virtual yang sama dan host hypervisor itu sendiri. Akses jaringan eksternal tidak diizinkan.
  • Alamat IP & Netmask: Menentukan gateway subnet privat untuk switch virtual (misalnya, 192.168.222.1 dengan netmask 255.255.255.0).
  • Konfigurasi DHCP: Menentukan kumpulan alamat IP dinamis yang dialokasikan ke VM tamu (misalnya, IP mulai 192.168.222.10 hingga akhir 192.168.222.50).
  • Autostart: Menentukan apakah jaringan virtual dimulai secara otomatis ketika host hypervisor melakukan boot.

Tindakan Operasional

  • Mulai (Start): Mengaktifkan jembatan jaringan virtual dan mengaktifkan penerusan paket.
  • Hentikan (Stop): Mematikan switch virtual, memutuskan semua antarmuka jaringan VM yang terhubung.
  • Edit: Mengubah status autostart atau parameter konfigurasi.
  • Hapus (Delete): Menghapus konfigurasi jaringan secara permanen dari host (jaringan harus dihentikan terlebih dahulu).

Pemantauan Runtime

  • Lease DHCP: Menampilkan daftar alokasi IP aktif dari host, menunjukkan alamat MAC, nama host, alamat IP, dan waktu kedaluwarsa lease.
  • Port Aktif: Menampilkan daftar semua koneksi antarmuka virtual aktif yang dipetakan ke VM yang sedang berjalan.

2. Jaringan Terdistribusi

Jaringan terdistribusi didefinisikan pada cakupan klaster. Jaringan ini memastikan konsistensi konfigurasi jaringan di seluruh host hypervisor dalam klaster, memungkinkan mesin virtual melakukan migrasi langsung tanpa mengalami pemutusan jaringan.

Karakteristik Utama

  • Integrasi Open vSwitch (OVS): Menggunakan backend OVS (dengan jembatan Linux standar sebagai cadangan) untuk mengelola switch perangkat lunak berkinerja tinggi di seluruh hypervisor.
  • Pemetaan Antarmuka Host (Host Interface Mappings): Menerjemahkan jaringan terdistribusi logis ke antarmuka jaringan fisik host (NIC hulu atau OVS bridge) pada setiap hypervisor.
  • Siklus Hidup Sinkronisasi: Saat dibuat atau diperbarui, Cockpit meneruskan konfigurasi jaringan ke semua host anggota dalam klaster. Cockpit memantau status sinkronisasi pemetaan host:
    • synced: Host berhasil membuat dan mengikat switch virtual.
    • active: Jaringan terdistribusi berhasil disediakan dan beroperasi di seluruh host.
    • partial: Konfigurasi berhasil diterapkan pada beberapa host, tetapi gagal pada host lain, memerlukan tindakan dari administrator.
    • error: Penyediaan gagal diterapkan di seluruh klaster.

3. Pengaman Penghapusan Jaringan (Network Deletion Guard)

Untuk mencegah kehilangan paket data secara tidak sengaja dan isolasi VM, Cockpit menerapkan kebijakan pengaman penghapusan pada jaringan terdistribusi.

  • Pemeriksaan Penggunaan: Sebelum mengeksekusi perintah hapus pada jaringan terdistribusi, Cockpit memeriksa konfigurasi klaster untuk memverifikasi apakah ada VM yang dikonfigurasi untuk menggunakannya.
  • API Guard (HTTP 409): Jika ada VM yang terhubung ke jaringan terdistribusi, permintaan DELETE (DELETE /api/v1/distributed-networks/:id) akan diblokir. API mengembalikan kode status HTTP 409 Conflict yang berisi:
    json
    {
      "code": "NETWORK_IN_USE",
      "error": "Cannot delete distributed network: in use by virtual machines [nama-vm]"
    }
  • Remediasi: Untuk menghapus jaringan terdistribusi, administrator harus terlebih dahulu mengedit pengaturan VM yang menggunakannya (melepas atau memetakan NIC mereka ke switch lain) atau menghapus VM tersebut sepenuhnya.