GGU-CONNECT - PostgreSQL Instanz bei AWS
Die Persistenz per PostgreSQL ist aktuell noch im Modus: Experimentell.
Monatliche Kosten bei AWS belaufen sich auf ca. 20-80 € (je nach Instanzgröße und Nutzung - PostgreSQL ist oft kostengünstiger als SQL Server).
Setup in AWS
AWS Account erstellen:
Unter https://aws.amazon.com ein Konto anlegen und Kreditkarte hinterlegen
RDS Management Console öffnen:
Zur RDS Management Konsole wechseln: https://eu-central-1.console.aws.amazon.com/rds/home?region=eu-central-1
Region "EU Central 1" (Frankfurt) auswählen, falls nicht vorausgewählt
Datenbank erstellen:
Klick "Datenbank erstellen"
Engine-Typ: "PostgreSQL" auswählen
Engine-Version: Version 15.x oder höher wählen
Templates: "Kostenloses Kontingent" (für Tests) oder "Produktion" (für Produktiveinsatz)
Konfiguration:
DB-Instance-Identifier:
ggu-connect-postgres(oder beliebiger Name)Master-Benutzername:
postgres(Standard) oder eigener NameMaster-Passwort: Sicheres Passwort festlegen
DB-Instanzklasse:
db.t3.micro(kostenloses Kontingent) oder größer je nach BedarfSpeicher: 20 GB (Minimum) oder nach Bedarf
Öffentliche Verfügbarkeit: Ja aktivieren (wichtig für externe Verbindungen)
VPC-Sicherheitsgruppe: Neue erstellen oder vorhandene auswählen
Erweiterte Konfiguration:
Port:
5432(PostgreSQL Standard)Parameter-Gruppe: Standard beibehalten
Automatische Backups: Aktiviert lassen
Backup-Aufbewahrungsperiode: 7 Tage (oder nach Bedarf)
Datenbank erstellen:
"Datenbank erstellen" klicken
Warten bis Status "Verfügbar" anzeigt (ca. 5-10 Minuten)
Sicherheitsgruppe konfigurieren
Security Group bearbeiten:
In der RDS-Konsole die erstellte Datenbank auswählen
Tab "Konnektivität und Sicherheit" → "VPC-Sicherheitsgruppen" anklicken
Bei "Eingehende Regeln" auf "Bearbeiten" klicken
PostgreSQL-Regel hinzufügen:
"Regel hinzufügen"
Typ: "PostgreSQL" (automatisch Port 5432)
Quelle: "Anywhere-IPv4" (0.0.0.0/0) für globalen Zugriff oder spezifische IP-Adressen
"Regeln speichern"
Konfiguration der Datenbank-Instanz
pgAdmin installieren:
Download und Installation von pgAdmin: https://www.pgadmin.org/download/
Verbindung zur AWS RDS-Instanz:
pgAdmin starten
Rechtsklick auf "Servers" → "Register" → "Server..."
General-Tab:
Name:
AWS PostgreSQL GGU-Connect
Connection-Tab:
Host:
<RDS-Endpoint von AWS>(z.B.ggu-connect-postgres.xxxx.eu-central-1.rds.amazonaws.com)Port:
5432Username:
postgres(oder der gewählte Master-Username)Passwort:
<Master-Passwort von AWS>
"Save" klicken
Datenbankschema installieren:
Rechtsklick auf die Datenbankinstanz → "Create" → "Database..."
Database:
GGUConnect-230627(oder beliebiger Name)"Save" klicken
Rechtsklick auf die neue Datenbank → "Query Tool"
Das von GGU-Software bereitgestellte PostgreSQL-Script öffnen
Für die Zusendung des SQL Scripts bitte anfragen unter support@ggu-software.com
Inhalt in das geöffnete Fenster kopieren und "Execute" (F5) klicken
Zusätzliche Sicherheit (optional)
SSL-Verschlüsselung aktivieren:
In pgAdmin bei der Serververbindung → "SSL-Tab"
SSL-Modus: "require" oder "prefer"
AWS RDS PostgreSQL unterstützt SSL standardmäßig
Nutzerrolle anlegen
Um die Verwaltung von Nutzern in Connect zu vereinfachen, sollte die Gruppe connect_contributor angelegt werden.
Im Normalfall wird die Gruppe bei der Initialisierung der Datenbank über das Initialisierungsskript bereits erstellt worden sein. Wenn dies bei Ihnen nicht der Fall ist, folgen Sie bitte der folgenden Anleitung:
Die Rolle ist Datenbank spezifisch und gilt somit nur für die von Ihnen gewählte Datenbank.
In pgAdmin
Verbindung zu PostgreSQL Server herstellen
Rechtsklick auf die Datenbank
“Query Tool” auswählen
Den folgenden Schnipsel ausführen:
SQLCREATE ROLE connect_contributor NOLOGIN; GRANT SELECT, INSERT, UPDATE, DELETE ON ALL TABLES IN SCHEMA public TO connect_contributor;Jeder Nutzer der Gruppe
connect_contributorist jetzt berechtigt, in der Datenbank Daten zu lesen, zu erstellen, zu aktualisieren und zu löschen.
Separaten Benutzer erstellen:
In pgAdmin: Rechtsklick auf "Login/Group Roles" → "Create" → "Login/Group Role..."
Allgemein: Name
gguconnect_userDefinition: Passwort festlegen
Privilegien: "Can login" aktivieren, andere nach Bedarf
Für die Datenbank: Rechtsklick auf
GGUConnect-230627→ "Properties" → "Security"User hinzufügen und Berechtigung
ALLsetzenNutzer die Rolle
connect_contributorhinzufügen.
Via GGU-CONNECT mit Datenbank verbinden
GGU-CONNECT starten
Datenbankverbindung einrichten:
Im Menü "Datenbank" → "Mit SQL-Datenbank verbinden"
Verbindungsinformationen wie folgt hinterlegen:
Name:
<beliebig>Datenbanktyp:
PostgreSQLURL:
<RDS-Endpoint>(z.B.ggu-connect-postgres.xxxx.eu-central-1.rds.amazonaws.com)Port:
5432Username:
postgresodergguconnect_userPasswort:
<wie oben gewählt>Datenbank:
GGUConnect-230627
Verbindung testen:
Klick auf "Verbinden" (Icon mit Wolke und +)
Backups erstellen
Automatische Backups
AWS RDS erstellt automatisch tägliche Backups
Aufbewahrungszeit: 1-35 Tage (in den RDS-Einstellungen konfigurierbar)
Point-in-Time Recovery: Wiederherstellung auf beliebigen Zeitpunkt innerhalb der Aufbewahrungszeit möglich
Manuelle Snapshots
Snapshot erstellen:
In der RDS-Konsole die Datenbankinstanz auswählen
"Aktionen" → "Snapshot erstellen"
Snapshot-Name eingeben
"Snapshot erstellen" klicken
Snapshots verwalten:
Im linken Menü "Snapshots" auswählen
Alle manuellen und automatischen Snapshots werden angezeigt
Backup wiederherstellen
Aus Snapshot wiederherstellen:
Im Bereich "Snapshots" den gewünschten Snapshot auswählen
"Aktionen" → "Snapshot wiederherstellen"
Neue Datenbankinstanz-Einstellungen konfigurieren:
DB-Instance-Identifier: Neuer Name (z.B.
ggu-connect-postgres-restored)Andere Einstellungen nach Bedarf anpassen
"DB-Instanz wiederherstellen" klicken
Point-in-Time Recovery:
Datenbankinstanz auswählen → "Aktionen" → "Point-in-Time wiederherstellen"
Zeitpunkt auswählen (bis zu X Tage zurück, je nach Backup-Einstellung)
Neue Instanz-Konfiguration festlegen
Wiederherstellung starten
Nach der Wiederherstellung:
Warten bis neue Instanz "Verfügbar" ist
Sicherheitsgruppen entsprechend konfigurieren
GGU-CONNECT mit neuer Instanz verbinden
Kostenoptimierung
Instanztyp: Für kleinere Anwendungen
db.t3.microoderdb.t3.smallverwendenSpeicher: Nur benötigten Speicher allokieren, automatische Skalierung aktivieren
Multi-AZ: Nur für Produktionsumgebungen aktivieren
Backup-Aufbewahrung: Nicht länger als notwendig einstellen
Reserved Instances: Für Dauerbetrieb günstiger als On-Demand
Monitoring und Wartung
CloudWatch: Automatisches Monitoring von CPU, Speicher, Verbindungen
Performance Insights: Detaillierte Datenbankperformance-Analyse
Maintenance Window: Automatische Updates in festgelegtem Wartungsfenster
Parameter Groups: Datenbankparameter nach Bedarf anpassen