Installation von OpenVZ + Verwaltung von VMs mit ISPConfig 3 (Debian 6.0)

Version 1.0

Author: Till Brehm <t [dot] brehm [at] projektfarm [dot] com>, Falko Timme <falko [dot] timme [at] projektfarm [dot] com>, Christian Schmalfeld <c [dot] schmalfeld [at] projektfarm [dot] de>


Dieses Tutorial beschreibt die Installation eines OpenVZ Hostservers und die Verwaltung von virtuellen Maschinen mit der ISPConfig 3 Hosting Kontrolloberfläche. OpenVZ ist eine leichtgewichtige Virtualisationssoftware für Linuxserver, ähnlich jails auf *BSD Systemen (siehe http://www.openvz.org für mehr Details). ISPConfig 3 beinhaltet ein Modul zur Verwaltung von virtuellen OpenVZ Maschinen auf  dem lokalen Server oder remote-Servern, auf denen ISPConfig 3 installiert ist.

Installation

Installieren Sie als erstes den OpenVZ kernel und die Werkzeuge direkt aus der Debian Squeeze Repository.

Benutzen Sie auf einem 64Bit Linux (x86_64) diesen Befehl:

apt-get -y install linux-image-openvz-amd64 vzctl vzquota vzdump

Auf einem 32Bit Linux (x86) diesen:

apt-get -y install linux-image-openvz-686 vzctl vzquota vzdump

Erstellen Sie einen Symlink von /var/lib/vz nach /vz sodass ISPConfig später die OpenVZ Installation findet.

ln -s /var/lib/vz /vz

Öffnen Sie die Datei /etc/sysctl.conf und stellen Sie sicher, dass sie die folgenden Zeilen enthält:

vi /etc/sysctl.conf

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

Mussten Sie den Inhalt von /etc/sysctl.conf ändern, benutzen Sie

sysctl -p

um die Änderungen wirksam zu machen.

Der nachfolgende Schritt ist wichtig, sollten die IP-Adressen Ihrer virtuellen Maschinen aus einem anderen Subnetz stammen als die Ihres Hostsystems. Führen Sie ihn nicht aus, wird das Networking Ihrer virtuellen Maschinen nicht funktionieren!

Öffnen Sie /etc/vz/vz.conf und setzen NEIGHBOUR_DEVS gleich all:

vi /etc/vz/vz.conf

[...]
# Controls which interfaces to send ARP requests and modify APR tables on.
NEIGHBOUR_DEVS=all
[...]

Starten Sie nun den Server neu, sodass der OpenVZ Kernel geladen wird:

reboot

Nun laden wir ein bereits erstelltes Debian OpenVZ Image herunter. Begeben Sie sich in das Vorlagencacheverzeichnis...

cd /var/lib/vz/template/cache

... und laden Sie (wenn Sie auf einem 32Bit System arbeiten) das 32Bit Debian Image herunter.

wget http://download.openvz.org/template/precreated/contrib/debian-6.0-i386-minimal.tar.gz

Auf 64Bit Systemen laden Sie stattdessen das 64Bit Image herunter:

wget http://download.openvz.org/template/precreated/contrib/debian-6.0-amd64-minimal.tar.gz

Mehr vorerstellte OpenVZ Images können hier heruntergeladen werden:

http://download.openvz.org/template/precreated/contrib/
Im nächsten Schritt werden die vorausgesetzten Pakete für die ISPConfig 3 Kontrolloberfläche installiert.

Installieren Sie den MySQL Datenbank-Server...

apt-get -y install mysql-client mysql-server

... und geben Sie auf Aufforderung des Installers das neue Passwort für MySQL ein.

Installieren Sie Apache und PHP...

apt-get -y install apache2 apache2.2-common apache2-doc apache2-mpm-prefork apache2-utils libexpat1 ssl-cert libapache2-mod-php5 php5 php5-common php5-gd php5-mysql php5-imap phpmyadmin php5-cli php5-cgi libapache2-mod-fcgid apache2-suexec php-pear php-auth php5-mcrypt mcrypt sudo

... und aktivieren Sie einige Apache Module:

a2enmod suexec rewrite ssl actions include

Installieren Sie fail2ban: dies ist optional, jedoch empfohlen, da der ISPConfig Monitor versucht, dessen Log anzuzeigen:

apt-get install fail2ban

cd /tmp
wget http://www.ispconfig.org/downloads/ISPConfig-3-stable.tar.gz
tar xfz ISPConfig-3-stable.tar.gz
cd ispconfig3_install/install/

Starten Sie dann das Installationsskript:

php -q install.php

>> Initial configuration

Operating System: Debian 6.0 (Squeeze/Sid) or
compatible

Following will be a few questions for primary
configuration so be careful.
Default values are in [brackets] and can be accepted with <ENTER>.
Tap in "quit" (without the quotes) to stop the installer.

Select language (en,de) [en]: <-- Enter

Installation mode (standard,expert) [standard]: <-- expert

Full qualified hostname (FQDN) of the server, eg. server1.domain.tld [ispconfig.local]: <-- Enter

MySQL server hostname [localhost]: <-- Enter

MySQL root username [root]: <-- Enter

MySQL root password []: <-- enter the mysql root password here

MySQL database to create [dbispconfig]: <-- Enter

MySQL charset [utf8]: <-- Enter

Shall this server join an existing ISPConfig multiserver setup (y,n) [n]: <-- Enter

Adding ISPConfig server record to database.

Configure Mail (y,n) [y]: <-- n

Configure Jailkit (y,n) [y]: <-- n

Configure FTP Server (y,n) [y]: <-- n

Configure DNS Server (y,n) [y]: <-- n

Hint: If this server shall run the ISPConfig interface, select 'y' in the 'Configure Apache Server' option.

Configure Apache Server (y,n) [y]: <-- y

Configuring Apache
Configuring Vlogger
Configuring Apps vhost
Configure Firewall Server (y,n) [y]: <-- y

Configuring Bastille Firewall
Install ISPConfig Web Interface (y,n) [y]: <-- y

Installing ISPConfig
ISPConfig Port [8080]: <-- Enter

Enable SSL for the ISPConfig web interface (y,n) [y]: <-- Enter

Generating RSA private key, 4096 bit long modulus
.............................................++
.........................................................++
e is 65537 (0x10001)
You are about to be asked to enter information that will be incorporated into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]: <-- Geben Sie Ihren Ländercode an, z.B. DE State or Province Name (full name) [Some-State]: <-- Geben Sie Ihr Bundesland an Locality Name (eg, city) []: <-- Geben Sie Ihre Stadt an Organization Name (eg, company) [Internet Widgits Pty Ltd]: <-- Geben Sie den Namen Ihrer Firma an Organizational Unit Name (eg, section) []: <-- Enter Common Name (eg, YOUR name) []: <-- Enter Email Address []: <-- Enter

