wiki:AdminProxMox/Archiv_PM2_Aufsetzen
close Warning: Can't synchronize with repository "keplertools" (/srv/svn/keplertools does not appear to be a Subversion repository.). Look in the Trac log for more information.

Version 17 (modified by Rüdiger Kupper, 13 years ago) ( diff )

--

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.

In dieser Gruppe werden vonm uns die Logical Volumes erstellt, die der Proxmox selbst zur Funktion benötigt. Die Logical Volumes, die in den VMs als Festplatten erscheinen, werden später vom Proxmox selbst in dieser VG erstellt. (Frage: sollte man hierfür eine eigene VG einrichten?)

  • logische Volumes für den Proxmox selbst 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
    • systembackup
      • Wird als "local storage" für Backups der VMs benutzt --> genügend Platz vorsehen!
    • 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 data
      • Einhängen nach /var/lib/vz
      • 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).

  • Der Zugang ist über OpenVPN bequem möglich, z.B.: ​https://10.32.1.2 (proxmoxpaedml), ​https://10.32.2.106 (proxmoxltsp6)
  • 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 <password>.

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 <proxmox> den richtigen Hostnamen einsetzen):

paedml# scp id_dsa <proxmox>:.ssh
paedml# scp id_dsa.pub <proxmox>:.ssh
paedml# ssh-copy-id -l /root/.ssh/id_dsa.pub <proxmox>

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:

  PasswordAuthentication no

Screen, kpartx, PartEd, Subversion und LTSP-Setup-Skript

Für das "abbruchsichere" Arbeiten auf entfernten Servern empfiehlt sich unbedingt das screen-Tool. Das Tool kpartx brauchen wir, um von außen in die virtuelle Festplatte des Clients schauen zu können (weil diese eine Partitiontabelle enthält). Früher oder später wird man auch parted nutzen wollen, um die Partitionstabelle des Hostsystems zu überprüfen. Schließlich brauchen wir das subversion-Paket, um die LTSP-Setup-Skripte per svn auszuchecken:

proxmox# apt-get update
proxmox# apt-get install screen kpartx 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
Note: See TracWiki for help on using the wiki.