Das habe ich jetzt mehrfach gelesen.
Das mysql-Backend für Konfigurationsdaten steht seit opsi 4.0 zur Verfügung.
Dieses Modul ist momentan eine kofinanzierte opsi Erweiterung. Das bedeutet die Verwendung ist nicht kostenlos.
Weitere Details hierzu finden Sie in Abschnitt 9.1, „Freischaltung kostenpflichtiger Module“.
Dennoch:
Wesentliche Merkmale des Backends mysql :
- Optional (nicht das default Backend)
- Für Inventarisierungsdaten kostenfrei, für die Nutzung für sonstige Daten benötigen Sie eine kostenpflichtige Freischaltung.
Im Rahmen der Inventarisierungsdatenverwaltung ist es jedoch zwingend notwendig, eine Verknüpfung der inventarsierten Daten mit den Hosts herzustellen. Ansonsten bringt mir das ja garnichts... Denn ohne Host-Tabelle fehlt eine Verknüpfung der Daten mit den tatsächlichen Rechnern und ich habe halt beispielsweise irgendwelche Soundkarten aufgelistet, kann sie aber nicht zuordnen. Ich weiß, dass eine host_id in den HARDWARE_CONFIG_*-Tabellen enthalten ist, jedoch wäre es wesentlich einfacher die Abfragen über die Host-Liste laufen zu lassen, als sich alles zusammen zu klauben.
Meine dispatch.conf sieht aktuell wie folgt aus:
Code: Alles auswählen
backend_.* :file, opsipxeconfd, dhcpd
host_.* :mysql, opsipxeconfd, dhcpd
productOnClient_.* :file, opsipxeconfd
configState_.* :file, opsipxeconfd
license.*:mysql
softwareLicense.*:mysql
audit.*:mysql
.*:file
Damit bekomme ich beim Anlegen eines Clients die folgende Fehlermeldung:
Apr 12 14:57:35.187 2017 -- Opsi service error: [Exception] ConfigState needs existing file '/var/lib/opsi/config/clients/test-client.opsi.local.ini' ident '{'configId': u'clientconfig.depot.id', 'objectId': u'test-client.opsi.local'}', fileType 'ini'
Allerdings erscheint der angelegte Client nach einem Reload in der Clientliste und der MySQL-DB. Löschen geht ohne Fehlermeldung von statten. Eine solche Datei erstellt er jedoch nicht.
Ich habe schon einige Möglichkeiten in der dispatch.conf ausgetestet, und so verläuft alles am harmlosesten (Nur 1 Fehlermeldung beim Anlegen des Clients.)
Wenn ich die in der dispatch.conf angegebene (per default auskommentierte) Standard-Konfiguration für das MySQL-Backend verwende, funktioniert die Synchronisation mit der Host-Tabelle nicht.
# backend_.* : file, mysql, opsipxeconfd, dhcpd
# host_.* : file, opsipxeconfd, dhcpd
# productOnClient_.* : file, opsipxeconfd
# configState_.* : file, opsipxeconfd
# license.* : mysql
# softwareLicense.* : mysql
# audit.* : mysql
# .* : file
Ist diese Fehlermeldung jetzt ernst zu nehmen?
Und...
Muss man nun diese Extra-Lizenz erwerben um die Host-Tabelle ordentlich befüllen zu können ohne Fehlermeldung? Ich will ja gar nicht mehr damit machen als dort die hwinvent-Daten abzulegen und ggfs. ein paar Abfragen dort laufen zu lassen.
Wäre schön wenn ich da aufgeklärt werden könnte, ich verstehe es nicht.