Description:
I am trying to configure minimal backup for testing backup and restore procedures. These will lay the basis for a more solid backup procedure utilizing both local and offsite storage with encryption.
However, I am unable to even create a simple backup to the default cluster1-repo-host-0 and a manual trigger remains starting:
NAME CLUSTER REPO DESTINATION STATUS TYPE COMPLETED AGE
manual-backup cluster1 repo1 Starting 22m
Steps to Reproduce:
I deployed following the generic kubernetes install guide:
Relevant parts of cr.yaml:
spec:
backups:
pgbackrest:
metadata:
labels:
image: percona/percona-postgresql-operator:2.4.1-ppg16.3-pgbackrest2.51-1
repos:
- name: repo1
schedules:
full: "21 2 * * *"
differential: "0 1 * * 1-6"
incremental: "0 1 * * 1-6"
volume:
volumeClaimSpec:
storageClassName: longhorn
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 4Gi
The on-demand.yaml trigger:
---
apiVersion: pgv2.percona.com/v2
kind: PerconaPGBackup
metadata:
name: manual-backup
namespace: postgres-operator
spec:
pgCluster: cluster1
repoName: repo1
options:
- --type=full
Version:
2.4.1
Logs:
2024-09-08T11:25:01.981Z INFO Waiting for backup to start {"controller": "perconapgbackup", "controllerGroup": "pgv2.percona.com", "controllerKind": "PerconaPGBackup", "PerconaPGBackup": {"name":"manual-backup","namespace":"postgres-operator"}, "namespace": "postgres-operator", "name": "manual-backup", "reconcileID": "53e87ecf-a574-47cc-a67d-740b43651966", "request": {"name":"manual-backup","namespace":"postgres-operator"}}
2024-09-08T11:25:04.599Z ERROR get latest backup {"controller": "perconapgcluster", "controllerGroup": "pgv2.percona.com", "controllerKind": "PerconaPGCluster", "PerconaPGCluster": {"name":"cluster1","namespace":"postgres-operator"}, "namespace": "postgres-operator", "name": "cluster1", "reconcileID": "5b1f134b-55fa-430c-8ec0-0985782f2921", "error": "no completed backups found", "errorVerbose": "no completed backups found\ngithub.com/percona/percona-postgresql-operator/percona/watcher.getLatestBackup\n\t/go/src/github.com/percona/percona-postgresql-operator/percona/watcher/wal.go:129\ngithub.com/percona/percona-postgresql-operator/percona/watcher.WatchCommitTimestamps\n\t/go/src/github.com/percona/percona-postgresql-operator/percona/watcher/wal.go:65\nruntime.goexit\n\t/usr/local/go/src/runtime/asm_amd64.s:1695"}
runtime.goexit
/usr/local/go/src/runtime/asm_amd64.s:1695
Expected Result:
Successfully completing backup to local volume repo1.
Actual Result:
A manual trigger using the on-demand.yml listed above remains starting:
NAME CLUSTER REPO DESTINATION STATUS TYPE COMPLETED AGE
manual-backup cluster1 repo1 Starting 22m
Additional Information:
The posts on the forum here are not helpful in my situation, and I suspect are outdated.
Appreciate the help, thanks in advance!