== Basis-Installation Virtualisierungs-Server (Debian jessie) == === Vorbereitungen === Vor der Basisinstallation des ersten Virtualisierungs-Servers muss die [[Technik/Installation/InternetUplink|Internet-Anbindung]] der Schule entsprechend der IT-Zukunft Schule [[Technik/Netzwerk|Netzwerktopologie]] eingerichtet werden. Desweiteren muss eine Backbone-Switch für das Backbone-Netz bereit stehen, welche mit dem Backbone-VLAN des Internet-Routers verbunden ist. Im Backbone-Netz ist standardmäßig ein DHCP-Server aktiv (auf Router für die Internet-Anbindung), so dass angeschlossene Systeme (neue aufzusetzende Server, Notebooks von System-Admins, etc.) sofort Zugriff auf das Internet bekommen können. === Basisinstallation === Der Virtualisierungs-Server stellt den virtuellen Maschinen Teile der Hardware standardisiert zur Verfügung. Der folgende Abschnitt beschreibt eine allgemeine Installation des ersten/zentralen Virtualiserungs-Servers. Die Details der Installation unterscheiden sich dabei je nach Hardware-Ausstattung des Servers und Nutzungsszenario (Größe der Schule, etc.). In den entsprechenden Textpassagen werden Beispielwerte angegeben, die an die Gegebenheiten der jeweiligen Schule individuell angepasst werden. === Installation starten === * Ein startfähiges Medium mit [[ http://www.debian.org/CD/http-ftp/|Debian GNU/Linux stable]] (CD-ROM oder USB Stick) erstellen. Um Verwechslungen vorzubeugen: An dieser Stelle verwenden wir noch nicht Debian Edu / Skolelinux, das kommt erst bei der Installation der virtuellen Maschinen zum Einsatz. * Vom erstellten Medium den Virtualisierungs-Server 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 {{{eth1}}} für das Backbone-Netzwerk genutzt wird. === Rechnernamen und erste Benutzer anlegen === * Rechnername: {{{virt-man-01}}} (weitere Virtualisierungs-Server werden durchnummeriert: {{{virt-man-02}}}, {{{virt-man-03}}}, etc.) * 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 * 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}}}): minimale Installation, zusätzlich SSH-Server auswählen FixMe: 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. 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 sysvinit-core mc vim }}} 1. Server Neustart durchführen 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 1. In {{{/etc/apt/sources.list}}} für alle Varianten {{{contrib}}} und {{{non-free}}} hinzufügen. === Aktualisierung gezielter Pakete via ITZkS-Repository === Zusätzliche APT-Quellen werden hinzugefügt:{{{ $ editor /etc/apt/sources.list.d/itzks.list """ deb http://packages.it-zukunft-schule.de/debian jessie 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-common $ sudo itzks-systems.do_preseed $ apt-get update $ apt-get install x2go-keyring # /etc/apt/sources.list.d/geogebra.list auskommentieren # /etc/apt/sources.list.d/multimedia.list auskommentieren $ apt-get update $ apt-get purge avahi-daemon $ apt-get install itzks-systems-virtman (postfix nur lokal, emails an locadm) }}} KDM und LXDE-Desktop installieren{{{ sudo apt-get install lxde kdm }}} == Einrichtung einer USV == Auf virt-man-01 (USV_MASTER): 1. ssh-keygen als root 1. /root/.ssh/id_rsa.pub -> /root/.ssh/authorized_keys auf backup-01 1. die Datei /etc/apcupsd/doshutdown erstellt: {{{ #!/bin/bash MY_UPS_SLAVES="backup-01" for host in $MY_UPS_SLAVES; do 0/dev/null 2>/dev/null done }}} 1.#4 in /etc/apcupsd/apcupsd.conf folgende Änderungen gemacht: {{{ --- a/apcupsd/apcupsd.conf +++ b/apcupsd/apcupsd.conf @@ -26,7 +26,7 @@ # 940-1524C, 940-0024G, 940-0095A, 940-0095B, # 940-0095C, 940-0625A, M-04-02-2000 # -UPSCABLE smart +UPSCABLE usb # To get apcupsd to work, in addition to defining the cable # above, you must also define a UPSTYPE, which corresponds to @@ -79,8 +79,8 @@ UPSCABLE smart # modbus /dev/tty** Serial device for use with newest SmartUPS models # supporting the MODBUS protocol. # -UPSTYPE apcsmart -DEVICE /dev/ttyS0 +UPSTYPE usb +DEVICE # POLLTIME # Interval (in seconds) at which apcupsd polls the UPS for status. This @@ -135,12 +135,12 @@ ONBATTERYDELAY 6 # If during a power failure, the remaining battery percentage # (as reported by the UPS) is below or equal to BATTERYLEVEL, # apcupsd will initiate a system shutdown. -BATTERYLEVEL 5 +BATTERYLEVEL 60 # If during a power failure, the remaining runtime in minutes # (as calculated internally by the UPS) is below or equal to MINUTES, # apcupsd, will initiate a system shutdown. -MINUTES 3 +MINUTES 10 # If during a power failure, the UPS has run on batteries for TIMEOUT # many seconds or longer, apcupsd will initiate a system shutdown. @@ -184,7 +184,7 @@ KILLDELAY 0 # information server. If netstatus is on, a network information # server process will be started for serving the STATUS and # EVENT data over the network (used by CGI programs). -NETSERVER on +NETSERVER off # NISIP # IP address on which NIS server will listen for incoming connections. diff --git a/default/apcupsd b/default/apcupsd index f8de693..b3d0e25 100644 }}} 1.#5 dann noch apcupsd als "konfiguriert" markieren: {{{ --- a/default/apcupsd +++ b/default/apcupsd @@ -2,4 +2,4 @@ # Apcupsd-devel internal configuration APCACCESS=/sbin/apcaccess -ISCONFIGURED=no +ISCONFIGURED=yes }}} 1.#6 zuletzt: invoke-rc.d apcupsd restart