cloudnative-pg / cloudnative-pg/plugin-barman-cloud
Support Cluster Scoped ObjectStore in CNPG clusters
- 主要语言
- Go
- 星标
- 191
- 派生
- 72
- 平均合并
- 1 天 16 小时
- 30 天内合并 PR
- 18
描述
Currently, when configuring the Barman Cloud plugin in a Cluster resource, the barmanObjectName parameter only allows referencing ObjectStore configurations from the same namespace as the CNPG Cluster.
I would like to request support for cross-namespace references so that we can define shared ObjectStore configurations centrally (e.g., in a cnpg-system or infrastructure namespace), and reuse them across multiple database clusters in different namespaces.
Current Behavior:
```yaml
spec:
plugins:
- name: barman-cloud.cloudnative-pg.io
isWALArchiver: true
parameters:
barmanObjectName: minio-store # must exist in same namespace
```
This configuration requires a duplicate copy of minio-store in each namespace that has a Cluster.
Requested Behavior:
Allow for something like the following:
```yaml
spec:
plugins:
- name: barman-cloud.cloudnative-pg.io
isWALArchiver: true
parameters:
barmanObjectName: minio-store
barmanObjectNamespace: cnpg-system # new field to support cross-namespace
```
Use Case / Motivation:
Centralize storage credentials and reduce secret duplication across environments.
Aligns with GitOps, multi-tenant, and RBAC best practices.
Improves DRY (Don't Repeat Yourself) and credential management in production-grade Kubernetes platforms.
Additional Context:
Similar cross-namespace reference patterns are used in projects like External Secrets Operator, cert-manager, and ArgoCD. This change would help platform teams standardize and secure backup configuration for PostgreSQL clusters across many namespaces.
贡献指南
调研方向
未指定文件或测试。首先在仓库中搜索 barmanObjectName 以及 ObjectStore 引用的 namespace 查找或验证,然后跟踪 Cluster 插件参数是如何解析的。完成的标准是:Cluster 可以通过提议的 namespace 字段引用另一个 namespace 中的 ObjectStore,并且针对跨 namespace 行为具有适当的验证和测试。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- go, kubernetes, postgresql
- 领域
- databases, devops
- Issue 类型
- 功能
- 难度
- 5/5
- 预计耗时
- 一周以上
- 活跃度
- 停滞
- 描述清晰度
- 基本清楚
- 新手友好度
- 35/100