近日,Percona 宣布推出OpenEverest,这是一个支持多种数据库技术的开源平台,用于自动化数据库配置和管理。该平台最初发布时名为 Percona Everest,可以托管在任何 Kubernetes 基础设施上,既可以是云端也可以是本地。
该项目的主要目标是避免供应商锁定,同时提供自动化的私有 DBaaS。它基于 Kubernetes operator 构建,旨在避免依赖单一云供应商技术的复杂部署。OpenEverest 是模块化的,允许开发人员和数据库管理员组合不同的数据库、存储系统和部署方法以满足特定的需求。

作为一个插件系统,其核心功能支持 GKE Autopilot 和 Pod 调度策略等特性。OpenEverest 维护者、Solarica 创始人Sergey Pronin解释说:
目前,我们专注于数据库管理,但我们真正的愿景远不止于此。我们正在构建一个模块化的基础架构,让你可以无缝地集成更多的数据引擎,连接整个运维体系,从而应对更广泛的数据基础设施挑战。
该项目通过其 Web UI 和REST API简化了软件更新、监控、存储扩展和外部访问配置等运维任务。自定义资源 DatabaseCluster、DatabaseClusterBackup 和 DatabaseClusterRestore 定义了 OpenEverest 如何在 Kubernetes 中声明式地配置数据库集群以及管理它们的备份和恢复,使这些操作可以作为版本化的原生 Kubernetes 对象进行处理,并隐藏了特定于数据库运营商的大部分差异。
当 Percona 推出该项目的测试版时,社区反响褒贬不一。在 Hacker News 上,这引发了一场关于在 Kubernetes 上运行数据库集群是否是个好主意的辩论:一些人对使用 Kubernetes 运行数据工作负载持怀疑态度,其他人则强调托管备份、集群、扩展、升级、优化的好处,其中有位用户指出,“Kubernetes 不适合运行数据库”是一个非常过时的看法。
目前,该项目支持通过各数据库引擎专属的Percona operator部署和管理 MySQL、PostgreSQL 及 MongoDB 数据库集群。其功能涵盖数据库配置与扩展、备份及灾难恢复、基于角色的访问控制,以及在 Kubernetes 环境中灵活地分配资源。最新版本OpenEverest v1.11.0新增对 PostgreSQL 18.1 的支持,并通过 NodePort 支持实现了更灵活的网络配置。
正在进行当中的工作包括支持 ClickHouse、Vitess、DocumentDB、Valkey 等工具以及集成 Prometheus 和其他可观察性平台。根据项目愿景页面的介绍,其长期目标是为构建和运营数据平台提供一个灵活的开源选项,并充分利用 Kubernetes 的普及性:“根据 Kubernetes 的调查数据,已经有 50%的组织在生产环境的 Kubernetes 上运行数据工作负载。”Pronin阐述了从单供应商解决方案向开源转型的过程:
该项目正在转变为 OpenEverest——一个采用开放治理模式、拥有蓬勃发展的多供应商社区的独立开源项目。(……)OpenEverest 将通过社区驱动的开放治理模式运作,摆脱单一供应商的控制。
该团队计划将该项目捐赠给 CNCF,以保证其长期的独立性,并继续指导其孵化过程。OpenEverest 并非在 Kubernetes 上管理数据库集群的唯一选择。KubeBlocks 是一款开源 operator(遵循 AGPL-3.0 许可),设计用于通过统一的 API 管理多种数据库类型,它目前支持 35 种数据库引擎,远超 OpenEverest;而作为数据库管理平台,KubeDB 虽然支持多种数据库,但已不再完全开源。此外,StackGres 等特定于数据库的 operator 则专注于为单一主流开源数据库引擎提供深度功能集。
OpenEverest 遵循 Apache License 2.0 许可。
原文链接:
https://www.infoq.com/news/2026/01/openeverest-kubernetes-databases/





