Wenn Ihre Datenbank in einem Kubernetes-Cluster ausgeführt wird, können Sie Ihrem Datenbankcluster mit dem AlloyDB Omni Kubernetes-Operator Sidecar-Container hinzufügen. AlloyDB Omni-Betreiber-Sidecar-Container sind reguläre Kubernetes-Container, die unabhängig neben dem Hauptanwendungscontainer im selben Pod ausgeführt werden. Sie können diese Sidecar-Container verwenden, um Anfragen für das Monitoring, Logging und Tracing von Anwendungen zu bedienen.
Die Sidecar-Container des AlloyDB Omni-Operators unterscheiden sich von den in Kubernetes integrierten Sidecar-Containern.
Wenn Sie einer vorhandenen AlloyDB Omni-Installation manuell einen Sidecar-Container hinzufügen möchten, erstellen Sie eine benutzerdefinierte Sidecar-Ressource (CR) und fügen Sie sie Ihrem Datenbankcluster hinzu.
Sidecar-CR erstellen
Wenden Sie das folgende Manifest an:
apiVersion: alloydbomni.dbadmin.goog/v1 kind: Sidecar metadata: name: SIDECAR_CR_NAME spec: sidecars: - image: CONTAINER_IMAGE command: ["CONTAINER_COMMAND"] args: ["CONTAINER_ARGS"] name: CONTAINER_NAME
Ersetzen Sie die folgenden Variablen:
SIDECAR_CR_NAME
: der Name des Sidecar-Containers.CONTAINER_IMAGE
: Der Name der Imagedatei, die in Ihrem Sidecar-Container ausgeführt werden soll. Beispiel:busybox
.CONTAINER_COMMAND
: Der Befehl für den Container, der im Pod ausgeführt wird. Der Befehl kann eine Liste von Anführungszeichen enthalten. Weitere Informationen finden Sie unter Befehl und Argumente beim Erstellen eines Pods definieren.CONTAINER_ARGS
: Argumente fürCONTAINER_COMMAND
.CONTAINER_NAME
: der Name des Containers. Sie können mehrere Container in derselben Sidecar-Konfigurationsdatei haben. Jeder Container hat einen anderen Containernamen, ein anderes Image, einen anderen Befehl und andere Argumente.
Führen Sie den folgenden Befehl aus, um zu überprüfen, ob die Sidecar-Kopie erstellt wurde:
kubectl describe Sidecar/SIDECAR_CR_NAME
Die Ausgabe sieht etwa so aus:
Name: SIDECAR_CR_NAME Labels: <none> Annotations: <none> API Version: alloydbomni.dbadmin.goog/v1 Kind: Sidecar Metadata: Creation Timestamp: 2024-04-15T21:49:00Z Finalizers: sidecars.dbadmin.goog/finalizer Generation: 2 Resource Version: 2561336 UID: e57f2e13-20c5-4905-b13b-39203bab36b4 Spec: Sidecars: Args: CONTAINER_ARGS Command: CONTAINER_COMMAND Image: CONTAINER_IMAGE Name: CONTAINER_NAME Resources: Status: Observed Generation: 2 Reconciled: true Events: <none>
Sidecar-Container registrieren
Um den Namen des Sidecar-Containers bei Ihrem Datenbankcluster zu registrieren, wenden Sie die aktualisierte Spezifikation mit dem folgenden Befehl an:
kubectl patch dbclusters.alloydbomni.dbadmin.goog DB_CLUSTER_NAME -p '{"spec":{"primarySpec":{"sidecarRef":{"name":"SIDECAR_CR_NAME"}}}}' --type=merge
Ersetzen Sie die folgenden Variablen:
DB_CLUSTER_NAME
: Der Name Ihres Datenbankclusters.SIDECAR_CR_NAME
: der Name Ihres Sidecar-Containers.
Zugriff auf Protokolle aus einem Sidecar-Container
Erstellen oder ändern Sie einen vorhandenen Sidecar-Container so, dass
spec.sidecars.volumeMounts.name
aufobsdisk
undspec.sidecars.volumeMounts.mountPath
auf einen Pfad festgelegt ist, der im Sidecar-Container sichtbar ist.apiVersion: alloydbomni.dbadmin.goog/v1 kind: Sidecar metadata: name: SIDECAR_CR_NAME spec: sidecars: - image: CONTAINER_IMAGE command: ["CONTAINER_COMMAND"] args: ["CONTAINER_ARGS"] name: CONTAINER_NAME volumeMounts: - name: obsdisk mountPath: LOGS_PATH
Ersetzen Sie Folgendes:
SIDECAR_CR_NAME
: der Name des Sidecar-Containers.CONTAINER_IMAGE
: der Name der Imagedatei, die in Ihrem Sidecar-Container ausgeführt werden soll. Beispiel:busybox
.CONTAINER_COMMAND
: Der Befehl für den Container, der im Pod ausgeführt wird. Der Befehl kann eine Liste von Anführungszeichen enthalten. Weitere Informationen finden Sie unter Befehl und Argumente beim Erstellen eines Pods definieren.CONTAINER_ARGS
: die Argumente fürCONTAINER_COMMAND
.CONTAINER_NAME
: der Name des Containers. Sie können mehrere Container im selben Sidecar-CR haben. Jeder Container hat einen anderen Containernamen, ein anderes Image, einen anderen Befehl und andere Argumente.LOGS_PATH
: der Pfad innerhalb des Sidecar-Containers, in dem AlloyDB Omni Protokolle ausgeben soll.
Registrieren Sie Ihren neuen oder geänderten Sidecar-Container.