MySQL-Server
Der opsi-Configserver benötigt Zugriff auf einen MySQL-Server.
Läuft der MySQL-Server auf demselben Rechner,
dann erfolgt die Konfiguration in der Regel automatisch über opsiconfd setup. opsiconfd setup
kümmert sich auch um Datenbank-Migrationen und das Cleanup.
Sollte die automatische Konfiguration nicht funktionieren, oder soll ein externer MySQL-Server verwendet werden, dann können Sie die Konfiguration manuell vornehmen. Dazu verwenden Sie den folgenden Befehl:
opsiconfd setup --configure-mysql
Es erfolgt eine interaktive Abfrage nach den Details zur MySQL-Verbindung. Danach erstellt das Werkzeug die opsi-Datenbank auf dem MySQL-Server und einen Benutzeraccount für den Zugriff.
Konfigurationsdatei
Alternativ bearbeiten Sie die MySQL-Konfiguration in der Datei /etc/opsi/backends/mysql.conf
mit einem Texteditor. Nach dem Speichern Ihrer Änderungen führen Sie das Kommando sudo opsiconfd setup
aus, um die opsi-Datenbank auf dem MySQL-Server zu erstellen bzw. zu aktualisieren.
In den meisten opsi-Umgebungen werden keine weiteren Anpassungen an der MySQL-Konfiguration benötigt. In großen Umgebungen, mit einer hohen Last auf dem opsi-Server, kann es jedoch sinnvoll sein, die MySQL-Konfiguration zu optimieren. Hierbei sind insbesondere die Einstellungen für die Verbindungspool wichtig. Folgende Parameter können in der MySQL-Konfiguration angepasst werden:
connectionPoolSize
-
Anzahl der Verbindungen zur MySQL-Datenbank, die permanent offen gehalten werden.
connectionPoolMaxOverflow
-
Anzahl der zusätzlichen Verbindungen, die bei Bedarf geöffnet werden. Diese zusätzlichen Verbindungen werden wieder geschlossen wenn sie nicht mehr benötigt werden.
Die Verbindungspool-Einstellungen gelten pro opsiconfd-Worker-Prozess.
Die maximale Gesamtzahl der Verbindungen zur MySQL-Datenbank ergibt sich hiermit aus:
(connectionPoolSize
+ connectionPoolMaxOverflow
) * workers
.
Die Anzahl der möglichen Verbindungen limitiert die Anzahl der gleichzeitigen Anfragen an die MySQL-Datenbank.
Ist dieser Wert zu niedrig eingestellt, kann es zu langen Wartezeiten für die Clients kommen, was zu Timeouts und Fehlern auf der Client-Seite führen kann.
Ist der Wert zu hoch eingestellt, kann es zu einer hohen Last auf dem MySQL-Server kommen. Ist diese Last zu hoch, brauchen die einzelnen Abfragen sehr lange, was wiederum dazu führen kann, dass auf Client-Seite Fehler auftreten und zusätzlich auch keine neuen Verbindungen zum opsiconfd-Server aufgebaut werden können.
Die optimale Einstellung hängt von der Anzahl der Clients, der Anzahl der gleichzeitigen Client-Verbindungen und der Leistungsfähigkeit des MySQL-Servers ab. Eine Übersicht über die aktuellen Verbindungen zur MySQL-Datenbank erhalten Sie mit dem Befehl:
mysql -u root -p -e "show processlist;"