Panduan Multipass VM Manager: Panduan Ubuntu, Windows & macOS

Instalasi multipass, pengaturan, dan perintah penting

Konten Halaman

Multipass adalah manajer mesin virtual ringan yang memudahkan pembuatan dan pengelolaan instance Ubuntu di cloud pada Linux, Windows, dan macOS.

Apakah Anda seorang pengembang yang membutuhkan lingkungan terisolasi, insinyur DevOps yang menguji konfigurasi, atau seseorang yang sedang belajar Linux, Multipass menyediakan antarmuka perintah sederhana untuk membuat VM Ubuntu dengan cepat.

Multipass VM Manager Ubuntu

Apa itu Multipass?

Multipass adalah alat resmi Canonical untuk membuat dan mengelola mesin virtual Ubuntu. Dirancang untuk sederhana, cepat, dan lintas platform, membuatnya menjadi pilihan yang sangat baik bagi pengembang yang membutuhkan lingkungan Ubuntu yang konsisten di berbagai sistem operasi.

Fitur Utama

  • Lintas platform: Berjalan di Linux, Windows, dan macOS
  • Ringan: Overhead sumber daya minimal dibandingkan VM tradisional
  • Dukungan cloud-init: Konfigurasi VM dengan metadata cloud-init
  • Dukungan snapshot: Membuat dan memulihkan snapshot VM
  • Integrasi jaringan: Jaringan yang mudah antara host dan VM
  • Akses SSH: Manajemen kunci SSH bawaan

Perintah yang Paling Berguna

# Referensi cepat
multipass launch --name dev --cpus 2 --memory 4G --disk 20G
multipass shell dev
multipass mount ./project dev:/home/ubuntu/project
multipass snapshot dev before-changes
multipass restore dev before-changes
multipass delete dev
multipass purge

Instalasi

Ubuntu/Linux

# Instalasi melalui snap (direkomendasikan)
sudo snap install multipass

# Atau instalasi melalui apt
sudo apt update
sudo apt install multipass

Windows

  1. Unduh penginstal Windows dari multipass.run
  2. Jalankan penginstal sebagai administrator
  3. Multipass akan menggunakan Hyper-V secara default (Windows 10 Pro/Enterprise) atau beralih ke VirtualBox

macOS

# Instalasi melalui Homebrew
brew install --cask multipass

# Atau unduh dari multipass.run

Penggunaan Dasar

Membuat VM Pertama Anda

# Membuat VM dengan pengaturan default
multipass launch

# Membuat VM dengan nama tertentu
multipass launch --name my-vm

# Membuat VM dengan versi Ubuntu tertentu
multipass launch 22.04 --name ubuntu-22

# Membuat VM dengan sumber daya kustom
multipass launch --name dev-vm --cpus 2 --memory 4G --disk 20G

Mengelola VM

# Daftar semua VM
multipass list

# Mulai VM
multipass start my-vm

# Berhenti VM
multipass stop my-vm

# Hapus VM
multipass delete my-vm
multipass purge  # Hapus semua VM yang dihapus

Mengakses VM

# Buka shell di VM
multipass shell my-vm

# Eksekusi perintah di VM
multipass exec my-vm -- ls -la

# Salin file ke/dari VM
multipass transfer file.txt my-vm:/home/ubuntu/
multipass transfer my-vm:/home/ubuntu/file.txt ./

Setelah masuk ke dalam VM Multipass, Anda akan memiliki akses ke lingkungan shell Ubuntu penuh. Untuk bekerja efisien di baris perintah, lihat Bash Cheat Sheet kami untuk perintah dan pintasan penting.

Multipass Instances

Cheat Sheet Multipass

Perintah Manajemen VM

# Membuat dan meluncurkan
multipass launch                    # Membuat VM default
multipass launch --name vm1        # Membuat VM bernama
multipass launch 20.04 --name old  # Versi Ubuntu tertentu

# Alokasi sumber daya
multipass launch --cpus 2 --memory 4G --disk 20G --name dev

# Kontrol VM
multipass start vm1                # Mulai VM
multipass stop vm1                 # Berhenti VM
multipass restart vm1               # Restart VM
multipass suspend vm1              # Menyusun VM

# Informasi
multipass list                     # Daftar semua VM
multipass info vm1                 # Detail VM
multipass get local.privileged-mounts  # Periksa pengaturan mount

Operasi File

# Transfer file
multipass transfer file.txt vm1:/home/ubuntu/
multipass transfer vm1:/home/ubuntu/file.txt ./
multipass transfer --recursive ./folder vm1:/home/ubuntu/

# Mount direktori host
multipass mount /host/path vm1:/vm/path
multipass umount vm1:/vm/path

Konfigurasi Jaringan

# Informasi jaringan
multipass info vm1 | grep IPv4

# Forwarding port (Windows/macOS)
multipass set local.port-forwarding=true
multipass restart vm1

Snapshot dan Backup

# Membuat snapshot
multipass snapshot vm1 snapshot1

# Memulihkan snapshot
multipass restore vm1 snapshot1

