Nase voll vom ESXi

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.

Bildschirmfoto_VirtualBox_phpVirtualBox_2013-03-13

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

BildschirmfotoBildschirmfoto_VirtualBox_rdesktop_2013-03-13

Aufschalten auf eine Virtuelle Maschine während der Installation mittels rdesktop.

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:

  1. Managing A Headless VirtualBox Installation With phpvirtualbox (Ubuntu 12.04)
  2. VBoxHeadless – Running Virtual Machines With VirtualBox 4.1 On A Headless Ubuntu 12.04 Server
  3. phpvirtualbox

Wie immer: Benutzung dieser Anleitung geschieht auf eigene Verantwortung. Jeder der Linux benutzt, sollte wissen was er mit jedem Befehl anrichten kann …

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.