Debian OpenVZ
Einleitung
OpenVZ erstellt mehrere isolierte, sichere virtuelle Umgebungen (Virtual Environments, kurz VEs) auf einem einzigen physischem Server, sorgt so für eine bessere Serverausnutzung und stellt sicher, dass Programme (Applikationen) nicht miteinander in Konflikt geraten. Jede VE arbeitet und verhält sich genau wie ein eigenständiger Server; VEs können unabhängig voneinander neu gestartet werden und haben Root-Zugriff, Benutzer, IP-Adressen, Speicher, Prozesse, Dateien, Programme, Systembibliotheken und Konfigurationsdateien.
Im Vergleich zu Virtuellen Maschinen von VMware bzw Virtualbox oder zu Para-Virtualisierungstechnologien wie Xen bietet OpenVZ weniger Flexibilität, was die Auswahl von Gast-Betriebssystemen betrifft: sowohl Gast- als auch Host-Betriebssystem muss Linux sein (obwohl verschiedene Linux-Distributionen in verschiedenen VEs eingesetzt werden können). Andererseits bietet die Technologie von OpenVZ bessere Leistungsfähigkeit, Skalierbarkeit, dynamische Ressourcenverwaltung und einfachere Administration. Laut der OpenVZ-Website (www.openvz.org) beträgt der Virtualisierungsaufwand nur 1–3 % der gesamten Systemleistung.
OpenVZ ist Basis von Virtuozzo, des kommerziellen Produkts aus dem Hause Parallels (ehem. SWsoft Inc.). OpenVZ ist unter der GPL Version 2 lizenziert.
OpenVZ besteht aus Kernel und Werkzeugen auf Benutzerebene.
Für weitere Details zu OpenVZ siehe http://de.wikipedia.org/wiki/OpenVZ
Installation OpenVZ
32Bit-Linux:
apt-get install linux-image-openvz-686
64Bit-Linux:
apt-get install linux-image-openvz-amd64
OpenVZ-Tools:
apt-get install vzctl vzquota
Sysctl anpassen, um Netzwerkzugriff für die VE's zu ermöglichen:
vi /etc/sysctl.conf
Folgende Einstellungen vornehmen (teilweise Optionen ändern und teilweise neu einfügen):
[...] net.ipv4.conf.all.rp_filter=1 net.ipv4.icmp_echo_ignore_broadcasts=1 net.ipv4.conf.default.forwarding=1 net.ipv4.conf.default.proxy_arp = 0 net.ipv4.ip_forward=1 kernel.sysrq = 1 net.ipv4.conf.default.send_redirects = 1 net.ipv4.conf.all.send_redirects = 0 net.ipv4.conf.eth0.proxy_arp=1 [...]
Nach dem Ändern des Konfigfiles, die Änderungen übernehmen:
sysctl -p
Server neustarten:
reboot
Nach dem Reboot:
uname -r
Die angezeigte Kernelversion muss openvz enthalten z.B. 64Bit:
2.6.26-2-openvz-amd64
bzw. 32Bit Kernel:
2.6.26-2-openvz-686
Installation WebVZ
WebVZ ist eine webbasierte Konfigurations- und Managementoberfläche, die via Webbrowser bedient wird. WebVZ benötigt die Scriptsprache Ruby on Rails.
apt-get install ruby rubygems libsqlite3-ruby sqlite3 irb1.8 libopenssl-ruby1.8 libreadline-ruby1.8 rdoc1.8 gem install -v=2.1.0 rails
Download von WebVZ:
cd /usr/local wget http://dfn.dl.sourceforge.net/sourceforge/webvz/webvz.2.0.tar.gz tar xvfz webvz.2.0.tar.gz mv webvz.2.0 webvz cd webvz
WebVZ benötigt noch einige Tools und Directories an bestimmten Stellen im Dateisystem, die mittels symbolischer Links angelegt werden:
ln -s /var/lib/vz /vz ln -s /usr/bin/irb1.8 /usr/bin/irb mkdir /etc/sysconfig ln -s /etc/vz/conf /etc/sysconfig/vz-scripts
Startscript:
vi /etc/init.d/webvz
Folgende Zeilen einfügen
#!/bin/sh START="yes" DAEMON=/usr/local/webvz/script/server RUBY=/usr/bin/ruby OPTIONS="" PIDFILE=/var/run/webvz.pid USER="root" GROUP="root" if [ "$START" != "yes" ]; then echo "To enable Webinterface edit $1 and set START=yes" return 0 fi # Exit if the package is not installed [ -x "$DAEMON" ] || exit 0 start() { echo -n "Starting WebVZ..." #Check, if running start-stop-daemon --chuid $USER --group $GROUP --background --make-pidfile --pidfile $PIDFILE \ --start --test --exec $RUBY $DAEMON -- $OPTIONS > /dev/null if [ "$?" -ne 0 ]; then echo " [already running]" return 1 fi #Start start-stop-daemon --chuid $USER --group $GROUP --background --make-pidfile --pidfile $PIDFILE \ --start --exec $RUBY $DAEMON -- $OPTIONS > /dev/null if [ "$?" -ne 0 ]; then echo " [failed]" return 1 fi echo " [ok]" return 0 } stop() { echo -n "Stopping WebVZ..." kill -9 `cat $PIDFILE` rm -f $PIDFILE echo " [ok]" return 0 } case "$1" in start) start ;; stop) stop ;; restart|reload) stop start ;; *) echo "Usage: $0 {start|stop|restart|reload}" exit 3 esac
Beim Systemstart ausführen:
update-rc.d webvz defaults
Funktionscheck und Passwort ändern
WebVZ starten:
/etc/init.d/webvz start
Webbrowser öffnen und Adresse http://IP_Des_Server:3000. Die Startseite von WebVZ sollte sich öffnen.
- Button Login anklicken
- Einloggen mit Username=admin und Password=admin123
- Reiter Users anklicken
- Button Change Password in der Zeile Administrator/admin admin anklicken
- Zweimal das gewünschte Passwort eingeben und Button Change Passoword anklicken