轩辕镜像
轩辕镜像专业版
个人中心搜索镜像
交易
充值流量我的订单
工具
工单支持镜像收录Run 助手IP 归属地密码生成Npm 源Pip 源
帮助
常见问题我要吐槽
其他
关于我们网站地图

官方QQ群: 13763429

轩辕镜像
镜像详情
bitnamicharts/postgresql-ha
官方博客使用教程热门镜像工单支持
本站面向开发者与科研用户,提供开源镜像的搜索和下载加速服务。
所有镜像均来源于原始开源仓库,本站不存储、不修改、不传播任何镜像内容。
轩辕镜像 - 国内开发者首选的专业 Docker 镜像下载加速服务平台 - 官方QQ群:13763429 👈点击免费获得技术支持。
本站面向开发者与科研用户,提供开源镜像的搜索和下载加速服务。所有镜像均来源于原始开源仓库,本站不存储、不修改、不传播任何镜像内容。

本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com

postgresql-ha Docker 镜像下载 - 轩辕镜像

postgresql-ha 镜像详细信息和使用指南

postgresql-ha 镜像标签列表和版本信息

postgresql-ha 镜像拉取命令和加速下载

postgresql-ha 镜像使用说明和配置指南

Docker 镜像加速服务 - 轩辕镜像平台

国内开发者首选的 Docker 镜像加速平台

极速拉取 Docker 镜像服务

相关 Docker 镜像推荐

热门 Docker 镜像下载

postgresql-ha
bitnamicharts/postgresql-ha

postgresql-ha 镜像详细信息

postgresql-ha 镜像标签列表

postgresql-ha 镜像使用说明

postgresql-ha 镜像拉取命令

Docker 镜像加速服务

轩辕镜像平台优势

镜像下载指南

相关 Docker 镜像推荐

Bitnami提供的Helm chart,用于在Kubernetes环境中部署和管理高可用PostgreSQL数据库实例。
1 收藏0 次下载activebitnamicharts镜像
🚀轩辕镜像专业版更稳定💎一键安装 Docker 配置镜像源
中文简介版本下载
🚀轩辕镜像专业版更稳定💎一键安装 Docker 配置镜像源

postgresql-ha 镜像详细说明

postgresql-ha 使用指南

postgresql-ha 配置说明

postgresql-ha 官方文档

Bitnami PostgreSQL HA Helm Chart 文档

镜像概述和主要用途

Bitnami PostgreSQL HA Helm Chart 用于在 Kubernetes 集群中部署具有高可用(HA)架构的 PostgreSQL 集群。该解决方案包含 PostgreSQL 复制管理器(repmgr)和 Pgpool-II 组件,前者用于管理 PostgreSQL 集群的复制和故障转移,后者作为代理实现负载均衡和连接管理,确保数据库服务的高可用性和可靠性。

核心功能和特性

  • 高可用架构:基于主从复制拓扑,包含主节点(可写)和从节点(只读),结合 Repmgr 实现自动故障转移,当主节点故障时自动将从节点提升为主节点,避免数据丢失。
  • Pgpool-II 集成:作为 PostgreSQL 后端代理,提供连接池、负载均衡、读写分离功能,减少连接开销并优化集群性能。
  • 自动化复制管理:通过 Repmgr 实现 PostgreSQL 集群的成员管理、复制监控和自动故障转移。
  • 灵活的配置定制:支持通过 ConfigMap 或参数自定义 PostgreSQL(postgresql.conf、pg_hba.conf)、Pgpool-II(pgpool.conf、pool_hba.conf)和 Repmgr(repmgr.conf)配置文件。
  • 安全增强:支持 TLS 加密(前端客户端与 Pgpool-II 之间、Pgpool-II 与 PostgreSQL 节点之间)、LDAP 认证、客户端证书认证。
  • 可观测性:集成 Prometheus 监控,通过 postgres_exporter 暴露指标,支持 ServiceMonitor 集成。
  • 数据持久化:使用持久卷(PVC)存储数据库数据,支持自定义存储类和现有卷声明。
  • 初始化脚本支持:允许通过 ConfigMap、Secret 或参数指定自定义初始化脚本,用于数据库初始化(如创建用户、表等)。

使用场景和适用范围

  • 生产环境数据库部署:需要高可用性、自动故障转移和数据可靠性的关键业务系统。
  • Kubernetes 集群内数据库服务:适用于在 Kubernetes 环境中部署 PostgreSQL,利用容器编排和服务发现能力。
  • 读写分离需求:通过 Pgpool-II 实现读写请求分离,优化查询性能。
  • 需要监控和可观测性的场景:集成 Prometheus 便于监控集群状态和性能指标。
  • 安全合规场景:支持 TLS 加密和 LDAP 认证,满足数据传输和访问控制的安全要求。

