Loading Search...
Crater
依赖项目

CloudNativePG 部署指南

使用 CloudNativePG Operator 和 OpenEBS 存储将 PostgreSQL 集成到 Crater 中。

概述

Crater 使用 PostgreSQL 作为其后端数据库,用于管理用户会话、任务元数据、调度状态和平台配置。

为了实现生产级、原生 Kubernetes 的 PostgreSQL 管理,我们采用了 CloudNativePG Operator,它提供了以下功能:

  • 通过 CRD 声明式管理 PostgreSQL 集群
  • 自动化高可用性、备份和故障转移
  • 与 Kubernetes RBAC、存储和调度紧密集成

我们的部署将 CloudNativePG 与 OpenEBS 本地 PV 集成用于存储,从而实现快速的本地磁盘性能和完整的数据生命周期管理。

为什么选择 CloudNativePG?

我们选择 CloudNativePG 的原因包括:

  • 它是 CNCF 孵化项目,拥有强大的社区支持。
  • 它在 PostgreSQL 配置Kubernetes 原生编排 之间提供了清晰的分离。
  • 它简化了 PostgreSQL 的部署,同时保持对高级调优的灵活性。

在 Crater 栈中,每个 PostgreSQL 集群都作为自定义的 Cluster 资源进行定义,并由操作符控制。

存储配置

数据库使用 OpenEBS 本地 PV(如 openebs.md 中所述)作为本地持久化存储。

这种设置提供了以下优势:

  • 对单节点工作负载提供高 IOPS 和低延迟
  • 可预测的节点本地调度
  • 清晰且声明式的卷生命周期管理

在安装 CloudNativePG 之前,请确保已正确安装并运行 OpenEBS 本地 PV。

先决条件

  • 已安装 kubectlhelm
  • 已安装 OpenEBS 本地 PV

安装

我们为操作符安装提供了定制的 Helm 配置。

📦 Helm 值:deployments/cloudnative-pg/values.yaml
📖 详细指南:deployments/cloudnative-pg/README.md

Edit on GitHub