שימוש בקונטיינר sidecar ב-Kubernetes

בחירת גרסת תיעוד:

אם מסד הנתונים שלכם פועל באשכול Kubernetes, אתם יכולים להוסיף קונטיינרים מסוג sidecar לאשכול מסד הנתונים באמצעות AlloyDB Omni Kubernetes operator. קונטיינרים מסוג סיידקאר של אופרטור AlloyDB Omni הם קונטיינרים רגילים של Kubernetes שפועלים באופן עצמאי לצד הקונטיינר של האפליקציה הראשית באותו Pod. אתם יכולים להשתמש במאגרי ה-sidecar האלה כדי להציג בקשות לניטור, לרישום ביומן ולמעקב של אפליקציות.

קונטיינרים מסוג sidecar של אופרטור AlloyDB Omni שונים מקונטיינרים מסוג sidecar מובנים של Kubernetes.

כדי להוסיף ידנית מאגר sidecar להתקנה קיימת של AlloyDB Omni, יוצרים משאב מותאם אישית (CR) של sidecar ומוסיפים אותו לאשכול מסד הנתונים.

יצירת קובץ CR צדדי

  1. מחילים את המניפסט הבא:

    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
    

    מחליפים את המשתנים הבאים:

    • SIDECAR_CR_NAME: השם של קונטיינר ה-sidecar.
    • CONTAINER_IMAGE: השם של קובץ האימג' שרוצים להפעיל בקונטיינר ה-sidecar. לדוגמה, busybox.
    • CONTAINER_COMMAND: הפקודה עבור הקונטיינר שפועל ב-Pod. הפקודה יכולה להיות רשימה של מחרוזות במירכאות. מידע נוסף זמין במאמר הגדרת פקודה וארגומנטים כשיוצרים Pod.
    • CONTAINER_ARGS: ארגומנטים ל-CONTAINER_COMMAND.
    • CONTAINER_NAME: השם של הקונטיינר. אפשר להשתמש בכמה קונטיינרים באותו קובץ CR של sidecar, ולכל קונטיינר יש שם, אימג', פקודה וארגומנטים שונים.
  2. כדי לוודא שנוצר CR של sidecar, מריצים את הפקודה הבאה:

    kubectl describe Sidecar/SIDECAR_CR_NAME

    הפלט אמור להיראות כך:

    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

כדי לרשום את שם קונטיינר ה-sidecar באשכול מסד הנתונים, משתמשים בפקודה הבאה כדי להחיל את המפרט המעודכן:

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

מחליפים את המשתנים הבאים:

  • DB_CLUSTER_NAME: השם של אשכול מסד הנתונים.
  • SIDECAR_CR_NAME: השם של קונטיינר ה-sidecar.

יומני גישה ממכולת sidecar

  1. יוצרים או משנים קובץ sidecar קיים כך ש-spec.sidecars.volumeMounts.name מוגדר ל-obsdisk ו-spec.sidecars.volumeMounts.mountPath מוגדר לנתיב שגלוי בקובץ 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
    

    מחליפים את מה שכתוב בשדות הבאים:

    • SIDECAR_CR_NAME: השם של קונטיינר ה-sidecar.
    • CONTAINER_IMAGE: השם של קובץ התמונה להרצה בקונטיינר sidecar. לדוגמה, busybox.
    • CONTAINER_COMMAND: הפקודה של הקונטיינר שפועל ב-Pod. הפקודה יכולה להיות רשימה של מחרוזות במירכאות. מידע נוסף זמין במאמר הגדרת פקודה וארגומנטים כשיוצרים Pod.
    • CONTAINER_ARGS: הארגומנטים של CONTAINER_COMMAND.
    • CONTAINER_NAME: השם של הקונטיינר. יכולים להיות כמה קונטיינרים באותו קובץ CR של sidecar, ולכל קונטיינר יש שם, תמונה, פקודה וארגומנטים שונים.
    • LOGS_PATH: הנתיב בתוך קונטיינר ה-sidecar שאליו AlloyDB Omni צריך להוציא את היומנים.
  2. רושמים את קובץ ה-sidecar החדש או ששונה.

המאמרים הבאים