cloudnative-pg / cloudnative-pg/plugin-barman-cloud
Cannot backup to SeaweedFS objectstore
- 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ả
When creating ObjectStore CR that points to SeaweedFS s3 objectstore it starts uploading the wal archives, makes a .upload directory, but then I got the error:
`
{"level":"error","ts":"2025-12-16T10:46:23.075022375Z","msg":"Error while handling GRPC request","logging_pod":"postgresql-1","info":{"Server":{"Client":{"Client":{}},"InstanceName":"postgresql-1","SpoolDirectory":"/controller/wal-restore-spool","PGDataPath":"/var/lib/postgresql/data/pgdata","PGWALPath":"/var/lib/postgresql/data/pgdata/pg_wal"},"FullMethod":"/cnpgi.wal.v1.WAL/Archive"},"error":"unexpected failure invoking barman-cloud-wal-archive: exit status 4","stacktrace":"github.com/cloudnative-pg/machinery/pkg/log.(*logger).Error\n\t/go/pkg/mod/github.com/cloudnative-pg/machinery@v0.3.1/pkg/log/log.go:125\ngithub.com/cloudnative-pg/cnpg-i-machinery/pkg/pluginhelper/http.(*Server).Start.logFailedRequestsUnaryServerInterceptor.func2\n\t/go/pkg/mod/github.com/cloudnative-pg/cnpg-i-machinery@v0.4.1/pkg/pluginhelper/http/grpc.go:53\ngoogle.golang.org/grpc.NewServer.chainUnaryServerInterceptors.chainUnaryInterceptors.func1\n\t/go/pkg/mod/google.golang.org/grpc@v1.76.0/server.go:1234\ngithub.com/cloudnative-pg/cnpg-i/pkg/wal._WAL_Archive_Handler\n\t/go/pkg/mod/github.com/cloudnative-pg/cnpg-i@v0.3.0/pkg/wal/wal_grpc.pb.go:196\ngoogle.golang.org/grpc.(*Server).processUnaryRPC\n\t/go/pkg/mod/google.golang.org/grpc@v1.76.0/server.go:1431\ngoogle.golang.org/grpc.(*Server).handleStream\n\t/go/pkg/mod/google.golang.org/grpc@v1.76.0/server.go:1842\ngoogle.golang.org/grpc.(*Server).serveStreams.func2.1\n\t/go/pkg/mod/google.golang.org/grpc@v1.76.0/server.go:1061"}
`
However, with awscli I can reach the bucket and can upload objects
Objectstore definition
`
apiVersion: barmancloud.cnpg.io/v1
kind: ObjectStore
metadata:
name: azure-backup-store
namespace: postgres
spec:
# Base configuration for Barman Cloud to connect to Azure
configuration:
destinationPath: "s3://backups"
endpointURL: "http://seaweedfs-s3.seaweedfs.svc.cluster.local:8333"
s3Credentials:
accessKeyId:
name: aws-creds
key: ACCESS_KEY_ID
secretAccessKey:
name: aws-creds
key: ACCESS_SECRET_KEY
wal:
compression: gzip
data:
jobs: 2
`
Cluster definition:
`
apiVersion: postgresql.cnpg.io/v1
kind: Cluster
metadata:
name: postgresql
namespace: postgres
spec:
instances: 1
storage:
size: 2Gi
plugins:
- name: barman-cloud.cloudnative-pg.io
isWALArchiver: true
parameters:
barmanObjectName: azure-backup-store
serverName: postgresql
bootstrap:
initdb:
database: authentik
owner: authentik
secret:
name: authentik-secret
enableSuperuserAccess: true
superuserSecret:
name: pgsuperuser
`
I also tried other options, and all of them worked except for the Barman Cloud Plugin, which drops an error.
Hướng dẫn đóng góp
Hướng nghiên cứu
Bắt đầu bằng cách tái hiện cấu hình ObjectStore và Cluster với SeaweedFS, sau đó kiểm tra lỗi của barman-cloud-wal-archive được báo cáo trong WAL Archive request. Công việc được xem là hoàn tất khi các bản lưu trữ WAL được tải lên thành công đến đích đã cấu hình mà không gặp lỗi exit status 4.
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, postgresql
- Lĩnh vực
- backend, databases
- Loại issue
- Lỗi
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- 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