Benutzerdefinierte Ressourcendefinition für PgBouncer

Spezifikationsschema

Die PgBouncer-Spezifikation definiert den ausgewählten Status von PgBouncer.

PgBouncer:
  metadata:
    name: string
  spec:
    accessMode: string
    allowSuperUserAccess: boolean
    dbclusterRef: string
    parameters: object
    port: integer
    serverTLS:
      certSecret:
        name: string

Feld

Typ
Erforderlich oder optional

 

Beschreibung
name
string
Erforderlich
Name der PgBouncer-Ressource.
accessMode
string
Optional
Definiert die Zugriffsmodi rw (Lesen/Schreiben) oder ro (schreibgeschützt) für PgBouncer-Verbindungen. Der Standardwert ist rw.
allowSuperUserAccess
boolean
Optional
„allowSuperUserAccess“ kann auf „true“ oder „false“ gesetzt werden.
dbclusterRef
string
Erforderlich
„dbclusterRef“ ist der Name des DBCluster, für den PgBouncer die Verbindungen in einem Pool zusammenfasst. Sie müssen das PgBouncer-Objekt im selben Namespace wie den DBCluster erstellen, auf den es verweist. Dieses Feld ist für das PgBouncer-Verbindungspooling erforderlich.
parameters
object
Optional
Gibt Schlüssel-Wert-Paare für PgBouncer-Konfigurationen an. Setzen Sie alle Werte in Anführungszeichen, z. B. default_pool_size: "20". Weitere Informationen zu den verfügbaren Optionen finden Sie in der Dokumentation zur PgBouncer-Konfiguration. Häufig verwendete Parameter sind:
  • pool_mode: Gibt an, wann eine Datenbankverbindung von anderen Clients wiederverwendet werden kann.
  • default_pool_size: Die maximale Anzahl von Datenbankverbindungen, die pro Nutzer-Datenbank-Paar zulässig sind
  • max_client_conn: Die maximale Anzahl von Clientverbindungen
  • max_db_connections: Die maximale Anzahl von Datenbankverbindungen
port
integer
Optional
Gibt den Port an, an dem PgBouncer auf eingehende Verbindungen wartet. Der Standardwert ist 6432.
serverTLS
object
Optional
„serverTLS“ definiert das Zertifikat-Secret für die verschlüsselte Kommunikation, das von PgBouncer verwendet wird, um eine Verbindung zum Datenbankcluster herzustellen und Authentifizierungsanmeldedaten abzurufen.
serverTLS.certSecret
object
Optional
„certSecret“ verweist auf das Zertifikat-Secret im selben Namespace. Das Secret muss die Einträge ca.crt (CA-Zertifikat), tls.key (privater Schlüssel) und tls.crt (untergeordnetes Zertifikat) enthalten. Die Werte in diesem Secret werden verwendet, um die Konfigurationen server_tls_ca_file, server_tls_cert_file und server_tls_key_file in der Datei pgbouncer.ini zu füllen. Das CA-Zertifikat muss mit der Zertifizierungsstelle übereinstimmen, die das untergeordnete Zertifikat des Datenbankclusters signiert hat. Das untergeordnete Zertifikat muss den CommonName "alloydbpgbouncer" enthalten.
serverTLS.certSecret.name
string
Optional
Name des Referenten.

Status schema

Der PgBouncer-Status definiert den beobachteten Status von PgBouncer.

endpoints:
  - name: string
    value: string
phase: string
port: integer

Feld

Typ
Erforderlich oder optional

 

Beschreibung
endpoints
array of objects
Optional
endpoints enthält alle Endpunkte, über die Sie auf diese Instanz zugreifen können.
endpoints.name
string
Erforderlich
„name“ ist der Name des Endpunkts, z. B. Read-Write.
endpoints.value
string
Erforderlich
„value“ enthält die Endpunktinformationen zum Herstellen einer Verbindung und zum Zugriff auf die Instanz.
phase
string
Erforderlich
phase beschreibt den Status des PgBouncer-Deployments. Hier werden Werte wie WaitingForDeploymentReady, Acquiring IP, und Ready angezeigt.
port
integer
Optional
Die Portnummer, die von PgBouncer für Verbindungen bereitgestellt wird.