Es gibt einen Clone der Handelsrechner, der bei Ausfällen als Reserve vorgehalten wird, einen internen Mail- und Git-Server, eine Test-Umgebung für Rails und schließlich die Produktionskiste.
Im Zuge der personellen Expansion (als virtuelles Unternehmen), wird ein von außen zugänglicher Server mit der Datenbank und der Latex-Umgebung für die Erstellung der Marktberichte (und zukünftig des Börsenbriefes) immer wichtiger.
Sicher - man kann all dies bei Amazon mieten. Die Frage ist, ob es zielführend ist, sich komplett diesem Giganten auszuliefern und seine geschäftlichen Aktivitäten hiervon abhängig zu machen.
Da im KabelBW-Internetpaket eine feste IP enthalten ist, steht einer Inhouse-Lösung nichts im Wege.
Xen Installieren
Als Hardware ist eine aktuelle Xenon E4-Kiste von Q-E-D auserkoren. Die Basisumgebung ist der Ubuntu Server in der Version 12.10.
Bei der Einrichtung des LVM-Filesystems wird auf der 500 GB-SSD-HD ein Bereich von 75 GB für die Dom0-Verwaltungsdomäne vorgesehen. Der Rest ist für die Xen-Rechner verfügbar.
Es wird zunächst das Basissystem mit Openssh-Server installiert.
Nach dem ersten Start wird mit ifconfig die zugewiesene Addresse ermittelt und dann vom Produktivsystem aus die weitere Konfiguration durchgeführt:
ssh 172.28.50.117Zunächst aktualisieren wir das System und installieren Xen:
The authenticity of host '172.28.50.117 (172.28.50.117)' can't be established.
ECDSA key fingerprint is 80:50:b0:a8:9c:d1:a1:5f:82:31:39:fa:df:fb:eb:4e.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '172.28.50.117' (ECDSA) to the list of known hosts.
topo@172.28.50.117's password:
Welcome to Ubuntu 12.10 (GNU/Linux 3.5.0-17-generic x86_64)
* Documentation: https://help.ubuntu.com/
System information as of Sat Mar 30 08:53:29 CET 2013
System load: 0.0 Processes: 121
Usage of /: 2.9% of 37.38GB Users logged in: 1
Memory usage: 0% IP address for p1p1: 172.28.50.117
Swap usage: 0%
Graph this data and manage this system at https://landscape.canonical.com/
72 packages can be updated.
36 updates are security updates.
Last login: Sat Mar 30 08:49:51 2013
topo@alpha:~$
sudo su
[sudo] password for topo:
root@alpha:/home/topo# apt-get update ; apt-get upgrade
root@alpha:/home/topo# apt-get install xen-hypervisor-amd64Dann muss Grub gesagt werden, dass ab nun der Xen-Kernel gebootet werden soll.
Der steht an dritter Stelle im Grub-Menue. Also
root@alpha:/home/topo# vi /etc/default/grubund dort GRUB_DEFAULT auf »2« setzen (mit sed -i 's/GRUB_DEFAULT=.*\+/GRUB_DEFAULT=2/' /etc/default/grub gehts auch).
Abschließen mit
root@alpha:/home/topo# update-grubDie Xen-Installation wird mit dem Setzen des Toostacks abgeschlossen:
root@alpha:/home/topo# sed -i 's/TOOLSTACK=.*\+/TOOLSTACK="xm"/' /etc/default/xen
root@alpha:/home/topo# rebootJetzt testen wir, ob Xen läuft (weiter alles als root):
xm listSo far - so good.
Name ID Mem VCPUs State Time(s)
Domain-0 0 32077 8 r----- 11.7
Netzwerk
Die Interfaces werden wie folgt angepasst:
vi /etc/network/interfaces
# The loopback network interfaceAnschließend das Netzwerk neu starten:
auto lo
iface lo inet loopback
auto xenbr0
iface xenbr0 inet dhcp
bridge_ports p1p1
# The primary network interface
auto p1p1
iface p1p1 inet manual
root@alpha:/home/topo# /etc/init.d/networking restartifconfig zeigt jetzt die Präsenz einer »xenbr0«-Bridge, über welche die Kommunikation mit den Xen-Rechnern abgewickelt wird. Weitere Informationen erhalten wir mit
root@alpha:/home/topo# brctl showRechner aufsetzen
bridge name bridge id STP enabled interfaces
xenbr0 8000.d43d7e325d3e no p1p1
Zuerst muss Platz für die virtuellen Maschinen reserviert werden.
Für den ersten Testrechner reservieren wir 20 GB:
root@alpha:/home/topo# pvsNun kopieren wir ein ISO-Image des Betriebssystems auf den Server:
PV VG Fmt Attr PSize PFree
/dev/sda5 alpha lvm2 a-- 476,70g 406,86g
root@alpha:/home/topo# lvcreate -L 20G -n ubuntu-test /dev/alpha
Logical volume "ubuntu-test" created
root@alpha:/home/topo# mkdir -p /var/lib/xen/images/ubuntuEs ist an der Zeit, eine graphische Umgebung zu installieren, damit wir ggf. auch dort arbeiten können und uns mittels »ssh-Y« einloggen und anschließend den X11-Output entfernt darstellen können:
topo@hfx:~/Downloads$ scp ubuntu-12.10-desktop-amd64.iso 172.28.50.117:~
root@alpha:/home/topo# mv ubuntu-12.10-desktop-amd64.iso /var/lib/xen/images/ubuntu
root@alpha:/home/topo# apt-get install awesome gnome-terminal vncviewer xinit»startx &« startet erwartungsgemäß einen sauberen awesome-Desktop (Achtung: Als ROOT, also aufpassen!) .
Aufgrund eines Konfigurationsfehlers sind die Keymaps nicht richtig verlinkt.
Deshalb muss ein symbolischer Link von
/usr/share/qemu-linaro/qemu nach /usr/share/qemuangelegt werden (ich mache das im Zweifel im »mc«).
Abschließend wird eine Konfigurationsdatei für die Erzeugung des Rechners erstellt:
root@alpha:/home/topo# vi /etc/xen/ubuntu-test.cfgNach einem Neustart erzeugen wir endlich den Rechner:
builder = "hvm"
name = "ubuntu-test"
memory = "1024"
vcpus = 4
vif = ['']
disk = ['phy:/dev/alpha/ubuntu-test,hda,w','file:/var/lib/xen/images/ubuntu/ubuntu-12.10-desktop-amd64.iso,hdc:cdrom,r']
vnc = 1
boot="dc"
root@alpha:/home/topo# /etc/init.d/xendomains start
root@alpha:/home/topo# /etc/init.d/xen start
* Starting Xen daemons [ OK ]
xm create /etc/xen/ubuntu-test.cfg
root@alpha:/home/topo# xm create /etc/xen/ubuntu-test.cfgIn einem weiteren Terminal wird (als normaler User)
Using config file "/etc/xen/ubuntu-test.cfg".
Started domain ubuntu-test (id=3)
vncviewer localhost:0aufgerufen und der Startbildschirm der Ubuntu-Installation erscheint:
Wir haben jetzt einen funktionierenden, virtuellen Rechner, der nach der Installation über vir ssh, vnc, teamviewer usw. erreichbar sein wird.