cloudnative-pg / cloudnative-pg/plugin-barman-cloud
Support Cluster Scoped ObjectStore in CNPG clusters
- Ngôn ngữ chính
- Go
- Star
- 191
- Fork
- 72
- Merge trung bình
- 2 ngày 21 giờ
- Pull request đã merge (30 ngày)
- 21
Mô tả
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.
Hướng dẫn đóng góp
Hướng nghiên cứu
Không có tệp hoặc kiểm thử nào được nêu. Hãy bắt đầu bằng cách tìm kiếm trong repository barmanObjectName cũng như việc tra cứu hoặc xác thực namespace cho các tham chiếu đến ObjectStore, sau đó theo dõi cách các tham số plugin của Cluster được phân giải. Hoàn thành nghĩa là một Cluster có thể tham chiếu đến một ObjectStore trong namespace khác thông qua trường namespace được đề xuất, với việc xác thực phù hợp và các kiểm thử cho hành vi giữa các namespace.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- go, kubernetes, postgresql
- Lĩnh vực
- databases, devops
- Loại issue
- Tính năng
- Độ khó
- 5/5
- Thời gian dự kiến
- Hơn một tuần
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Khá rõ ràng
- Mức phù hợp với người mới
- 35/100