本页面简要介绍了 AlloyDB Omni Kubernetes Operator,并提供了使用该 operator 将 AlloyDB Omni 部署到 Kubernetes 集群的说明。本页假定您对 Kubernetes 操作有基本的了解。
如需了解如何将 AlloyDB Omni 安装到标准 Linux 环境,请参阅安装 AlloyDB Omni。
概览
如需将 AlloyDB Omni 部署到 Kubernetes 集群,请安装 AlloyDB Omni Operator,它是 Google 提供的 Kubernetes API 的扩展。
与任何其他基于 Kubernetes 的部署一样,您可以通过将声明式清单文件与 kubectl
实用程序搭配使用来配置和控制基于 Kubernetes 的 AlloyDB Omni 数据库集群。您不使用 AlloyDB Omni CLI,因为它适用于部署到单个 Linux 机器,而不是 Kubernetes 集群。
准备工作
您需要有权访问以下内容:
- 运行以下软件的 Kubernetes 集群:
- Kubernetes 1.21 或更高版本。
cert-manager
服务。
kubectl
实用程序。helm
软件包管理器。-
如果您确实需要安装 gcloud CLI,请注意运行
gcloud init
的步骤是可选的。安装 AlloyDB Omni 不需要使用 Google 账号进行身份验证。
Kubernetes 集群中的每个节点都必须具有以下内容:
- 至少两个 x86 或 AMD64 CPU。
- 至少 8GB RAM。
- Linux 内核版本 4.18 或更高版本。
- 已启用对照组 v2 (cgroup v2)。
使用 Helm 图表
您可以使用 alloydb-omni-samples 代码库中的 Helm 图表来部署本指南中所示的组件。
安装 AlloyDB Omni Operator
如需安装 AlloyDB Omni Operator,请按以下步骤操作:
定义几个环境变量:
export GCS_BUCKET=alloydb-omni-operator
export HELM_PATH=$(gcloud storage cat gs://$GCS_BUCKET/latest)
export OPERATOR_VERSION="${HELM_PATH%%/*}"
下载 AlloyDB Omni Operator:
gcloud storage cp gs://$GCS_BUCKET/$HELM_PATH ./ --recursive
安装 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
删除下载的 AlloyDB Omni Operator 安装文件以进行清理。该文件名为
alloydbomni-operator-VERSION_NUMBER.tgz
,位于当前工作目录中。
创建数据库集群
AlloyDB Omni 数据库集群包含运行 AlloyDB Omni 服务器所需的所有存储和计算资源,包括主服务器、所有副本以及您的所有数据。
在 Kubernetes 集群上安装 AlloyDB Omni 操作器后,您可以通过应用类似以下的清单在 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.2"
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 字符串,例如ChangeMe123
的Q2hhbmdlTWUxMjM=
。CPU_COUNT
:此数据库集群中每个数据库实例可用的 CPU 数量。MEMORY_SIZE
:此数据库集群中每个数据库实例的内存量。我们建议将此值设置为每个 CPU 8 GB。例如,如果您在此清单中之前将cpu
设置为2
,则建议将memory
设置为16Gi
。DISK_SIZE
:每个数据库实例的磁盘大小,例如10Gi
。
应用此清单后,您的 Kubernetes 集群将包含一个具有指定内存、CPU 和存储配置的 AlloyDB Omni 数据库集群。如需与新的数据库集群建立测试连接,请参阅使用预安装的 psql
进行连接。
如需详细了解 Kubernetes 清单以及如何应用清单,请参阅管理资源。