Zum Inhalt

Voraussetzungen

Maschine

Betriebsbedingungen

Der PostgreSQL-Cluster, der von der Appliance bereitgestellt wird, basiert auf einem 64-Bit-Debian 12 (Buchwürmer) Betriebssystem.

CPU

Es wird empfohlen, 4 CPU-Cores pro Knoten im PostgreSQL-Cluster zuzuweisen.

RAM

Es wird empfohlen, 4 GB RAM pro Knoten im PostgreSQL-Cluster zuzuweisen.

Disk

Die virtuelle Appliance wird mit einer virtuellen Festplatte von 60 GB geliefert.

Netzwerk

Ein PostgreSQL-Cluster benötigt 4 IP-Adressen:

  • 1 echte IP-Adresse pro PostgreSQL-Knoten
  • 1 virtuelle IP-Adresse für den PostgreSQL-Cluster

Warning

Die realen und virtuellen IP-Adressen der PostgreSQL-Clusterknoten müssen alle demselben Subnetz angehören.

Die Knoten des PostgreSQL-Clusters werden normalerweise im LAN platziert, um von cyberelements.io oder cyberelements Cleanroom über Edge Gateways zugegriffen zu werden.

Um die verschiedenen Maschinenadressen besser zu identifizieren, werden sie in der Dokumentation wie folgt benannt:

IP-Adressname Bedeutung
RIP_PSQL_1 Echte IP-Adresse des PostgreSQL-Knoten n°1.
RIP_PSQL_2 Echte IP-Adresse des PostgreSQL-Knoten n°2.
RIP_PSQL_3 Echte IP-Adresse des PostgreSQL-Knoten Nr. 3
VIP_PSQL Virtuelle IP-Adresse des PostgreSQL-Clusters.
Quelle Bestimmungsort Bestimmungshafen Anmerkungen
RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
Debian-Repositories TCP 80 Erforderlich für die Installation von cyberelements Cleanroom Abhängigkeiten und die Aktualisierung des Systems. Die Dokumentation und virtuelle Appliances verwenden ftp.fr.debian.org und security.debian.org.
RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
DNS-Server UDP 53 Erforderlich für die DNS-Auflösung. Optional, wenn ein DNS-Server im LAN oder in der DMZ verfügbar ist.
RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
NTP-Zeitserver UDP 123 Optional, wenn der Server seine Uhr mit einem Server im LAN oder DMZ synchronisieren muss. Standardmäßig werden die Debian-Pools verwendet: 0.debian.pool.ntp.org, 1.debian.pool.ntp.org, 2.debian.pool.ntp.org und 3.debian.pool.ntp.org.
Quelle Bestimmungsort Bestimmungshafen Anmerkungen
RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
TCP 2379 Port für den Clusterbetrieb verwendet und von ETCD abgehört.
RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
TCP 2380 Port für den Clusterbetrieb verwendet und von ETCD abgehört.
RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
TCP 5432 SQL-Verbindungsport, der von PostgreSQL übernommen wird (Standardport kann geändert werden).
RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
TCP 8008 Port für den Clusterbetrieb verwendet und von Patroni abgehört.
RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
DNS-Server UDP 53 Erforderlich für die DNS-Auflösung. Optional, wenn ein DNS-Server im WAN oder in der DMZ verfügbar ist.
RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
NTP-Zeitserver UDP 123 Optional, wenn der Server seine Uhr mit einem Server im WAN oder DMZ synchronisieren muss. Standardmäßig werden die Debian-Pools verwendet: 0.debian.pool.ntp.org, 1.debian.pool.ntp.org, 2.debian.pool.ntp.org und 3.debian.pool.ntp.org.
IP-Adressen oder Netzwerkbereich von Verwaltungsarbeitsplätzen RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
TCP 22 Fernverwaltungsschnittstelle SSH
IP-Adressen oder Netzwerkbereich von Verwaltungsarbeitsstationen RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
TCP 5432 SQL-Verbindungsport, der von PostgreSQL verwendet wird (Standardport kann geändert werden).
IP-Adressen oder Netzwerkbereich von Verwaltungsarbeitsplätzen VIP_PSQL TCP 5432 SQL-Verbindungsport, der von PostgreSQL verwendet wird (Standardport kann geändert werden).
IP-Adressen von Edge-Gateways, die auf den PostgreSQL-Cluster zugreifen müssen VIP_PSQL TCP 5432 SQL-Verbindungsport, der von PostgreSQL verwendet wird (Standardport kann geändert werden).

Bescheinigungen

Der PostgreSQL-Cluster verschlüsselt die Kommunikationsflüsse zwischen seinen Knoten für den Clusterbetrieb sowie für SQL-Verbindungen.
Die nachstehenden Informationen geben eine Zusammenfassung der für PostgreSQL-Clusterzertifikate erforderlichen Einstellungen und Optionen.

Jeder PostgreSQL-Knoten verwendet ein einzelnes Zertifikat, muss aber auch das Zertifikatswort (CA) -Zertifikat importieren.
Die Wurzel CA wird voraussichtlich im Base64-kodierten crt-Format sein.

Das PostgreSQL-Knotenzertifikat muss folgende Einstellungen erfüllen:

  • Die für die Signatur verwendete Hash-Funktion muss Teil der SHA-2-Familie sein; wir empfehlen SHA-512.
  • Das Zertifikat und die Zertifikate seiner Zertifizierungsstellen müssen einen privaten Schlüssel von mindestens 2048 Bit mit RSA-, DSA- und DH-Verschlüsselung haben; bei elliptischen Kurven-Schlüsseln (ECC) müssen diese mindestens 224 Bit betragen. Wir empfehlen eine Größe von 4096 Bit für RSA und die secp384r1-ECDSA-Kurve mit einer Größe von 384 Bit.
  • Die Common Name Das Attribut muss den Kurznamen des Servers als Wert haben (die Angabe des FQDN führt zu Fehlern).
  • Die Key Usage Das Attribut muss die Werte haben critical, digitalSignature und keyEncipherment.
  • Die Extended Key Usage Das Attribut muss die Werte haben serverAuth und clientAuth.
  • Die Subject Alternative Name Das Attribut muss definiert sein, um Folgendes abzudecken:
    • Name des PostgreSQL-Knoten, der mit der realen IP-Adresse verknüpft ist
    • Name des PostgreSQL-Clusters, der mit der virtuellen IP-Adresse verknüpft ist
    • Die tatsächliche IP-Adresse des PostgreSQL-Knoten
    • Die virtuelle IP-Adresse des PostgreSQL-Clusters

Erwartetes Format des Zertifikats: P12.