在 Kubernetes 上安装 AlloyDB Omni

选择文档版本:

本页面简要介绍了 AlloyDB Omni Kubernetes Operator,并提供了有关如何使用该 Operator 将 AlloyDB Omni 部署到 Kubernetes 集群的说明。本页面假定您基本熟悉 Kubernetes 操作。

如需了解有关将 AlloyDB Omni 安装到标准 Linux 环境的说明,请参阅安装 AlloyDB Omni

概览

如需将 AlloyDB Omni 部署到 Kubernetes 集群,请安装 AlloyDB Omni Operator(一种由 Google 提供的 Kubernetes API 扩展程序)。

您可以通过将声明性清单文件与 kubectl 实用程序配对来配置和控制基于 Kubernetes 的 AlloyDB Omni 数据库集群,就像任何其他基于 Kubernetes 的部署一样。您不使用 AlloyDB Omni CLI,因为它旨在部署到单个 Linux 机器,而不是部署到 Kubernetes 集群。

准备工作

您需要有权访问以下内容:

Kubernetes 集群中的每个节点都必须具有以下内容:

  • 至少两个 x86 或 AMD64 CPU。
  • 至少 8 GB RAM。
  • Linux 内核 4.18 版或更高版本。
  • 启用了对照组 v2 (cgroup v2)。

安装 AlloyDB Omni Operator

如需安装 AlloyDB Omni Operator,请按照以下步骤操作:

  1. 定义几个环境变量:

    export GCS_BUCKET=alloydb-omni-operator
    export HELM_PATH=$(gcloud storage cat gs://$GCS_BUCKET/latest)
    export OPERATOR_VERSION="${HELM_PATH%%/*}"
  2. 下载 AlloyDB Omni Operator:

    gcloud storage cp -r gs://$GCS_BUCKET/$HELM_PATH ./
  3. 安装 AlloyDB Omni Operator:

    helm install alloydbomni-operator alloydbomni-operator-${OPERATOR_VERSION}.tgz \
    --create-namespace \
    --namespace alloydb-omni-system \
    --atomic \
    --timeout 5m

    安装成功后,系统会显示以下输出:

    NAME: alloydbomni-operator
    LAST DEPLOYED: CURRENT_TIMESTAMP
    NAMESPACE: alloydb-omni-system
    STATUS: deployed
    REVISION: 1
    TEST SUITE: None
    
  4. 通过删除下载的 AlloyDB Omni Operator 安装文件进行清理。该文件名为 alloydbomni-operator-VERSION_NUMBER.tgz,位于当前工作目录中。

创建数据库集群

AlloyDB Omni 数据库集群包含运行 AlloyDB Omni 服务器所需的所有存储和计算资源,包括主服务器、所有副本以及您的所有数据。

在 Kubernetes 集群上安装 AlloyDB Omni Operator 后,您可以通过应用类似以下内容的清单,在 Kubernetes 集群上创建 AlloyDB Omni 数据库集群:

apiVersion: v1
kind: Secret
metadata:
  name: db-pw-DB_CLUSTER_NAME
type: Opaque
data:
  DB_CLUSTER_NAME: "ENCODED_PASSWORD"
---
apiVersion: alloydbomni.dbadmin.goog/v1
kind: DBCluster
metadata:
  name: DB_CLUSTER_NAME
spec:
  databaseVersion: "15.5.4"
  primarySpec:
    adminUser:
      passwordRef:
        name: db-pw-DB_CLUSTER_NAME
    resources:
      cpu: CPU_COUNT
      memory: MEMORY_SIZE
      disks:
      - name: DataDisk
        size: DISK_SIZE
        storageClass: standard

替换以下内容:

  • DB_CLUSTER_NAME:此数据库集群的名称,例如 my-db-cluster

  • ENCODED_PASSWORD:默认 postgres 用户角色的数据库登录密码(以 base64 字符串编码),例如 Q2hhbmdlTWUxMjM= 表示 ChangeMe123

  • CPU_COUNT:此数据库集群中的每个数据库实例可用的 CPU 数量。

  • MEMORY_SIZE:此数据库集群的每个数据库实例的内存量。建议将此值设置为每个 CPU 8 千兆字节。例如,如果您之前在此清单中将 cpu 设置为 2,则建议将 memory 设置为 16Gi

  • DISK_SIZE:每个数据库实例的磁盘大小,例如 10Gi

应用此清单后,您的 Kubernetes 集群将包含具有指定内存、CPU 和存储配置的 AlloyDB Omni 数据库集群。如需与新数据库集群建立测试连接,请参阅使用预安装的 psql 进行连接

如需详细了解 Kubernetes 清单以及如何进行应用,请参阅管理资源

后续步骤