内容提要
本文介绍了如何使用Kubernetes和CloudNativePG加入PostgreSQL 17测试计划,包括部署集群、选择Debian版本和验证安装。CloudNativePG社区提供了PostgreSQL 17 Beta 1的容器镜像,并提供了在Kubernetes集群中部署和验证版本的方法。
延伸解读
测试镜像的定位与限制
CloudNativePG 提供的 PostgreSQL 17 Beta 1 容器镜像专为测试设计,明确不适用于生产环境。镜像标签如 17beta1 或 17 仅用于 CloudNativePG 操作员,且当前缺少 pgaudit 和 pg_failover_slots 扩展,因为 PostgreSQL 17 所需软件包尚未就绪。因此,在测试时需注意功能完整性,避免依赖这些扩展。
Debian 版本选择与镜像标签
镜像标签支持通过后缀指定 Debian 版本:bookworm 对应 Debian 12,bullseye 对应 Debian 11。例如,要在 Debian 12 上运行 PostgreSQL 17 Beta 1,可使用镜像标签 ghcr.io/cloudnative-pg/postgresql:17beta1-bookworm。这为测试环境提供了灵活性,但需确保所选版本与现有基础设施兼容。
部署验证与版本确认
文章提供了一个 3 实例 PostgreSQL 17 集群的示例清单,部署后可通过 kubectl exec 命令验证版本。执行 psql -qAt -c 'SELECT version()' 应返回包含 PostgreSQL 17beta1 和 Debian 构建信息的字符串。这有助于确认部署成功,并确保测试基于正确的预发布版本。
参与测试的时机与价值
对于计划明年投入生产的应用开发者,建议尽早使用 PostgreSQL 17 进行测试。参与测试计划有助于在最终发布前识别和修复错误,提升稳定性。CloudNativePG 正积极集成 PostgreSQL 17 新功能,目标在 1.24 和 1.25 版本中提供官方支持,因此当前测试可为未来升级铺平道路。
Q&A
如何使用Kubernetes和CloudNativePG加入PostgreSQL 17测试计划?
可以通过部署PostgreSQL 17集群、选择Debian版本和验证安装来加入测试计划。
PostgreSQL 17 Beta 1的容器镜像在哪里可以找到?
PostgreSQL 17 Beta 1的容器镜像可以在CloudNativePG的官方postgres-container镜像注册表中找到。
选择Debian版本时需要注意什么?
选择Debian版本时,使用-名称后缀,支持Debian 12(bookworm)和Debian 11(bullseye)。
如何验证PostgreSQL 17的安装?
可以通过命令 'kubectl exec -ti pg17-1 -c postgres -- psql -qAt -c 'SELECT version()'' 来验证安装。
为什么建议开发者在早期阶段使用PostgreSQL 17进行测试?
建议开发者在早期阶段使用PostgreSQL 17进行测试,以帮助识别和修复错误,确保最终版本的稳定性。
CloudNativePG计划在何时支持PostgreSQL 17的新功能?
CloudNativePG计划在版本1.24和1.25中集成PostgreSQL 17的新功能,并在PostgreSQL 17正式发布后提供支持。