# Daftar snapshot
multipass list --all

Konfigurasi Lanjutan

Integrasi Cloud-init Buat file cloud-config.yaml:

#cloud-config
package_update: true
package_upgrade: true
packages:
  - docker.io
  - git
  - curl

users:
  - name: developer
    sudo: ALL=(ALL) NOPASSWD:ALL
    shell: /bin/bash
    ssh_authorized_keys:
      - ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQC...

runcmd:
  - systemctl enable docker
  - systemctl start docker

Luncurkan VM dengan cloud-init:

multipass launch --cloud-init cloud-config.yaml --name configured-vm

Gambar Kustom

# Daftar gambar yang tersedia
multipass find

# Gunakan gambar tertentu
multipass launch daily:22.04 --name daily-vm

Integrasi dengan Alat Pengembangan

Integrasi Docker Multipass bekerja dengan sangat baik dengan Docker untuk pengembangan berbasis kontainer. Anda dapat menjalankan Docker di dalam VM Multipass atau menggunakan Multipass untuk membuat lingkungan terisolasi untuk pengembangan Docker.

Lingkungan Pengembangan Untuk pengembangan Python, Anda dapat membuat lingkungan terisolasi mirip dengan lingkungan virtual Python tetapi dengan isolasi OS penuh. Untuk pengguna VS Code, VM Multipass dapat digunakan sebagai lingkungan pengembangan jarak jauh, melengkapi Dev Containers di VS Code untuk skenario yang memerlukan isolasi OS penuh.

Aplikasi Self-Hosting Multipass sangat cocok untuk menguji aplikasi self-hosted seperti Gitea atau Ollama dalam lingkungan terisolasi. Untuk orkestrasi kontainer, Anda dapat menjalankan klaster Kubernetes di dalam VM Multipass dan menggunakan Kubernetes Cheat Sheet kami untuk mengelola beban kerja kontainer Anda.

Penyelesaian Masalah

Masalah Umum

# Periksa status Multipass
multipass get local.driver

# Reset Multipass
multipass purge
sudo snap restart multipass

# Periksa log VM
multipass logs vm1

Optimasi Kinerja

# Aktifkan mount berhak untuk kinerja yang lebih baik
multipass set local.privileged-mounts=true

# Konfigurasi batas memori
multipass set local.memory=8G

Perbandingan dengan Alternatif

Multipass vs Docker

  • Multipass: VM lengkap, lebih baik untuk pengujian tingkat OS, lebih memakan sumber daya
  • Docker: Kontainer, lebih efisien, lebih baik untuk pengiriman aplikasi

Multipass vs VirtualBox/VMware

  • Multipass: Fokus pada perintah baris, dukungan cloud-init, otomatisasi yang lebih mudah
  • VirtualBox/VMware: Berbasis GUI, lebih banyak opsi konfigurasi, lebih baik untuk penggunaan desktop

Multipass vs Proxmox

  • Multipass: Ringan, fokus pada satu VM, sangat baik untuk lingkungan pengembangan
  • Proxmox: Stack virtualisasi lengkap, lebih baik untuk lingkungan produksi, fitur canggih seperti klaster dan ketersediaan tinggi

Multipass vs Vagrant

  • Multipass: Ubuntu-fokus, pengaturan yang lebih sederhana, lebih baik untuk skenario satu VM
  • Vagrant: Dukungan multi-provider, provisioning yang kompleks, lebih baik untuk pengaturan multi-VM

Praktik Terbaik

  1. Manajemen Sumber Daya: Alokasikan CPU dan memori yang sesuai dengan beban kerja Anda
  2. Strategi Snapshot: Buat snapshot sebelum perubahan besar
  3. Keamanan Jaringan: Gunakan aturan firewall yang tepat untuk layanan yang terpapar
  4. Strategi Backup: Lakukan backup rutin untuk data VM penting
  5. Pembersihan: Hapus VM yang tidak digunakan untuk menghemat ruang disk

Kapan Menggunakan Multipass

Pilih Multipass ketika:

  • Anda membutuhkan VM Ubuntu lengkap untuk pengembangan
  • Anda ingin manajemen VM berbasis perintah yang sederhana
  • Anda bekerja di berbagai sistem operasi
  • Anda membutuhkan dukungan konfigurasi cloud-init
  • Anda ingin menguji aplikasi self-hosted dalam isolasi

Pertimbangkan alternatif ketika:

  • Anda membutuhkan kinerja maksimal (gunakan kontainer Docker)
  • Anda membutuhkan pengaturan multi-VM yang kompleks (gunakan Vagrant)
  • Anda membutuhkan manajemen berbasis GUI (gunakan VirtualBox/VMware)

Multipass sangat baik dalam menyediakan lingkungan pengembangan Ubuntu yang sederhana dan konsisten di berbagai platform, membuatnya menjadi pilihan yang sangat baik bagi pengembang yang membutuhkan manajemen VM yang andal tanpa kompleksitas alat virtualisasi tradisional.

Tautan yang Berguna