先决条件

  • Kubernetes 集群版本 1.23+
  • Helm 版本 3.8.0+
  • 集群中存在默认 StorageClass(用于动态创建持久卷)或已准备好静态持久卷

详细使用方法和配置说明

安装 Helm Chart

快速安装(TL;DR)

helm install my-release oci://registry-1.docker.io/bitnamicharts/postgresql-ha

自定义安装

指定自定义参数安装(需替换 REGISTRY_NAME 和 REPOSITORY_NAME 为实际 Helm 仓库地址,如 Bitnami 官方仓库为 registry-1.docker.io/bitnamicharts):

helm install my-release oci://REGISTRY_NAME/REPOSITORY_NAME/postgresql-ha \
  --set postgresql.postgresqlPassword=mysecretpassword \
  --set postgresql.repmgrPassword=repmgrsecret \
  --set pgpool.service.type=Load***

配置参数说明

核心参数

参数路径描述默认值
postgresql.postgresqlPasswordPostgreSQL 管理员密码自动生成随机值
postgresql.repmgrPasswordRepmgr 管理员密码自动生成随机值
pgpool.service.typePgpool-II 服务类型(ClusterIP/NodePort/Load***)ClusterIP
persistence.enabled是否启用持久化存储true
persistence.storageClass持久卷存储类默认 StorageClass
metrics.enabled是否启用 Prometheus 监控false

资源配置

可通过 resources 参数设置容器资源请求和限制,或使用 resourcesPreset 预设(仅建议开发环境使用):

postgresql:
  resources:
    requests:
      cpu: 500m
      memory: 512Mi
    limits:
      cpu: 1000m
      memory: 1Gi
pgpool:
  resources:
    requests:
      cpu: 200m
      memory: 256Mi
    limits:
      cpu: 500m
      memory: 512Mi

TLS 加密配置

前端加密(客户端与 Pgpool-II 之间)
  1. 创建包含 TLS 证书的 Secret(需提前生成证书文件 cert.crt、cert.key、ca.crt):
kubectl create secret generic pgpool-tls-secret \
  --from-file=./cert.crt \
  --from-file=./cert.key \
  --from-file=./ca.crt
  1. 安装时启用 TLS:
helm install my-release oci://registry-1.docker.io/bitnamicharts/postgresql-ha \
  --set pgpool.tls.enabled=true \
  --set pgpool.tls.certificatesSecret=pgpool-tls-secret \
  --set pgpool.tls.certFilename=cert.crt \
  --set pgpool.tls.certKeyFilename=cert.key \
  --set pgpool.tls.certCAFilename=ca.crt
后端加密(Pgpool-II 与 PostgreSQL 节点之间)

类似前端配置,通过 postgresql.tls.* 参数启用:

helm install my-release oci://registry-1.docker.io/bitnamicharts/postgresql-ha \
  --set postgresql.tls.enabled=true \
  --set postgresql.tls.certificatesSecret=postgresql-tls-secret \
  --set postgresql.tls.certFilename=cert.crt \
  --set postgresql.tls.certKeyFilename=cert.key

LDAP 认证配置

启用 LDAP 认证需配置以下参数(示例):

helm install my-release oci://registry-1.docker.io/bitnamicharts/postgresql-ha \
  --set ldap.enabled=true \
  --set ldap.uri=ldap://my-ldap-server \
  --set ldap.basedn=dc=example\,dc=org \
  --set ldap.binddn=cn=admin\,dc=example\,dc=org \
  --set ldap.bindpw=admin \
  --set ldap.scope=sub \
  --set ldap.searchfilter=posixaccount

自定义配置文件

通过参数直接指定配置内容(如 postgresql.configuration 自定义 postgresql.conf):

postgresql:
  configuration: |
    max_connections = 100
    shared_buffers = 256MB
pgpool:
  configuration: |
    num_init_children = 32
    max_pool = 4

或通过外部 ConfigMap 挂载配置(需提前创建 ConfigMap):

postgresql:
  configurationCM: my-postgresql-config  # 外部 ConfigMap 名称
pgpool:
  configurationCM: my-pgpool-config      # 外部 ConfigMap 名称

初始化数据库

通过 initdbScripts 参数指定初始化脚本(键为脚本名,值为脚本内容):

postgresql:
  initdbScripts:
    init-user.sql: |
      CREATE USER appuser WITH PASSWORD 'apppass';
      CREATE DATABASE appdb OWNER appuser;

或使用外部 Secret(含敏感信息):

postgresql:
  initdbScriptsSecret: my-init-scripts-secret  # 外部 Secret 名称

升级与维护

更新凭据

  1. 通过 SQL 更新数据库用户密码:
