Heute hat es gereicht. Andauernd Netzabriss und hängende VMs. Dann noch eine Platte aus dem RAID abgeraucht … Zeit für was neues.
Gut das es mittlerweile alternativen im Bereich VM gibt. Was bei mir eh standardmäßig läuft ist Virtualbox. Das ganze sollte als headless Installation mit einer Erweiterung den selben „Luxus“ bieten wie vmware. Ebenso verspreche ich mir von der neuen Installation, dass ich endgültig auf meinen letzten Windows Client (Windows 2000 auf einem alten Laptop) verzichten kann. Also frisch ans Werk.
Zutaten:
- Server 1HE HP StorageWorks NAS 1500s
- 4 Platten a 500MB RAID 5
- Ubuntu 12 Server LTS
- VirtualBox
- phpvirtualbox
Installationsvorgang Server
Als erstes wird ein Standard Ubuntu Server auf dem NAS installiert. HowTo (Seiten 1 – 3) gibt es zu genüge im Netz. Wichtig ist nur der openssh-server der gleich mit angewählt wird.
Nach der Installation geht es an die Feinheiten des Servers. Fangen wir mit der IP an.
sudo vim /etc/network/interfaces
Standard ist DHCP wir wollen aber static
##iface eth0 inet dhcp iface eth0 inet static address 192.168.0.10 netmask 255.255.255.0 gateway 192.168.0.254
Dann der Hostname unserer Maschine
sudo vim /etc/hosts
Dort den FQDN und die IP eintragen
192.168.0.10 vbox.domain.local vbox
anschließend der hostname
sudo vim /etc/hostname
dort auch den kompletten FQDN
vbox.domain.local
Jetzt noch den Service neu starten
sudo services hostname start
Ab jetzt sollte hostname und hostname -f das selbe Ergebnis liefern.
Installation VirtualBox
Erster Schritt ist das Anpassen der sources.list
sudo vim /etc/apt/sources.list
folgende Zeile am ende der Datei einfügen
deb http://download.virtualbox.org/virtualbox/debian precise contrib
Einrichten des VirtualBox public-key
wget -q http://download.virtualbox.org/virtualbox/debian/oracle_vbox.asc -O- | sudo apt-key add -
und die Paketdatenbank aktualisieren
sudo apt-get update
Anschließend wird VirtualBox wie folgt installiert
sudo apt-get install linux-headers-$(uname -r) build-essential virtualbox-4.2 dkms
Jetzt noch das Erweiterungspaket von der VirtualBox Webseite installieren
cd /tmp wget http://download.virtualbox.org/virtualbox/4.2.8/Oracle_VM_VirtualBox_Extension_Pack-4.2.8-83876.vbox-extpack sudo VBoxManage extpack install Oracle_VM_VirtualBox_Extension_Pack-4.2.8-83876.vbox-extpack
Wichtig: An das sudo VBoxManage denken! Ansonsten gibt es Fehlermeldungen.
Einen Benutzer der die VBox starten kann anlegen.
sudo adduser admin sudo adduser admin vboxusers
Theoretisch könnten wir jetzt schon via CLI VMs erstellen, starten usw. Wir wollen aber den Luxus einer GUI. Jetzt kommt phpvirtualbox ins Spiel.
Installation phpvirtualbox
Wir benötigen wieder einen unabhängigen Systembenutzer
sudo adduser -m vbox -G vboxusers
Das Passwort benötigen wir gleich wieder. Eine Datei erstellen (virtualbox)
sudo vim /etc/default/virtualbox
mit dem Inhalt
VBOXWEB_USER=vbox
Sollte noch kein Startup Link existieren legen wir diesen an und starten den service
sudo update-rc.d vboxweb-service defaults sudo /etc/init.d/vboxweb-service start
Einen Webserver und PHP Support benötigen wir auch
sudo apt-get install apache2-mpm-prefork apache2-utils apache2.2-bin apache2.2-common apache2 apache2-doc apache2-suexec libapache2-mod-php5 libapr1 libaprutil1 libaprutil1-dbd-sqlite3 libaprutil1-ldap libapr1 php5-common php5-mysql php5-suhosin php-pear wget
Die Weboberfläche soll direkt im root des Webservers liegen
sudo su cd /var/www wget http://phpvirtualbox.googlecode.com/files/phpvirtualbox-4.2-4.zip unzip phpvirtualbox-4.2-4.zip mv phpvirtualbox-4.2-4 phpvirtualbox cd /var/www/phpvirtualbox/
Noch die config anpassen
cp config.php-example config.php
und den Benutzer inkl. Passwort eintragen
/* Username / Password for system user that runs VirtualBox */ var $username = 'vbox'; var $password = 'ganzgeheim';
Es gibt einen kleinen Bug??. Wir bearbeiten daher gleich die config Datei (ungefähr Zeile 57)
// Host / ip to use for console connections // var $consoleHost = 'localhost'; var $consoleHost = '192.168.0.10';
und das soll auch schon alles gewesen sein.
Ergebnis
Via http://192.168.0.10/phpvirtualbox/ erreiche ich jetzt meine VirtualBox Oberfläche.
Im Bereich Anzeige bekommt man eine Adresse und einen Port angezeigt. Über diesen kann man via RDP auf die Konsole zugreifen. Eine sehr schöne Angelegenheit. Ich nutze für einen Screenshot mal eine andere Testumgebung, also nicht über die IP wundern.
rdesktop -f 10.98.12.10:9000
Das soll es auch schon gewesen sein. Auf Feinheiten wie die Passwort Änderung (Standard Admin:admin) werde ich in diesem HowTo nicht mehr eingehen. Wer VirtualBox schon einmal benutzt hat, wird mit der Weboberfläche phpvirtualbox sehr schnell zurecht kommen.
Anmerkung
Für diese Anleitung habe ich über längere Zeit Artikel und HowTo gesammelt. Drei Quellen sollten an dieser Stelle erwähnt werden:
- Managing A Headless VirtualBox Installation With phpvirtualbox (Ubuntu 12.04)
- VBoxHeadless – Running Virtual Machines With VirtualBox 4.1 On A Headless Ubuntu 12.04 Server
- phpvirtualbox
Wie immer: Benutzung dieser Anleitung geschieht auf eigene Verantwortung. Jeder der Linux benutzt, sollte wissen was er mit jedem Befehl anrichten kann …