Menggunakan penampung sidecar di Kubernetes

Pilih versi dokumentasi:

Jika database Anda berjalan di cluster Kubernetes, Anda dapat menambahkan penampung sidecar ke cluster database menggunakan operator Kubernetes AlloyDB Omni. Container file bantuan operator AlloyDB Omni adalah container Kubernetes reguler yang berjalan secara independen bersama container aplikasi utama dalam Pod yang sama. Anda dapat menggunakan container pendamping ini untuk melayani permintaan pemantauan, pencatatan log, dan pelacakan aplikasi.

Container file bantuan operator AlloyDB Omni berbeda dengan container file bantuan bawaan Kubernetes.

Untuk menambahkan penampung sidecar ke penginstalan AlloyDB Omni yang ada secara manual, Anda membuat resource kustom (CR) sidecar dan menambahkannya ke cluster database.

Membuat CR sidecar

  1. Terapkan manifes berikut:

    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
    

    Ganti variabel berikut:

    • SIDECAR_CR_NAME: nama untuk container sidecar Anda.
    • CONTAINER_IMAGE: nama file image yang akan dijalankan di container sidecar. Contoh, busybox.
    • CONTAINER_COMMAND: perintah untuk container yang berjalan di Pod. Perintah dapat berupa daftar string yang dikutip. Untuk mengetahui informasi selengkapnya, lihat Menentukan perintah dan argumen saat Anda membuat Pod.
    • CONTAINER_ARGS: argumen untuk CONTAINER_COMMAND.
    • CONTAINER_NAME: nama container. Anda dapat memiliki beberapa container dalam CR sidecar yang sama, dan setiap container memiliki nama, image, perintah, dan argumen container yang berbeda.
  2. Untuk memverifikasi bahwa CR sidecar telah dibuat, jalankan perintah berikut:

    kubectl describe Sidecar/SIDECAR_CR_NAME

    Outputnya mirip dengan hal berikut ini:

    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>
    

Mendaftarkan container sidecar

Untuk mendaftarkan nama container sidecar ke cluster database Anda, gunakan perintah berikut untuk menerapkan spesifikasi yang diperbarui:

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

Ganti variabel berikut:

  • DB_CLUSTER_NAME: nama cluster database Anda.
  • SIDECAR_CR_NAME: nama untuk container pendamping Anda.

Mengakses log dari container sidecar

  1. Buat, atau ubah container sidecar yang ada sehingga spec.sidecars.volumeMounts.name disetel ke obsdisk dan spec.sidecars.volumeMounts.mountPath ke jalur yang terlihat dalam container sidecar.

      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
    

    Ganti kode berikut:

    • SIDECAR_CR_NAME: nama untuk container pendamping Anda.
    • CONTAINER_IMAGE: nama file image yang akan dijalankan di container pendamping Anda. Contoh, busybox.
    • CONTAINER_COMMAND: perintah untuk container yang berjalan di Pod. Perintah dapat berupa daftar string yang dikutip. Untuk mengetahui informasi selengkapnya, lihat Menentukan perintah dan argumen saat Anda membuat Pod.
    • CONTAINER_ARGS: argumen untuk CONTAINER_COMMAND.
    • CONTAINER_NAME: nama container. Anda dapat memiliki beberapa container dalam CR sidecar yang sama, dan setiap container memiliki nama, image, perintah, dan argumen container yang berbeda.
    • LOGS_PATH: jalur dalam container pendamping yang harus digunakan AlloyDB Omni untuk menghasilkan log.
  2. Daftarkan penampung sidecar baru atau yang dimodifikasi.

Langkah berikutnya