[[PageOutline]] = Einen !ProxMox 2 - Server aufsetzen = Ziel ist es einen !ProxMox 2.0-Server auf einem Debian6 (Squeeze) mit Raid1 über mehrere Platten und LVM zu installieren. == Debian Squeeze installieren == Man startet von CD oder USB-Stick einen Debian-Squeeze (6.X) Installer. Nach der Auswahl der Spache, Tastaturlayout, etc. muss man die Platte manuell einrichten. Wir verwenden mehrere Platten als Raid1-Array (maximale Sicherheit). === Raid1 === Zunächst muss auf allen Platten der gesamte Platz für Raid1 partitioniert werden. Seit Grub2 kann Grub direkt von einem LVM-Volume auf einem Raid1 booten (früher musste ein extra Raid1 für /boot erstellt werden, so steht es auch noch in der Proxmox-Anleitung http://pve.proxmox.com/wiki/Install_Proxmox_VE_on_Debian_Squeeze). '''auf jeder Platte:''' Partition für Raid (komplette Platte als Primärpartition) erstellen - Typ: RAID zuweisen - Bootflag setzen '''Software-RAID konfigurieren:''' MD-Gerät erstellen - Typ: Raid1 - alle Platten einbinden / Reservegeräte: 0 - Partitionen auswählen - erstellen === LVM === Nun muss ein LVM auf dem Raid1 aufgesetzt werden, das das Device /dev/md0 benutzt. In diesem LVM werden logische Volumes erstellt (Größe ist eigentlich unwichtig, da diese später verändert werden kann, das ist die Stärke von LVM): - LVM konfigurieren - zunächst eine Volumegruppe (pve) auf /dev/md0 erstellen - logische Volumes einrichten - root - minimal 4 GB laut PVE-Wiki (bei uns: 10GB) - swap - ungefähr Größe des Hauptspeichers (bei uns 16GB) - eventuell data (falls OpenVZ verwendet werden soll) - hier lagern die OpenVZ-Container, Backups und die Konfigurationsdateien - Partitionsgöße je nachdem, wieviel benötigt wird - Wegen der größeren Backupperformance werden wir die virtuellen Platten als LVM-Volumes bereitstellen - unbedingt am Ende Platz freilassen, dann funktionieren auch die Sekundenbackups - Fertigstellen der LVM-Konfiguration - logische Volumes einhängen - root - Einhängen nach / - ext3 (empfohlen im PVE-Wiki) - swap - eventuell pve-data - Einhängen nach /var/lib/vz - Partitionsgöße je nachdem, wieviel benötigt wird - ext3 (empfohlen im PVE-Wiki) Damit sind die Partitionierarbeiten erledigt. Für die KVE-VM können virtuelle Harddisks als LVM-Volumes generiert werden. Diese können dann per Snapshot im laufenden Betrieb "angehalten" werden, das Snapshot kann man dann in ruhe sichern OHNE dabei die VM anhalten zu müssen. Nach dem Sichern wird das Snapshot einfach verworfen. === Installieren des Debian 6 - Systems === Das Basissystem wird nun installiert und gebootet. Weiter geht es dann nach der Installationsanleitung unter http://pve.proxmox.com/wiki/Install_Proxmox_VE_on_Debian_Squeeze Achtung: Editieren der Datei /etc/hosts notwendig, damit der pve-cluster die lokale IP auflösen kann {{{ 127.0.0.1 localhost IP Name.kg-fds.de Name }}} == !WebManagement-Konsole == Das !WebManagement erreicht man auf Port 443 (Proxmox2: Port 8006). Aus dem roten Netz ist der Zugang im BelWUE-Router gesperrt (Tunneln über Port 22!). Aus dem grünen Netz ist der Zugang über eine .htaccess-Datei in /usr/share/pve-manager/root/ ausgeschaltet (Tunneln über Port 22!). == VNC - Serverbildschirme == Proxmox stellt die VNC-Konsolen mit dem Befehl {{{ nc -v -l -p[PORT] -c "qm vncproxy [VMID]" }}} extern zur Verfügung und verwendet dazu allerdings das VNC2-Protokoll mit Authentifizierung und Verschlüsselung. Das kann derzeit nur TigerVNC (Windows) unter Linux kein einziger VNC-Client. Der mitgelieferte Java-Client hat bei mir nicht funktioniert. === OpenVZ === Für OpenVZ-Clients ist es mit dem Befehl {{{ vzctl enter [VMID] }}} kein Problem, in die VM zu kommen. Der Rest kann über das WebFrontend erledigt werden. === KVM === In der /etc/qemu-server/[VMID].conf (Proxmox2: /etc/pve/qemu-server/[VMID].conf) kann die Zeile {{{ args: -vnc 10.16.209.X:0, password # VNC-Konsole nur auf Lehrernetz args: -vnc :0, password # VNC-Konsole auf allen Interfaces }}} eingefügt werden, dann ist die VM aus dem grauen Netz auf Port 5900 erreichbar. Bei mehreren VNC-Konsolen die Null durch eine andere Zahl ersetzen. Damit die Konsole erreichbar ist muss nach dem Start der VM ein Passwort in der Konsole (qm monitor oder im WebInterface) ein Paswort setzen mit set_password vnc . == Weitere Installationen Zum praktischen Arbeiten mit dem neuen Proxmox braucht man noch ein paar Kleinigkeiten, die hier zusammengefasst sind: === Ssh-Schlüssel von root kopieren Während der Einrichtung des neuen Servers wurde ein ssh-Schlüssel für den Nutzer "root" neu erstellt. Den benötigen wir nicht, stattdessen werden wir unseren netzwerkweiten ssh-Schlüssel für root auf die neue Maschine kopieren: Auf dem neuen Proxmox: {{{ proxmox# cd .ssh proxmox# mv id_rsa.pub id_rsa.pub--disabled proxmox# mv id_rsa id_rsa--disabled }}} Vom **paedml** aus (für den richtigen Hostnamen einsetzen): {{{ paedml# scp id_dsa :.ssh paedml# scp id_dsa.pub :.ssh paedml# ssh-copy-id -l /root/.ssh/id_dsa.pub }}} Ab jetzt sollte man sich vom paedml auf dem proxmox und umgekehrt per ssh und ohne Eingabe des Passworts einloggen können. Abschließend die Passwortautentifizierung in /etc/ssh/sshd_config verbieten: {{{ PasswordAutentication no }}} === Screen, PartEd, Subversion und LTSP-Setup-Skript Um die LTSP-Setup-Skripte per svn auszuchecken, brauchen wir zunächst das subversion-Paket: {{{ proxmox# apt-get update proxmox# apt-get install screen parted subversion }}} Dann können die Skripte ausgecheckt werden (vgl. AdminSvn) mit {{{ proxmox# svn checkout svn+ssh://paedml.kg-fds.de/srv/svn/keplertools/LTSP-setup/trunk LTSP-setup }}}