wiki:LtspServerUpdate
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 10 (modified by Rüdiger Kupper, 15 years ago) ( diff )

Neues nbd-conf-Layout

Update der LtspServer und der LtspClients

Die Software unserer Klassenraum- und Schülerrechner soll auf aktuellem Stand gehalten werden, um den Nutzern ein modernes und produktives System zu bieten. Gleichzeitig soll das System stabil sein, um den täglichen Betrieb (insbesondere von WebUntis) zu gewährleisten.

Als Systemadministratoren müssen wir also die (unmögliche) Aufgabe bewältigen, unser LTSP-System im laufenden Betrieb aktuell und gleichzeitig stabil zu halten.

Laufende Server-Updates

Updates können im laufenden Betrieb über den üblichen Mechanismus erfolgen:

linadmin> sudo apt-get update
linadmin> sudo apt-get dist-upgrade

Die Server sollten jedoch während des Unterrichtsbetriebes nicht neu gebootet werden, weil dazu die jeweiligen LtspClients heruntergefahren würden, an denen möglicherweise Benutzer angemeldet sind.

Die Images der LtspClients werden durch diese Updates nicht beeinflusst und müssen einzeln upgedatet werden (s.u.).

Release-Upgrades

Unser Ziel ist es, den halbjährlichen Zyklus der Edubuntu-Updates mitzumachen. Release-Upgrades der LtspServer müssen in einer längeren schulfreien Phase erfolgen, weil dabei (kleinere) unerwartete Effekte auftreten können, die zunächst die Funktion des LTSP-Systems beeinträchtigen.

In jedem Fall ist vor dem Release-Upgrade eine vollständige Systemsicherung der LtspServer durchzuführen!

TODO: Informationen zur Systemsicherung

Es ist damit zu rechnen, dass nach einem Release-Upgrade zunächst kein Login an den LtspClients möglich ist. Die Ursachen lassen sich aber meist schnell beheben.

Bekannte Probleme

In diesem Abschnitt wird dokumentiert, welche Probleme bei Release-Upgrades früher bereits aufgetreten sind, und wie sie gelöst werden.

GRUB

Die GRUB-Konfiguration der Server wird während des Updates möglicherweise überschrieben. Siehe LtspServerGrub.

NBD

Die Konfiguration des Network-Block-Device-Servers (nbd-server) wird beim Update des LTSP-Paketes möglicherweise überschrieben. Über NBD werden die Images der LtspClients verteilt.

Die Konfigurationsdatei sollte bei einem Aufruf von ltsp-update-image automatisch richtig neu erzeugt werden.

Falls nicht: Die Konfiguration steht im Verzeichnis /etc/nbd-server/. Sie besteht aus dem geneerischen Teil in config und dem Image-spezifischen Teil unter config.d/. Dort müssen die Client-Images als NBD-Devices eingetragen werden. Die Konfiguration sieht typischerweise so aus:

/etc/nbd-server/config:

[generic]
# If you want to run everything as root rather than the nbd user, you
# may either say "root" in the two following lines, or remove them
# altogether. Do not remove the [generic] section, however.
        user = nbd
        group = nbd
        includedir = /etc/nbd-server/conf.d

# What follows are export definitions. You may create as much of them as
# you want, but the section header has to be unique.

/etc/nbd-server/conf.d/ltsp_i386.conf:

[ltsp_i386]
exportname = /opt/ltsp/images/i386.img
readonly = true

Inet-Daemon

Die Konfiguration des Internet-Superservers (inetd) wird beim Update möglicherweise überschrieben. Der inetd horcht an den konfigurierten TCP-Ports und startet bei bedarf die entsprechenden Internetdienste, um die Anfragen zu bearbeiten. Für LTSP sind die TCP-Dienste ldminfod, nbdswapd und nbdrootd nötig und müssen hier konfiguriert werden. Die Konfiguration sieht typischerweise so aus:

/etc/inetd.conf:

# /etc/inetd.conf:  see inetd(8) for further informations.
#
# Internet superserver configuration database
#
#
# Lines starting with "#:LABEL:" or "#<off>#" should not
# be changed unless you know what you are doing!
#
# If you want to disable an entry so it isn't touched during
# package updates just comment it out with a single '#' character.
#
# Packages should modify this file by using update-inetd(8)
#
# <service_name> <sock_type> <proto> <flags> <user> <server_path> <args>
#
#:INTERNAL: Internal services
#discard                stream  tcp     nowait  root    internal
#discard                dgram   udp     wait    root    internal
#daytime                stream  tcp     nowait  root    internal
#time           stream  tcp     nowait  root    internal

#:STANDARD: These are standard services.

#:BSD: Shell, login, exec and talk are BSD protocols.

#:MAIL: Mail, news and uucp services.

#:INFO: Info services

#:BOOT: TFTP service is provided primarily for booting.  Most sites
#       run this only on machines acting as "boot servers."

#:RPC: RPC based services

#:HAM-RADIO: amateur-radio services

#:OTHER: Other services
#<off># sane-port       stream  tcp     nowait  saned:saned     /usr/sbin/saned saned

9571    stream  tcp nowait  nobody /usr/sbin/tcpd /usr/sbin/ldminfod
9572    stream  tcp nowait  nobody /usr/sbin/tcpd /usr/sbin/nbdswapd

2001    stream  tcp nowait  nobody /usr/sbin/tcpd /usr/sbin/nbdrootd /opt/ltsp/images/i386.img

Ein rein kosmetisches Problem ist, dass beim Update des LTSP-Themas vermutlich wieder das Default-Thema verlinkt wird. Das geschieht über den normalen "Alternatives-Mechanismus".

  • /opt/ltsp/i386/usr/share/ldm/themes/ enthält den Link default, der auf das Verzeichnis kepler zeigen sollte.
  • das Verzeichnis kepler sollte identisch mit dem aktuellen (Edubuntu-)LDM-Themenverzeichnis sein. (Also rsync durchführen). Lediglich die Datei logo.png, wird durch unser Logo ersetzt.

Weitere Informationen siehe ​https://help.ubuntu.com/community/UbuntuLTSP/LDMThemeChange.

Update der Client-Images

TODO


Creative-Commons-Lizenz

Die Inhalte dieser Wiki-Seite erscheinen, (wo anwendbar und nicht anderweitig angegeben), unter einer Creative-Commons-Lizenz CC BY NC SA 3.0 Germany. Urheber: Dr. Rüdiger Kupper.

Note: See TracWiki for help on using the wiki.