Sidecar-Container in Kubernetes verwenden

Wählen Sie eine Dokumentationsversion aus:

Wenn Ihre Datenbank in einem Kubernetes-Cluster ausgeführt wird, können Sie Ihrem Datenbankcluster Sidecar-Container hinzufügen. Sidecar-Container werden unabhängig neben dem Hauptcontainer ausgeführt und bearbeiten Anfragen für Anwendungsmonitoring, Logging und Tracing. Sie können Logs, Messwerte und Traces mit benutzerdefinierten Agents für AlloyDB Omni in das Backend Ihrer Wahl exportieren.

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 Operator-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 Anwendungsmonitoring, Logging und Tracing zu verarbeiten.

AlloyDB Omni Operator-Sidecar-Container 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 Ihrem Datenbankcluster hinzu.

Sidecar-CR erstellen

  1. 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 Folgendes:

    • SIDECAR_CR_NAME: Der Name, der auf Ihren Sidecar-Container angewendet werden soll.
    • CONTAINER_IMAGE: der Name der Datei mit dem Image, das im Sidecar-Container ausgeführt werden soll, z. B. busybox.
    • CONTAINER_COMMAND: Der Befehl für den Container, der im Pod ausgeführt wird. Der Befehl kann eine Liste von in Anführungszeichen gesetzten Strings sein. Weitere Informationen finden Sie unter Befehl und Argumente beim Erstellen eines Pods definieren.
    • CONTAINER_ARGS: Die Argumente für den Befehl für den Container, der im Pod ausgeführt wird.
    • CONTAINER_NAME: der Name des Containers. Sie können mehrere Container in derselben Sidecar-CR haben. Jeder Container hat einen anderen Containernamen, ein anderes Image, einen anderen Befehl und andere Argumente.
  2. Führen Sie den folgenden Befehl aus, um zu prüfen, ob die benutzerdefinierte Ressource für den Sidecar erstellt wurde:

    kubectl describe 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

Führen Sie die folgenden Schritte aus, um den Namen des Sidecar-Containers in Ihrem Datenbankcluster zu registrieren:

  1. Fügen Sie das Attribut sidecarRef der Spezifikation des spec-Objekts Ihres Datenbankclusters im Manifest hinzu:

    sidecarRef:
      name: SIDECAR_CR_NAME
    
  2. Verwenden Sie den folgenden Befehl, um die aktualisierte Spezifikation anzuwenden:

      kubectl patch dbclusters.alloydbomni.dbadmin.goog DB_CLUSTER_NAME -p '{"spec":{"primarySpec":{"sidecarRef":{"name":SIDECAR_CR_NAME}}}}' --type=merge

    Ersetzen Sie Folgendes:

    • DB_CLUSTER_NAME: Der Name Ihres Datenbankclusters.
    • SIDECAR_CR_NAME: Der Name, der auf Ihren Sidecar-Container angewendet werden soll.

Nächste Schritte