如果資料庫在 Kubernetes 叢集中執行,可以使用 AlloyDB Omni Kubernetes 運算子,將 Sidecar 容器新增至資料庫叢集。AlloyDB Omni 運算子輔助容器是普通的 Kubernetes 容器,會在同一個 Pod 中與主要應用程式容器並行獨立執行。您可以使用這些 Sidecar 容器,處理應用程式監控、記錄和追蹤的要求。
AlloyDB Omni 運算子輔助資訊容器與 Kubernetes 內建輔助資訊容器不同。
如要手動將 Sidecar 容器新增至現有的 AlloyDB Omni 安裝項目,請建立 Sidecar 自訂資源 (CR),並將其新增至資料庫叢集。
建立 Sidecar CR
套用下列資訊清單:
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
:補充容器的名稱。CONTAINER_IMAGE
:要在補充容器中執行的映像檔名稱。例如:busybox
。CONTAINER_COMMAND
:在 Pod 中執行的容器指令。指令可以是引號括住的字串清單。 詳情請參閱「建立 Pod 時定義指令和引數」。CONTAINER_ARGS
:CONTAINER_COMMAND
的引數。CONTAINER_NAME
:容器名稱。您可以在同一個 Sidecar CR 中加入多個容器,每個容器都有不同的容器名稱、映像檔、指令和引數。
如要確認是否已建立 Sidecar CR,請執行下列指令:
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 容器的記錄
建立或修改現有的補充資訊容器,將
spec.sidecars.volumeMounts.name
設為obsdisk
,並將spec.sidecars.volumeMounts.mountPath
設為補充資訊容器內可見的路徑。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
:補充容器的名稱。CONTAINER_IMAGE
:要在補充容器中執行的映像檔名稱。例如:busybox
。CONTAINER_COMMAND
:在 Pod 中執行的容器指令。指令可以是引號括住的字串清單。詳情請參閱「在建立 Pod 時定義指令和引數」。CONTAINER_ARGS
:CONTAINER_COMMAND
的引數。CONTAINER_NAME
:容器名稱。您可以在同一個 Sidecar CR 中有多個容器,每個容器都有不同的容器名稱、映像檔、指令和引數。LOGS_PATH
:AlloyDB Omni 應將記錄輸出至 Sidecar 容器中的路徑。
註冊新的或修改過的 Sidecar 容器。