Zurück  

Vorbereiten von Debian Jessie für Proxmox

Nach dem Neustart bitte als Benutzer einloggen, ein Terminal öffnen und mit 'su -' und dem Root-Passwort zum Chef aufsteigen.

Achtung: jetzt müssen alle Festplatten angeschlossen sein!

System aktualisieren

Die folgenden grossen Pakete brauche ich auf dem Server nicht. Weg damit - nicht dass der Upgrade noch Updates für die macht...

DL
apt-get remove
 libreoffice-core         // Office-Paket
 libreoffice-common
 xsane-common             // Scanner
 quodlibet                // Musik-Verwaltung
 vlc                      // Video-Player

Und jetzt noch die rund 160 überflüssigen Pakete entfernen

DL
apt-get autoremove

Es macht Sinn, einen Server zu wählen, der netz-geografisch in der Nähe ist.

Zusätzlich müssen wir auch noch das Proxmox-Repository eintragen.

Bei mir sieht die '/etc/apt/sources.list' dann so aus:

DL
deb http://ftp.ch.debian.org/debian jessie main
deb http://ftp.ch.debian.org/debian jessie-updates main
deb http://security.debian.org/ jessie/updates main

deb [arch=amd64] http://download.proxmox.com/debian jessie pve-no-subscription

(Als Editor stehen für die Konsole vi und nano zur Verfügung - der grafische Editor von XFCE ist mousepad.)

Zusätzlich muss noch der Key für Proxmox bestätigt werden

DL
wget -q http://download.proxmox.com/debian/key.asc -O- | apt-key add -

Jetzt kommt der 'Klassiker'

DL
apt-get update
apt-get upgrade

Einige notwendige Pakete.

DL
apt-get install
 iceweasel-l10n-de        // Deutsch
 attr                     // erweiterte Datei-Attribute
 acl                      // AccessControlList Tools
 gdisk                    // fdisk für GPTk
 ntp                      // Zeit periodisch Abgleichen
 ssh                      // Fernwartung
 postfix                  // ersetzt exim
 freerdp-x11              // Windows VM per RDP anstelle der Konsole
 php5-cli                 // PHP-Interpreter

Zu Postfix: Internet-Site wählen, der Hostname müsste passen (bitte kontrollieren! und gegebenenfalls zurück zum Start!)

Optional, aber für mich standard

DL
apt-get install
 mc                       // Midnight-Commander
 joe                      // Einfacher Text-Editor
 gparted                  // Partitions-Verwaltung
 gddrescue                // erweitertes DD
 hdparm                   // Disk-Parameter bearbeiten
 gsmartcontrol            // Disk-Status auslesen
 wodim                    // CD/DVD brennen

Kernel Update

Proxmox bringt einen eigenen aktuelleren Kernel mit.

DL
apt-get install
 pve-headers-4.4.35-2
 pve-kernel-4.4.35-2
 pve-firmware

Reboot

Wichtig #1: unbedingt den 4.4.35 und nicht den 3.16.0 wählen!
Standard müsste der richtige sein, aber bitte kontrollieren!

Wichtig #2: Falls die grafische Oberfläche nicht gestartet wird und ein Intel-Prozessor mit integrierter Grafik zuständig ist, muss die Grub-Konfiguration unter /boot/grub/grub.cfg ergänzt werden

linux /boot/vmlinuz-[...] ro quiet
linux /boot/vmlinuz-[...] ro quiet momodeset i915.modeset=0

Diese Anpassung muss nach jedem Kernel- oder Grub-Update (genauer: immer wenn die grub.conf automatisch generiert wird) erneuert werden! Also zum Beispiel gleich nach dem nächsten Schritt: Durch das entfernen des Debian-Kerns wird die grub.conf automatisch neu erstellt, und die Optionen fehlen wieder...

Nach dem erfolgreichen Neustart (mit grafischer Oberfläche) geht es hier weiter...

Netzwerk-Konfiguration

Als erstes müssen wir den Network-Manager entfernen. Wir verwalten die Netzwerke mit proxmox.
Gleichzeitig können wir auch den Debian-Kernel und den OS-Prober (Grub-Komponente) entfernen.

DL
apt-get remove
 network-manager
 linux-image-3.16.0
 os-prober

Wie bereits erwähnt hat der Rechner 2 Schnittstellen.

Bis auf weiteres ist nur die externe 'eth0' angeschlossen! Die interne 'eth1' bleibt bis auf weiteres inaktiv.

Nach der Installation der Proxmox-Dienste lässt sich die Domain nicht mehr ändern, die IP-Adresse aber schon. Deshalb nutzen wir im Moment auf der externen Karte die interne domain "intern.comasys.ch". Der Host wird auf keiner der physikalischen Netzwerk-Adressen erreicbar sein sondern nur auf der internen "192.168.99.248" und über die Firewall mit der Aussenwelt in Kontakt treten.

Die interne IP-Adresse des Systems muss unbedingt statisch sein, ansonsten wird die folgende resolv.conf durch den dhcp-Client überschrieben. Im folgenden gehe ich davon aus, dass der aktuelle Router die IP 62.2.169.40 hat, und dass die .248 frei ist.

