Utilizzare un contenitore sidecar in Kubernetes

Seleziona una versione della documentazione:

Se il tuo database viene eseguito in un cluster Kubernetes, puoi aggiungere container sidecar al cluster di database. I container sidecar vengono eseguiti in modo indipendente insieme al container principale e gestiscono le richieste di monitoraggio, logging e tracciamento delle applicazioni. Puoi esportare log, metriche e tracce nel backend che preferisci utilizzando agenti personalizzati per AlloyDB Omni.

Se il tuo database viene eseguito in un cluster Kubernetes, puoi aggiungere container sidecar al cluster di database utilizzando l'operatore Kubernetes di AlloyDB Omni. I container sidecar dell'operatore AlloyDB Omni sono container Kubernetes regolari che vengono eseguiti in modo indipendente insieme al container dell'applicazione principale all'interno dello stesso pod. Puoi utilizzare questi container sidecar per gestire le richieste di monitoraggio, logging e tracciamento delle applicazioni.

I container sidecar dell'operatore AlloyDB Omni sono diversi dai container sidecar integrati di Kubernetes.

Per aggiungere manualmente un contenitore sidecar a un'installazione AlloyDB Omni esistente, crea una risorsa personalizzata (CR) sidecar e aggiungila al cluster di database.

Crea un CR sidecar

  1. Applica il seguente manifest:

    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
    

    Sostituisci quanto segue:

    • SIDECAR_CR_NAME: il nome da applicare al container sidecar.
    • CONTAINER_IMAGE: il nome del file contenente l'immagine da eseguire nel container sidecar, ad esempio busybox.
    • CONTAINER_COMMAND: il comando per il container in esecuzione nel pod. Il comando può essere un elenco di stringhe tra virgolette. Per saperne di più, vedi Definire un comando e argomenti quando crei un pod.
    • CONTAINER_ARGS: gli argomenti per il comando per il container in esecuzione nel pod.
    • CONTAINER_NAME: il nome del contenitore. Puoi avere più container nello stesso CR sidecar e ogni container ha un nome, un'immagine, un comando e argomenti diversi.
  2. Per verificare che la CR sidecar sia stata creata, esegui questo comando:

    kubectl describe SIDECAR_CR_NAME
    

    L'output è simile al seguente:

    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>
    

Registrare un container sidecar

Per registrare il nome del container sidecar nel cluster di database, completa i seguenti passaggi:

  1. Aggiungi l'attributo sidecarRef alla specifica dell'oggetto spec del cluster di database nel relativo manifest:

    sidecarRef:
      name: SIDECAR_CR_NAME
    
  2. Utilizza il seguente comando per applicare la specifica aggiornata:

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

    Sostituisci quanto segue:

    • DB_CLUSTER_NAME: il nome del cluster di database.
    • SIDECAR_CR_NAME: il nome da applicare al container sidecar.

Passaggi successivi