7. LUSD Import#
Dieses Kapitel richtet sich an Administratoren, die Benutzerdaten aus der zentralen Datenbank für Lehrer und Schüler des hessischen Kultusministeriums importieren wollen.
UCS@school beinhaltet optionale Komponenten für die Importsoftware, mit der sich ein automatischer und periodischer Import von Benutzerdaten aus LUSD nach UCS@school einrichten lässt.
Siehe auch
- LUSD - Lehrer- und Schülerdatenbank | Digitale Schule Hessen
für Informationen zur Lehrer- und Schülerdatenbank in Hessen.
7.1. Installation#
Die Komponenten für den LUSD Import werden über das Paket ucs-school-import-lusd auf einem UCS Primary oder Backup Directory Node installiert.
Auf der Kommandozeile installieren Sie das Paket mit dem folgenden Befehl:
$ univention-install ucs-school-import-lusd
$ mkdir -p /var/lib/ucs-school-import-lusd/
Um Daten aus LUSD abrufen zu können, muss sich das System beim hessischen Kultusministerium authentifizieren.
Dazu ist ein privater Schlüssel erforderlich, den Sie als Datei /var/lib/ucs-school-import-lusd/auth_key
im UCS-System
ablegen müssen.
Wichtig
Um den privaten Schlüssel zu erhalten, wenden Sie sich bitte an Ihre Kontaktperson bei Univention.
Sie müssen den Schlüssel manuell auf das UCS@school System kopieren.
Stellen Sie außerdem mit folgendem Befehl sicher, dass die Datei nur von dem Benutzer root
ausgelesen werden kann.
$ chown root:root /var/lib/ucs-school-import-lusd/auth_key
$ chmod 600 /var/lib/ucs-school-import-lusd/auth_key
7.2. Verwendung#
Das Paket ucs-school-import-lusd erstellt während der Installation einen Cron Job, der den LUSD Import täglich ausführt.
Der Name des Jobs lautet LUSD_import
.
Der Cron Job wird dabei durch UCR Variablen konfiguriert, wie im
UCS Handbuch
beschrieben.
Für den Cron Job wählt das Paket ucs-school-import-lusd einen zufälligen Zeitpunkt innerhalb des Betriebszeitraumes der LUSD Schnittstelle. Die LUSD Schnittstelle stellt ihre Daten nur während des Betriebszeitraum von 06:00 bis 22:00 Mitteleuropäische Zeit zur Verfügung.
Warnung
Der Cron Job lässt sich beliebig anpassen und auf eine andere Zeit verlegen. Beachten Sie dabei, dass die LUSD Schnittstelle nur während des Betriebszeitraums zur Verfügung steht.
Der Cron Job führ das Skript /usr/share/ucs-school-import-lusd/scripts/lusd_import
aus.
Als Administrator können Sie das Skript auch manuell starten, um einen LUSD Import durchzuführen:
$ /usr/share/ucs-school-import-lusd/scripts/lusd_import
Dabei lädt das Skript die Daten für alle konfigurierten Schulen herunter und importiert diese über die UCS@school Importsoftware. Die Parameter, die das Skript akzeptiert, erläutert der Abschnitt Kommandozeilenparameter.
Der Abschnitt Konfiguration erläutert die Konfiguration von Schulen für den LUSD Import.
Der LUSD Import verwendet zwar ein eigenes Skript, um die benötigten Daten vor dem Import herunterzuladen, ist aber ansonsten ein ganz normaler SiSoPi UCS@school Import. LUSD Import verwendet daher alle Hooks, die für den Import konfiguriert worden sind.
Bemerkung
Die LUSD Datenbank verlangt nicht, dass sich Schüler in einer Schulklasse befinden müssen.
Da dies allerdings im Datenmodell von UCS@school vorgesehen ist, werden alle Schüler ohne Schulklasse
automatisch in eine Klasse mit dem Namen lusd_noclass
eingetragen.
Es gilt allerdings zu beachten, dass der LUSD Import spezielle Konfigurationsdateien verwendet.
Diese befinden sich im Ordner /usr/share/ucs-school-import-lusd/import-config/
.
Sollten die dort hinterlegten Einstellungen nicht den Anforderungen Ihrer Umgebung entsprechen, können neue Konfigurationen
von diesen abgeleitet werden.
Im Abschnitt Konfiguration ist beschrieben, wie sich andere Konfigurationsdateien für den LUSD Import
nutzen lassen.
7.2.1. Logging#
Die Logs für den LUSD Import befinden sich in der Datei /var/log/univention/ucs-school-import-lusd.log
.
Diese Datei enthält die Log Einträge des Kommandozeilenprogramms lusd_import.
Da es sich letztlich um einen normalen UCS@school Import handelt, findet man zusätzliche Informationen in den UCS@school Import Logs.
Wenn Sie als Administrator das Log Level auf DEBUG
setzen,
fügt das LUSD Kommandozeilenprogramm zusätzlich das gesamte Log des UCS@school Import Prozesses der Log Datei
des LUSD Kommandozeilenprogramms hinzu.
7.3. Konfiguration#
Der LUSD Import wird über UCR konfiguriert. Folgende Variablen sind verfügbar:
- ucsschool/import/lusd/log_level#
Bestimmt das Log Level für die Log Einträge, die dieser Import generiert. Erlaubte Werte sind:
DEBUG
,INFO
,WARNING
,ERROR
undCRITICAL
mit dem StandardwertINFO
.
- ucsschool/import/lusd/student_import_config_path#
Bestimmt den Dateipfad zu der Konfigurationsdatei für den Import von Schülern. Dabei handelt es sich um eine normale Konfigurationsdatei des Imports, wie sie im Abschnitt Konfiguration beschrieben ist. Der Standardwert ist
/usr/share/ucs-school-import-lusd/import-config/user_import_lusd_student.json
. Überschreiben Sie diese Einstellung nur, wenn der Import von Schülerkonten eine von der Standardkonfiguration abweichende Konfiguration verwenden soll.
- ucsschool/import/lusd/teacher_import_config_path#
Bestimmt den Dateipfad zu der Konfigurationsdatei für den Import von Lehrkräften. Dabei handelt es sich um eine normale Konfigurationsdatei des Imports, wie sie im Abschnitt Konfiguration beschrieben ist. Der Standardwert ist
/usr/share/ucs-school-import-lusd/import-config/user_import_lusd_teacher.json
. Überschreiben Sie diese Einstellung nur, wenn der Import von Lehrerkonten eine von der Standardkonfiguration abweichende Konfiguration verwenden soll.
- ucsschool/import/lusd/schools/.*#
Damit die Daten einer Schule importiert werden können, müssen Sie als Administrator diese erst für den LUSD Import konfigurieren. Da die Möglichkeit besteht, dass Schulen in der zentralen Datenbank für Lehrer und Schüler des hessischen Kultusministeriums eine andere Bezeichnung haben als in UCS@school, müssen Sie die Beziehung zwischen Schulen in UCS@school und dem LUSD explizit herstellen.
Dafür müssen Sie für jede Schule, für die der LUSD Import Daten importieren soll, eine UCR Variable in der Form
ucsschool/import/lusd/schools/SCHULKUERZEL=DIENSTSTELLENNUMMER_IN_LUSD
erstellen.
7.3.1. Kommandozeilenparameter#
Neben den UCR Variablen bietet das Skript /usr/share/ucs-school-import-lusd/scripts/lusd_import
noch einige Optionen, die Sie beim direkten Aufruf einstellen können.
- dry_run#
Diese Einstellung wird direkt an die UCS@school Importsoftware weitergegeben und bestimmt, ob ein
dry-run
ausgeführt werden soll oder nicht. Mehr Informationen zumdry-run
entnehmen Sie dem Abschnitt Konfiguration entnehmen. Erlaubte Werte sind:true
undfalse
mit dem Standardwertfalse
.
- skip_fetch#
Diese Einstellung dient Software-Entwicklern zum Testen der LUSD Import Software. Erlaubte Werte sind
true
undfalse
. Der Standardwert istfalse
. Bei dem Werttrue
ruft der LUSD Import keine Daten ab, sondern arbeitet mit den bereits vorhandenen Daten. Belassen oder setzen Sie den Wert im allgemeinen Betrieb auffalse
.
- log_level#
Bestimmt das Log Level für die Log Einträge, die dieser Import generiert. Erlaubte Werte sind:
DEBUG
,INFO
,WARNING
,ERROR
undCRITICAL
mit dem StandardwertINFO
.
7.4. Fehlerbehandlung#
Falls es bei dem LUSD Import zu Problemen kommt, finden Sie in diesem Abschnitt einige Möglichkeiten, mit denen Sie eventuell ein Problem selbst lösen können.
Wichtig
Konsultieren Sie immer zuerst die Log Datei, um potentielle Probleme zu identifizieren.
Die Datei mit den Log-Einträgen lautet /var/log/univention/ucs-school-import-lusd.log
.