Multipass ile Sanal Ubuntu’lara Hükmedin

Merhabalar. Kişisel sitemdeki ilk yazımda sizlere hızlı ve çok pratik bir şekilde sanal makineler oluşturabilme, yönetme ve kullanım imkanı sunan Canonical firmasına ait Multipass yazılımından bahsedeceğim.

“Leeloo Dallas, multipass”. Bu yazılımı kullanırken 5. Güç filminin bu sahnesi istemsizce aklıma geliyor 😄

Multipass bize sanal makine orkestrasyonu sağlayan pratik bir komut satırı uygulamasıdır. Normalde kullanmaya alışık olduğumuz VirtualBox veya VMware gibi uygulamalarda kuracağımız sanal makine için işletim sistemi kurulum ISO’suna, sanal bir diske, ağ bağlantısı yapılandırmasına gibi pek çok ince ayara ihtiyaç duyarız. Multipass’ta ise Ubuntu çalıştıran bir sanal makine oluşturmak için tek bir komut çalıştırmamız yeterli olmakta.

Kullanabilmemiz için öncelikle Multipass yazılımını kendi web sitesinden ediniyoruz: https://multipass.run/install

Benim Multipass kuracağım sistemimde de Ubuntu çalıştığı için ve Ubuntu’da varsayılan olarak snap paket yöneticisi kurulu geldiğinden yalnızca şu komutu çalıştırmam yeterli oluyor:

sudo snap install multipass

Sisteminizde snapd yüklü değil ise bu linkteki adımları izleyerek snap paket yöneticisini sisteminize kurabilirsiniz.

multipass kurulumu bu kadar basit.

multipass sistemimize kurulduktan sonra 4 çekirdek CPU, 4GB RAM ve 40GB diske sahip, “ubuntu” isminde bir sanal makine oluşturmak için aşağıdaki komutu kullanabiliriz:

multipass launch --name ubuntu -c 4 -m 4G -d 40G

Bu komut sayesinde multipass en güncel Ubuntu LTS sürümüne (bu yazı esnasında Ubuntu 22.04 LTS) ait imajı otomatik olarak indirecek, verdiğimiz konfigürasyonda bir sanal makine oluşturacak ve bu sanal makineyi başlatacaktır. Çalışan sanal makinelerimizin tamamını görmek için multipass --list komutunu kullanabiliriz.

Oluşturduğumuz bu makinenin komut satırına erişmek için

multipass shell ubuntu

komutunu kullanabiliriz. Bu komutu verdiğimizde artık sanal Ubuntu’muzun komut satırına girmiş olacağız:

Multipass’te kullanabildiğimiz komutlar:

  • multipass --list -> sistemdeki sanal makineleri listeler
  • multipass start|stop|restart <makine-adi> -> ilgili sanal makineyi çalıştırır/durdurur/yeniden başlatır.
  • multipass exec <makine-adi> -- <komut> -> ilgili sanal makine yeni bir kabuk açmadan komut çalıştırır, çıktısını host makinemizdeki kabukta görmemizi sağlar.
  • multipass transfer <dosya-adi> <makine-adi>:<yol> -> host makinemizdeki dosyaları sanal makinemize kopyalamamızı sağlar.
  • multipass delete <makine-adi> -> ilgili makineyi siler (geri dönüştürülebilir).
  • multipass purge -> silinen makineleri tamamiyle ortadan kaldırır.

Temel olarak multipass kullanımı bu şekilde. Şahsen multipass’i kubernetes cluster denemelerimde sıkça kullanıyorum. Bir başka yazıda da multipass üzerinde çalışan sanal makinlere ile bir kubernetes cluster kurulumu anlatacağım.

Kendinize iyi bakın, görüşmek üzere.