cloudnative-pg / cloudnative-pg/plugin-barman-cloud
Invalid value: "object": BackupSpec is immutable once set
- Lenguaje dominante
- Go
- Estrellas
- 191
- Forks
- 72
- Merge medio
- 2 d 21 h
- PR fusionados (30 d)
- 21
Descripción
Hi, Team !
I'm doing migrations from Barman Native to Barman Plugin (0.7.0) using the same set of commands.
I have two setups:
1) CNPG 1.26.1
2) CNPG 1.27.0
My configs are:
```
tee $cluster_name.yaml.NATIVE << EOF
apiVersion: postgresql.cnpg.io/v1
kind: Cluster
metadata:
name: $cluster_name
namespace: $oname-system
spec:
instances: 3
imageName: $cnpg_image_name
storage:
size: 1Gi
backup:
retentionPolicy: "1d"
barmanObjectStore:
destinationPath: s3://cluster-backups/
endpointURL: http://minio-service:9000
s3Credentials:
accessKeyId:
name: minio-creds
key: ACCESS_KEY_ID
secretAccessKey:
name: minio-creds
key: ACCESS_SECRET_KEY
wal:
compression: gzip
EOF
```
```
tee barman-backup.yaml.NATIVE << EOF
apiVersion: postgresql.cnpg.io/v1
kind: Backup
metadata:
name: barman-backup
namespace: $oname-system
spec:
cluster:
name: $cluster_name
target: prefer-standby
EOF
```
```
tee minio-store.yaml << EOF
apiVersion: barmancloud.cnpg.io/v1
kind: ObjectStore
metadata:
name: minio-store
namespace: $oname-system
spec:
configuration:
destinationPath: s3://cluster-backups/
endpointURL: http://minio-service:9000
s3Credentials:
accessKeyId:
name: minio-creds
key: ACCESS_KEY_ID
secretAccessKey:
name: minio-creds
key: ACCESS_SECRET_KEY
wal:
compression: gzip
retentionPolicy: "1d"
EOF
```
```
tee $cluster_name.yaml.PLUGIN << EOF
apiVersion: postgresql.cnpg.io/v1
kind: Cluster
metadata:
name: $cluster_name
namespace: $oname-system
spec:
instances: 3
imagePullPolicy: Always
imageName: $cnpg_image_name
storage:
size: 1Gi
plugins:
- name: barman-cloud.cloudnative-pg.io
isWALArchiver: true
parameters:
barmanObjectName: minio-store
EOF
```
```
tee barman-backup.yaml.PLUGIN << EOF
apiVersion: postgresql.cnpg.io/v1
kind: Backup
metadata:
name: barman-backup
namespace: $oname-system
spec:
cluster:
name: $cluster_name
method: plugin
pluginConfiguration:
name: barman-cloud.cloudnative-pg.io
target: prefer-standby
EOF
```
The set of commands is:
a) `kubectl apply --server-side -f $oname-$cnpg_full_version.yaml`
b) `kubectl apply -f minio.yaml`
c) `kubectl apply -f $cluster_name.yaml.NATIVE`
d) `kubectl apply -f barman-backup.yaml.NATIVE`
e) `kubectl apply -f cert-manager.yaml`
f) `kubectl apply -f manifest.yaml`
g) `kubectl apply -f minio-store.yaml`
h) `kubectl apply -f $cluster_name.yaml.PLUGIN`
i) `kubectl apply -f barman-backup.yaml.PLUGIN`
This set of commands works fine for the setup 1) (CNPG 1.26.1).
However for the setup 2) (CNPG 1.27.0) I have the following message for the step i)
```
[alexey@wsl2 ~]$ kubectl apply -f barman-backup.yaml.PLUGIN
The Backup "barman-backup" is invalid: spec: Invalid value: "object": BackupSpec is immutable once set
```
What's wrong with it ?
Guía de contribución
Línea de trabajo
Comienza con los manifiestos de CNPG 1.26.1 y 1.27.0, especialmente barman-backup.yaml.NATIVE y barman-backup.yaml.PLUGIN, y reproduce step i con kubectl apply. Traza dónde se valida la inmutabilidad de BackupSpec y compara la secuencia de migración native-to-plugin. Se considera terminado cuando la secuencia de comandos documentada se aplica correctamente en CNPG 1.27.0 o cuando la incompatibilidad y la configuración requerida están documentadas claramente.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- kubernetes, postgresql
- Área
- databases, devops
- Tipo de issue
- Error
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Estancado
- Claridad
- Necesita aclaración
- Aptitud para principiantes
- 35/100