Migration der Ctrl-Datenbank nach pgsql13

Zuletzt geändert von Clemens Dörfler am 2023/05/24 09:34

Mit nachfolgenden Schritten kann die Datenbank des LXC-Containers ctrl-g1 in den Datenbank-Container pgsql13 migriert werden, welcher seit Puppet-Version 1.4.0 zur Verfügung steht.


1. [puppeteer]  LXC-Container pgsql13 in der guest.conf aktivieren, sofern noch nicht vorhanden. Bei Erstellung des Containers im Anschluss ausreichend oft gprun im ldhost ausführen, bis der Container vollständig aufgebaut ist inkl. DNS-Eintrag.

2. [puppeteer] Neue YAML-Datei /etc/logodidact/hiera/custom.d/ctrl-g1.yaml erstellen mit Verweis auf den Container pgsql13 als Datenspeicher

---
ld_ctrl::db:
 server: pgsql13

3. [ctrl-g1] Konfiguration übernehmen und Control-Service Dienste sowie Puppet temporär stoppen zur Migration der Datenbank

prun
pdis
systemctl stop ld-control-service.service
systemctl stop ld-control-service-user-sync.service

4. [pgsql13] Datenbank 'ctrl' erstellen lassen

prun

5. [ldhost] Zur Sicherheit nochmals einen prun ausführen (DNS-Einträge) und danach Skript zur Migration der Datenbank starten

prun

# Usage: postgresql-migrate [options]
#    -c, --[no-]cleanup               Delete database dump after import (default: yes)
#    -d, --database=DATABASE          Database to be migrated
#    -s, --source=CONTAINER           Source container from which the database is to be migrated
#    -t, --target=CONTAINER           Target container into which the database is to be migrated
#    -x, --[no-]compress              Compress database dump (default: yes)
#    -y, --assume-yes                 Assume "yes" as answer to all prompts and run non-interactively

pgsql-migrate -c -d ctrl -s postgresql10 -t pgsql13 -y

6. [ctrl-g1] Bei Erfolg der Datenbankübertragung die Dienste im ctrl-g1 Container wieder starten

pena
systemctl start ld-control-service.service
systemctl start ld-control-service-user-sync.service