如果您的数据库在 Kubernetes 集群中运行,则可以使用 AlloyDB Omni Kubernetes 操作器向数据库集群添加边车容器。AlloyDB Omni 操作器边车容器是常规 Kubernetes 容器,可独立地与主要应用容器一起在同一个 Pod 中运行。您可以使用这些边车容器来处理应用监控、日志记录和跟踪方面的请求。
AlloyDB Omni 操作器边车容器与 Kubernetes 内置的边车容器不同。
如需将边车容器手动添加到现有的 AlloyDB Omni 安装,请创建边车自定义资源 (CR) 并将其添加到数据库集群。
创建边车 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:容器的名称。您可以在同一个边车 CR 中包含多个容器,并且每个容器都有不同的容器名称、映像、命令和参数。
 
- 如需验证是否已创建边车 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>
注册边车容器
如需将边车容器名称注册到数据库集群,请使用以下命令来应用更新后的规范:
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:边车容器的名称。
从边车容器访问日志
- 创建或修改现有边车容器,以便将 - 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:容器的名称。您可以在同一个边车 CR 中包含多个容器,并且每个容器都有不同的容器名称、映像、命令和参数。
- LOGS_PATH:AlloyDB Omni 应将日志输出到的边车容器中的路径。
 
- 注册新的或修改过的边车容器。