/etc/network/interfaces

DL
auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
  address 62.2.169.248
  netmask 255.255.255.240
  gateway 62.2.169.40

auto eth1
iface eth1 inet manual

/etc/resolv.conf

Als Name-Server setzte ich für den Moment den öffentlichen von Google ein.

Die Domain muss gültig sein. Die hier als Beispiel verwendete 'local.comasys.ch' muss ZWINGEND durch eine gültige Domain ersetzt werden!

Weder die Domain noch der Host-Name lassen sich nach der Installation von Proxmox ändern - zumindest nicht mit vernünftigem Aufwand. Wer also bei der Installation des Debian-Systems nicht die gültige Domain oder den passenden Host-Namen eingetragen hat, hat jetzt die letzte Möglichkeit zur Korrektur!

DL
domain intern.comasys.ch
nameserver 8.8.8.8

/etc/hosts

DL
127.0.0.1	localhost
62.2.169.248	proxmox1.intern.comasys.ch proxmox1
::1	localhost ip6-localhost ip6-loopback
ff02::1	ip6-allnodes
ff02::2	ip6-allrouters

/etc/hostname

DL
proxmox1

System-Konfiguration

Viele meiner Scripts sind für die bash optimiert und funktionnieren mit der dash nicht

DL
dpkg-reconfigure dash

Ich bin Schweizer, also brauche ich sowohl de_CH-8859-1 (optional, nicht zwingend) als auch de_CH-UTF-8 mit UTF-8 als default

DL
dpkg-reconfigure locales

Und die TimeZone auf Europe/Zürich

DL
dpkg-reconfigure tzdata

Nach dem ich den MidnightCommander installiert habe, setze ich den 'mcedit' als Standard-Editor

DL
update-alternatives --config editor

Falls die Tastatur falsch konfiguriert sein sollte:

DL
dpkg-reconfigure keyboard-configuration

ZFS

Wer ZFS noch nicht kennt, hat hier was zum lesen:

Für Debian-Jessie steht ein Backport zur verfügung.

Das Repo wird mit folgender Zeile in /etc/apt/sources.list aktiviert

deb http://ftp.debian.org/debian jessie-backports main contrib

Weiter mit

apt-get update
apt-get install -t jessie-backports zfs-dkms

Reboot #2

Wichtig: Anschliessend werden die Festplatten eingerichtet. Die weiteren Platten müssen spätestens jetzt angeschlossen werden!

Gegebenfalls jetzt also nicht neustart, sondern runterfahren und ausschalten, die Platte(n) anschliessen und Rechner wieder einschalten.

Nach diesem Neustart ist sowohl die neue Netzwerk-Konfiguration aktiv, als auch das ZFS bereit.

Jetzt müssen wir noch ZFS-Parameter anpassen:

DL
zfs set acltype=posixacl Pool1
zfs set aclinherit=passthrough Pool1

Festplatte(n) vorbereiten

In der Regel habe ich eine SSD plus mindestens eine Festplatte. Auf der SSD ist eine kleine System-Partition die bereits bei der Installation von Debian erstellt wird. Der Rest der SSD wird als Proxmox-Storage verwendet, wobei ich in der Regel ca 10% freilasse (mit aktuellen SSD wäre das eigentlich nicht mehr notwendig, die haben in der Regel genug Reserve).

Sowohl /temp als auch Swap sind nicht auf der SSD sonder auf einer Festplatte. Auch die Datenpartition landet auf einer Festplatte, ebenso ein Bereich für Proxmox-Backup.

Wie gross die Proxmox-Storage sein muss hängt davon ab, wieviele CT und VM notwendig sind. Die CT (Container) und VM (Virtual Machines) liegen in einem ZFS Pool. Für einen Debian-CT reichen 2GB, alfällige Daten-Partitionen für diese CT habe ich auf der Festplatte und hole die mit Bind-Mount in den CT. Für eine Windows-7 VM braucht es 24G (hibernate schalte ich jeweils aus, den Swap setze ich manuell auf 512MB).

Wenn die Windows-VM als Datenbank-Server läuft, erstelle ich in der Regel eine zweite virtuelle Platte. Von diesen Daten-Platten mache ich auch keine Proxmox-Backups, sondern erstelle mit den jeweiligen Datenbank-Tools ein Backup auf einer per Samba gemounteten Backup-Partition. Details dazu folgen im weiteren Verlauf der Installation abhängig von der Disk-Konfiguration.

ACHTUNG:
falls nach dem partitionnieren die neuen Partitionen mit "ls -la /dev/sd*" nicht sichtbar sind, muss der Kernel dazu gezwungen werden, die Tabellen neu einzulesen. Ich nutze dazu 'gparted' - starten und gleich wieder verlassen. Falls das nichts nützt, bleibt leider nur ein Neustart.

Alternative Platten-Layouts:

Bitte gewünsche Konfiguration auswählen

Das weitere Vorgehen ist abhängig von den vorhandenen Platten!

Zurück