== Installationshinweise: Backup-Server == <> Der Backup-Server wird +/- als letzte Komponente dem Schul-Setup hinzugefügt. Der Backup-Server steht häufig im Schulnetz, er wird an das Backbone-Netz der Schule angeschlossen, so wie die Virtualisierungs-Server, die Switches und andere Komponenten, die aus dem Debian Edu Netz nicht erreichbar sein sollen. Der Backup-Server verbindet sich via VPN mit dem Gateway des Schulnetzes und kann so auf die virtuellen Maschinen im Schulnetz (also auch auf den Hauptserver TJENER) zugreifen. Der Zugriff über VPN ist bzgl. der Geschwindigkeit nicht optimal. Aber: ein Zugriff via VPN erlaubt eine sehr flexible Wahl des Aufstellungsort für den Backup-Server. Und: der Backup-Server ist nicht teil des pädagogischen Netzwerks, sondern liegt topologisch außerhalb (Schutz der gesicherten Daten). === Vorbereitungen === Die zu sichernden System sollten bereits installiert sein, erst dann ist die Einrichtung des Backup-Servers sinnvoll. Bei der Wahl der Festplattenkonfiguration hat es sich bewährt, für das Betriebssystem Festplatten zu verwenden, die kleiner 2 TiB groß sind (so dass eine DOS Partitionstabelle verwendet werden kann). Für die Backup-Festplatten kommen große und langsame (wenig Temperatur entwickelnde) Festplatten zum Einsatz. Beispielsetup: * 2x 500 GiB als Festplatten 1 + 2, davon werden ca. 30 Gib für das Betriebssystem verwendet, der Rest kann in den Backup-Pool (LVM) miteinfließen * 4x 2 TiB als Backup-Storage * immer zwei Festplatten werden partitionsweise als Raid 1 Device zusammen gehängt * über alle Festplattenpartitionen, die zur Datensicherung gehören wird ein Logisches Volume gespannt === Basisinstallation === Auf dem Backup-Server wird ein minimales Debian System installiert (das jew. Debian stable). === Installation starten === * Ein startfähiges Medium mit [[ http://www.debian.org/CD/http-ftp/|Debian GNU/Linux stable]] (CD-ROM oder USB Stick) erstellen. * Vom erstellten Medium die für den Backup-Server vorgesehene Hardware booten. * Die folgende Antworten in den angezeigten Menüs auswählen: ''Install'', ''German'', ''Deutschland'' und ''Deutsch'' * Die Netzwerkschnittstelle mit Zugang zum Internet angeben (in Klammern markiert durch die Bezeichnung ''Copper''). Der Server sollte so verkabelt sein, dass {{{eth0}}} für das Backbone-Netzwerk genutzt wird. === Rechnernamen und erste Benutzer anlegen === * Rechnername: {{{backup-01}}} * domain: {{{backbone}}} * Passwort für den Benutzer: {{{root}}} eintragen. ''Wichtig!!! Passwort notieren!!!'' * Vor- und Zuname für neuen/ersten Benutzer: {{{Local Administrator}}} * Benutzername für lokalen Administrator: {{{locadm}}} * Passwort für den lokalen Administrator eintragen und bestätigen. ''WICHTIG!!! Passwort notieren!!!'' * Im nachfolgenden Dialog des Debian Installers werden die Festplatten partitioniert. * Partitionierungs-Methode: manuell (nur die ,,kleinen" Festplatten konfigurieren) * root-Dateisystem: 20Gb, als Software RAID-1 (/dev/md0) konfigurieren * Swap-Space: Arbeitsspeicher +2Gb auf alle schnellen Platten gleichmäßig verteilen * optional: Arbeitsspeicher +2Gb auf die zwei langsamen Platten gleichmäßig verteilen * Raid-Device (/dev/md0) als ext3-Dateisystem formatieren, Einhängepunkt: ,,/" * Software-Installationsprofil ({{{tasksel}}}): grafische Oberfläche abwählen, SSH-Server zusätzlich auswählen Wenn der Server nach der Installation nicht bootet, sollte nach einem {{{grub-install /dev/sdX}}}, {{{grub-install /dev/sdY}}} UND {{{grub-install /dev/md0}}} sowie einem anschließenden {{{update-grub}}} alles funktionieren. === Grundeinrichtung === 1. Nachdem die Grundinstallation abgeschlossen ist als {{{locadm}}} einloggen. 1. Als {{{root}}} das Programm {{{sudo}}} installieren. {{{ $ su -c "apt-get install sudo" }}} 1. Den User {{{locadm}}} in die Gruppe {{{sudo}}} eintragen. Eingabe mit {{{root}}}-Kennwort bestätigen. __Danach:__ ausloggen und wieder als {{{locadm}}} einloggen. {{{ $ su -c "adduser locadm sudo" }}} 1. Der Posix-Gruppe {{{sudo}}} den Aufruf des Kommandos {{{sudo}}} ohne Eingabe des Passworts erlauben:{{{ locadm@virt-man-01:~# su -c "diff -u /etc/sudoers.orig /etc/sudoers" --- /etc/sudoers.orig 2012-07-27 12:43:30.000000000 +0200 +++ /etc/sudoers 2012-07-27 12:42:07.000000000 +0200 @@ -19,6 +19,6 @@ # Allow members of group sudo to execute any command # (Note that later entries override this, so you might need to move # it further down) -%sudo ALL=(ALL) ALL +%sudo ALL=(ALL) NOPASSWD: ALL # #includedir /etc/sudoers.d }}} 1. Den Benutzer {{{locadm}}} seine {{{sudo}}}-Rechte wahrnehmen lassen:{{{ $ newgrp sudo }}} 1. Nachinstallation von Software:{{{ $ sudo apt-get install mc vim }}} 1. Nach der Installation {{{vim}}} als Editor in den Debian "Alternatives" festlegen.{{{ sudo update-alternatives --config editor }}} 1. Das Programm Midnight Commander starten (Kommando: {{{mc}}}): * F9 drücken * Optionen -> Konfiguration: [x] Internen Editor benutzen * Optionen -> Einstellungen speichern * F10: Midnight Commander beenden 1. Den Midnight Commander Editor (Kommando: {{{mcedit}}}) starten: * F9 drücken * Menüpunkt: ''Optionen -> Allgemein'' * "Backspace durch Tabs" auswählen * "Tabs mit Leerzeichen auffüllen" auswählen * "Return rückt automatisch ein" abwählen * F10: Editor beenden === Aktualisierung gezielter Pakete via Debian squeeze-backports und ITZkS-Repository === Das IT-Zukunft Schule Paket-Repository zu den APT Quellen hinzugefügt:{{{ {{{ $ editor /etc/apt/sources.list.d/itzks.list """ deb http://packages.it-zukunft-schule-de/debian squeeze main deb http://packages.it-zukunft-schule-de/debian squeeze-backports main """ $ apt-get update && apt-get install itzks-keyring && apt-get update }}} Aus diesen Quellen werden die folgenden Pakete installiert:{{{ $ apt-get install itzks-systems-backup }}} === Festplattenpartitionierung (im Detail) === Gehen wir eine Backup-Server Einrichtung mit 6 Festplatten durch. * /dev/sda, /dev/sdb 500 GiB * /dev/sdc - /dev/sdf 2 TiB Bei der Installation haben wir /dev/sda1, /dev/sdb1 zu /dev/md0 zusammengefasst. /dev/sda2 und /dev/sdb2 sind Swap-Partition. D.h. für die Raid-Konfiguration führen wir die folgenden Befehle aus:{{{ # /dev/sda Partitionionierung fortsetzen: restlichen Speicherplatz als /dev/sda3 bereitstellen, Partitionstyp: Linux Raid (fd): $ fdisk /dev/sda # /dev/sdb Partitionionierung fortsetzen: restlichen Speicherplatz als /dev/sdb3 bereitstellen, Partitionstyp: Linux Raid (fd): $ fdisk /dev/sdb # /dev/sdc partitionionieren: eine primäre Partition sdc1, gesamtes Device, Partitionstyp: Linux Raid (fd): $ fdisk /dev/sdc # /dev/sdd partitionionieren: eine primäre Partition sdd1, gesamtes Device, Partitionstyp: Linux Raid (fd): $ fdisk /dev/sdd # /dev/sde partitionionieren: eine primäre Partition sde1, gesamtes Device, Partitionstyp: Linux Raid (fd): $ fdisk /dev/sde # /dev/sdf partitionionieren: eine primäre Partition sdf1, gesamtes Device, Partitionstyp: Linux Raid (fd): $ fdisk /dev/sdf }}} Jetzt müssen die Partitionstabellen vom Kernel erkannt werden. Für /dev/sda und /dev/sdb wird das ohne Tricks nicht der Fall sein. Am einfachsten ist ein '''Reboot des Backup-Servers''' nach dem Einrichten der Partitionstabellen. Nach dem Reboot richten wir die Raid-1 Devices ein:{{{ # Die Raid Level-1 Devices erstellen $ mdadm --create /dev/md1 -l1 -n2 /dev/sda3 /dev/sdb3 $ mdadm --create /dev/md2 -l1 -n2 /dev/sdc1 /dev/sdd1 $ mdadm --create /dev/md3 -l1 -n2 /dev/sde1 /dev/sdf1 }}} Jetzt markieren wir die einzelnen Raid Device als physische Volumes für unse Backup Storage (LVM):{{{ $ pvcreate /dev/md1 $ pvcreate /dev/md2 $ pvcreate /dev/md3 }}} Diese physischen Volumes werden nun zu einer LVM Volume Group zusammen gefasst:{{{ $ vgcreate vg_backup /dev/md{1,2,3} }}} Und in dieser Volume Group {{{vg_backup}}} wird jetzt ein einziges Logical Volume erstellt:{{{ $ lvcreate vg_backup -n srv+backup -l 100%FREE }}} '''ACHTUNG:''' vor dem nächsten Schritt abwarten, dass die Raid-1 Devices alle mit dem synchronisieren/rebuilden fertig sind. Ansonsten dauert der folgende Formatierungsbefehl sehr lange!!! Überprüfen kann man den Rebuild-Status der Raids mit:{{{ $ cat /proc/mdstat }}} Sind alle Raid-Rebuilds abgeschlossen, kann das logische Volume nun mit dem xfs Dateisystem formatiert werden:{{{ $ mkfs.xfs /dev/vg_backup/srv+backup }}} Als letztes ist die Datei {{{/etc/fstab}}} um den Mount Point des Backup-Storage-Volumes zu erweitern:{{{ $ mkdir -p /srv/backup $ echo "/dev/backup_vg/srv+backup /srv/backup xfs defaults 0 2" >> /dev/fstab $ mount -a }}} Mit dem Befehl {{{mount}}} (ohne Optionen) kann/sollte noch geprüft werden, ob das Backup-Storage-Volume dem System nun unter /srv/backup zur Verfügung steht. === Datensicherung (dirvish) einrichten === Die Datensicherung übernimmt das Perl-Tool [[http://www.dirvish.org/|dirvish]]. Im Paket {{{itzks-systems-backup}}} sind Konfigurations-Templates für die Einrichtung von Dirvish im Kontext eines Debian Edu Netzwerks enthalten. Diese Konfigurationsvorlagen müssen entpackt und an die richtige Stelle kopiert werden. Eine Installationsanleitung liegt dem Paket bei:{{{ $ sudo apt install itzks-keyring itzks-systems-common itzks-systems-backup $ less /usr/share/doc/itzks-systems-backup/examples/README.dirvish }}}