Website-Icon HOPPLIN GmbH [dev] Blog

Virtualisierung am Entwicklungsclient

Virtualisierung am Entwicklungsclient
5/5 - (1 vote)

Welcher Entwickler kennt es nicht, jedes Projekt hat seine eigene Infrastruktur, seine eigenen Server Applikationen in unterschiedlichsten Konfiguration. Bisher habe ich hier in VirtualBox mit verschiedene Maschinen gearbeitet und auf dem Rechner gespeichert. Diese haben pro Maschine gut mal 1 GB gebraucht und war teilweise umständlich zu steuern. (Lokale Ssh-Verbindung).

Seit einiger Zeit habe ich in der Anmeldung eines Ubuntu-Servers die Mitteilung entdeckt:

* Multipass 1.0 is now available!

     https://multipass.run/

Neugierig wie ich bin, habe ich gleich mal die Webseite geöffnet um nachzulesen, was das ist: multipass.run

Instant Ubuntu VMs – A mini-cloud on your Mac or Windows workstation”

Multipass nutzt je nach Architektur den systemeigenen Hypervisor:

Somit ist die Ausführung einer Maschine sehr schnell und systemnah.

Installation

via brew

Also gleich mal die Installations-Anweisung für den Mac gesucht und gestartet, als brew Anwender habe ich mir für diesen Installationsweg entschieden:

Mac:# brew cask install multipass

Es hat nicht lange gedauert und Multipass war installiert.

via Installer

Alternativ kannst du auch den Installer herunterladen und über den Setup die Applikation ausführen.

Und schon ist Multipass einsatzbereit.

Multipass verwenden

So, installiert ist es, jetzt das Terminal starten, falls noch nicht offen. Die erste Maschine kannst du einfach mit folgendem Befehl starten:

Mac:# multipass launch
Launched: promoting-grison
Mac:#

Innerhalb kürzester Zeit steht dir die erste Maschine zur Verfügung. In meinem Fall hat diese den Namen promoting-grison bekommen. Sämtliche Informationen über die Maschine erhältst du mit dem Befehl:

Mac:# multipass list
Name               State       IPv4             Image
promoting-grison   Running     192.168.64.4     Ubuntu 18.04 LTS
Mac:#

Hier habe ich also eine Ubuntu-Maschine mit der IP: 192.168.64.4 und der Ubuntu Version 18.04 . Nun aber mal rein in die Maschine:

Mac:# multipass exec promoting-grison -- /bin/bash                            
To run a command as administrator (user "root"), use "sudo <command>".
See "man sudo_root" for details.

ubuntu@promoting-grison:~$

Und schon hast du die komplette Maschine vor dir. Du kannst in dieser Maschine all die notwendigen Pakete installieren, die du benötigst. Was ich allerdings noch nicht geschafft habe, ist eine grafische Oberfläche in dieser Maschine zu benutzen. (Ist für meine Projekte auch nicht weiter notwendig.)

Alternativ kannst du auch mit dem Befehl: multipass shell promoting-grison auf die Shell der Maschine zugreifen.

Weitere Befehle

Standard Maschine

Wenn du den Namen primary für deine Maschine verwendest, brauchst du keinen Namen bei sämtlichen Befehlen mit einzugeben.

VM konfigurieren

Es gibt weitere Parameter, mit der du deine Maschine spezifizieren kannst:

Mac:# Multipass launch -c 2 -m 4G -d 10G --cloud-init datei.conf ubuntu:18.04 maschinenname
Launched: maschinenname
Mac:#

VM löschen

Eine nicht mehr benötigte Maschine kannst du mit dem Befehl löschen:

Mac:# multipass delete promoting-grison
Mac:# multipass list
Name               State       IPv4             Image
promoting-grison   Deleted     --               Not Available
Mac:# multipass purge
Mac:#

Weitere Befehle und Hilfe

Weitere Befehle und Hilfe kannst du dir einfach mit dem nachfolgenden Befehl anzeigen lassen:

Mac:# multipass list
Usage: multipass [options] <command>
Create, control and connect to Ubuntu instances.

This is a command line utility for multipass, a
service that manages Ubuntu instances.

Options:
  -h, --help     Display this help
  -v, --verbose  Increase logging verbosity, repeat up to three times for more
                 detail

Available commands:
  delete    Delete instances
  exec      Run a command on an instance
  find      Display available images to create instances from
  get       Get a configuration setting
  help      Display help about a command
  info      Display information about instances
  launch    Create and start an Ubuntu instance
  list      List all available instances
  mount     Mount a local directory in the instance
  purge     Purge all deleted instances permanently
  recover   Recover deleted instances
  restart   Restart instances
  set       Set a configuration setting
  shell     Open a shell on a running instance
  start     Start instances
  stop      Stop running instances
  suspend   Suspend running instances
  transfer  Transfer files between the host and instances
  umount    Unmount a directory from an instance
  version   Show version details
Mac:#

Fazit

Für mich ist Multipass ein tolles Tool. Ich brauche keine grafischen Oberflächen für meine tägliche Arbeit und baue Regelmäßig Maschinen neu. Außerdem ähnelt das System eher der Cloud-Infrastruktur und somit sind die Befehle ähnlich meiner bisherigen Werkzeuge.


Foto: unsplash-logoTim Photoguy

Die mobile Version verlassen