MongoDB
Für den Großteil der eGovernment Suite wird MongoDB vorausgesetzt. Aktuell ist zwingend die Version 8.0.x zu verwenden. Mit anderen Versionen ist die eGovermentSuite nicht freigegeben. Dieses sollte gemäß der Dokumentation für die jeweilige Distribution installiert werden.
Datenbankbenutzer und -passwörter
In der Standardkonfiguration von MongoDB wird kein Benutzername und -passwort für den Verbindungsaufbau zwischen den Anwendungen und dem Datenbankserver verwendet.
Falls die Verwendung von Datenbankbenutzern mit Passwörter vorgesehen
ist, sollte die offizielle Dokumentation zur Datenbankabsicherung (https://docs.mongodb.com/manual/tutorial/#security) zu Rate gezogen werden.
Die genauen Punkte sind "Enable Authentication" und "Manage Users and Roles".
Um unsere automatischen Datenbankupdates nutzen zu können benötigt der
Benutzer eine Rolle, welche ihm anyAction auf
anyResource zusichert. Eine entsprechende Rolle kann
z.B. wie folgt erzeugt werden:
db.createRole( {
role: 'superAdmin',
privileges: [
{
resource: { anyResource: true },
actions: [ 'anyAction' ]
}
],
roles: []
} )
Log-Rotation
MongoDB rotiert automatisch nicht das Log. Ein Wechsel zu einer neuen
Log-Datei lässt sich jedoch erzwingen, indem ein
SIGUSR1-Signal an den Prozess gesendet wird. Dies kann
zum Beispiel in Form eines Cron-Jobs erfolgen, z. B.:
0 0 * * * ps axf | grep mongod | grep -v grep | awk '{print "kill -SIGUSR1 " $1}' | bash
Das Löschen alter Logs lässt sich dann z. B. ebenfalls per cron bewerkstelligen:
0 1 * * * find /opt/docker/fs/logs -mtime {plus}14 -delete