Please enter the following 'extra' attributes to be sent with your certificate request
A challenge password []: <-- Enter An optional company name []: <-- Enter writing RSA key
Configuring DBServer
Installing ISPConfig crontab
no crontab for root
Restarting web server: apache2 ... waiting .
Installation completed.

Entfernen Sie die heruntergeladenen ISPConfig Dateien im /tmp Verzeichnis:

rm -rf /tmp/ispconfig3_install/install
rm -f /tmp/ISPConfig-3-stable.tar.gz


Einloggen in ISPConfig

Rufen Sie die URL für die ISPConfig Kontrolloberfläche in Ihrem Internetbrowser auf:

https://192.168.0.105:8080/

(Ersetzen Sie die IP-Adresse mit der IP Ihres Servers.)

Die Standart Login-Daten sind:

Benutzer: admin Passwort: admin
Als ersten Schritt sollten Sie Ihr Passwort ändern. Gehen Sie nach Tools > Password and Language und geben ein neues Passwort ein, ändern Sie nach bedarf auch die Sprache der Oberfläche. Klicken Sie dann auf Save.

Gehen Sie nach System > Server Services und deaktivieren Sie alle Boxen außer VServer-Server. Klicken Sie danach auf Save.


Öffnen Sie nun das Verwaltungsmodul für virtuelle Maschinen indem Sie auf das VServer Symbol in der oberen Menüleiste klicken. Wählen Sie dann OStemplates aus dem linken Menü und die Debian minimal Vorlage aus der Liste.

Ist Ihr Server ein 32Bit System, ändern Sie den Vorlagen-Dateinamen (template filename) zu "debian-6.0-i386-minimal".  Für ein 64Bit System, ändern Sie ihn zu "debian-6.0-amd64-minimal". So bewirken Sie, dass der Eintrag dem Namen des heruntergeladenen OpenVZ Images entspricht (nur ohne die tar.gz Dateiendung).


Eine virtuelle Maschine von OpenVZ braucht eine dedizierte IP Adresse. Das bedeutet, dass Sie mindestens zwei IP Adressen auf dem Server benötigen um eine virtuelle Maschine zu betreiben, eine für den Serverhost selbst und eine zweite für die virtuelle Maschine. Klicken Sie auf IP addresses im linken Menü und dann auf den Add new record Button um eine zweite IP Adresse hinzuzufügen.


Haben Sie mehr als zwei IP Adressen, fügen Sie sie hier ein indem Sie den oberen Schritt wiederholen.

Um die virtuelle Maschine zu erstellen, klicken Sie auf Virtual servers im linken Menü und dann auf den Add new record Button:


Geben Sie den Hostnamen ein den die virtuelle Maschine bekommen soll und klicken Sie auf Save. Es könnte einige Minuten dauern bis die virtuelle Maschine fertig ist.

Neu erstellte virtuelle Maschinen können mit folgendem Befehl auf der Shell eingesehen werden:

vzlist -a

CTID NPROC STATUS IP_ADDR HOSTNAME
101 7 running 192.168.0.106 vm1.ispconfig.local


Links

2 Kommentar(e)

Zum Posten von Kommentaren bitte

Kommentare

Von: Sir Henry

Das Ganze geht natürlich auch auf einem Server, auf dem ISPConfig3 bereits installiert ist. Dazu den Mittelteil mit der ISPConfig-Installation einfach überspringen.

Achtung: OpenVZ funktioniert nicht auf Partitionen, bei denen Quota aktiviert ist. Dazu gibt es 3 Lösungsmöglichkeiten:

1. Quota auf der Partition des HN deaktivieren
2. Eine neue Partition ohne Quota für OpenVZ konfigurieren
3. Quota für die Virtuellen Server deaktivieren

Zu Punkt 3. setzt man einfach in /etc/vz/vz.conf: DISK_QUOTA=no ; danach konnte ich Container anlegen, allerdings nur mit vzctl, nicht mit ISPConfig.


Von: S-204

ich kann derzeit auch keine Container mit ISPConfig anlegen. die .105 habe ich mittels vzctl angelegt und die .106 klappt noch nicht warum ?