ALTER USER postgres WITH PASSWORD 'newpassword';
  1. 更新 Kubernetes Secret(替换 SECRET_NAME、POSTGRES_PASSWORD 等占位符):
kubectl create secret generic SECRET_NAME \
  --from-literal=postgres-password=POSTGRES_PASSWORD \
  --from-literal=repmgr-password=REPMGR_PASSWORD \
  --dry-run -o yaml | kubectl apply -f -

备份与恢复

建议使用 Velero 工具备份持久卷数据和 Kubernetes 资源,具体步骤参考 Velero 官方文档。

注意事项

  • 镜像标签策略:生产环境建议使用固定标签(如 16.1.0-debian-11-r0)而非 latest,避免自动更新导致兼容性问题。
  • 存储配置:确保持久卷有足够容量,生产环境建议使用高性能存储(如 SSD)。
  • 安全更新:自 2025 年 8 月 28 日起,Bitnami 非强化版 Debian 镜像将逐步迁移至 docker.io/bitnamilegacy 仓库并停止更新,生产环境建议使用 Bitnami Secure Images(需订阅)。
  • 资源规划:根据数据库负载调整资源请求和限制,避免资源不足导致性能问题。

与普通 PostgreSQL Helm Chart 的区别

特性PostgreSQL HA Helm Chart普通 PostgreSQL Helm Chart
架构组件包含 Pgpool-II(负载均衡/代理)和 Repmgr(复制管理)仅包含 PostgreSQL 主从复制
默认节点数4 节点(1 Pgpool + 3 PostgreSQL 节点)2 节点(1 主 + 1 从)
故障转移自动(Repmgr + Pgpool-II)手动或需额外工具
负载均衡支持(Pgpool-II 提供)无内置负载均衡
连接池支持(Pgpool-II)需额外配置

镜像变更通知(2025年8月起)

Bitnami 将于 2025 年 8 月 28 日起调整公共镜像策略:

  • 非强化版镜像迁移:所有现有镜像(含历史版本标签)将迁移至 docker.io/bitnamilegacy 仓库,不再更新。
  • 免费层镜像缩减:社区用户仅可访问少量强化版镜像(仅 latest 标签),用于开发环境。
  • 生产环境建议:推荐使用 Bitnami Secure Images,包含强化容器、CVE 透明性、SBOM 和企业支持。

详情参见 Bitnami Secure Images 公告。

查看更多 postgresql-ha 相关镜像 →

常见问题

轩辕镜像免费版与专业版有什么区别?

免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。

轩辕镜像免费版与专业版有分别支持哪些镜像?

免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。

流量耗尽错误提示

当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。

410 错误问题

通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。

manifest unknown 错误

先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。

镜像拉取成功后,如何去掉轩辕镜像域名前缀?

使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。

查看全部问题→

轩辕镜像下载加速使用手册

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式

🔐

登录方式进行 Docker 镜像下载加速教程

通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤

🐧

Linux Docker 镜像下载加速教程

在 Linux 系统上配置轩辕镜像源,支持主流发行版

🖥️

Windows/Mac Docker 镜像下载加速教程

在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统

📦

Docker Compose 镜像下载加速教程

在 Docker Compose 中使用轩辕镜像加速,支持容器编排

📋

K8s containerd 镜像下载加速教程

在 k8s 中配置 containerd 使用轩辕镜像加速

🔧

宝塔面板 Docker 镜像下载加速教程

在宝塔面板中配置轩辕镜像加速,提升服务器管理效率

💾

群晖 NAS Docker 镜像下载加速教程

在 Synology 群晖NAS系统中配置轩辕镜像加速

🐂

飞牛fnOS Docker 镜像下载加速教程

在飞牛fnOS系统中配置轩辕镜像加速

📱

极空间 NAS Docker 镜像下载加速教程

在极空间NAS中配置轩辕镜像加速

⚡

爱快路由 ikuai Docker 镜像下载加速教程

在爱快ikuai系统中配置轩辕镜像加速

🔗

绿联 NAS Docker 镜像下载加速教程

在绿联NAS系统中配置轩辕镜像加速

🌐

威联通 NAS Docker 镜像下载加速教程

在威联通NAS系统中配置轩辕镜像加速

📦

Podman Docker 镜像下载加速教程

在 Podman 中配置轩辕镜像加速,支持多系统

📚

ghcr、Quay、nvcr、k8s、gcr 等仓库下载镜像加速教程

配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤

🚀

专属域名方式进行 Docker 镜像下载加速教程

无需登录即可使用轩辕镜像加速服务,更加便捷高效

需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429

商务:17300950906
|©2024-2025 源码跳动
商务合作电话:17300950906|Copyright © 2024-2025 杭州源码跳动科技有限公司. All rights reserved.