Skip to content

Commit 0d541de

Browse files
authored
docs: Update version number for postgres operator (#282)
1 parent 9d52434 commit 0d541de

File tree

1 file changed

+42
-2
lines changed

1 file changed

+42
-2
lines changed

docs/temporal-prerequisites.md

Lines changed: 42 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ Deploy components in this order. Each step depends on the previous one.
9797
|------|-----------|-------|
9898
| 1 | Cloud storage bucket | S3 / GCS / Azure Blob for PostgreSQL backups |
9999
| 2 | IAM / Workload Identity | Service account binding so pods can write to the bucket |
100-
| 3 | Zalando Postgres Operator | Helm chart `postgres-operator` v1.14.0+ |
100+
| 3 | Zalando Postgres Operator | Helm chart `postgres-operator` v1.15.1+ |
101101
| 4 | Create Temporal namespace | Required before deploying the PostgreSQL cluster or Temporal |
102102
| 5 | PostgreSQL cluster CR | Creates `temporal-database` with two databases |
103103
| 6 | Temporal Helm chart | Points at the PostgreSQL cluster |
@@ -182,7 +182,7 @@ helm repo update
182182
```bash
183183
helm upgrade --install postgres-operator postgres-operator-charts/postgres-operator \
184184
--namespace postgres-operator --create-namespace \
185-
--version 1.14.0 \
185+
--version 1.15.1 \
186186
--wait --timeout 3m
187187
```
188188

@@ -321,6 +321,46 @@ The operator creates a Kubernetes Secret for the database user:
321321
database usage scales with the number of open (in-flight) workflows and
322322
retained history, not the total number of completed workflows.
323323

324+
### Verify Backup
325+
326+
Before proceeding, confirm that the backup CronJob can run successfully and
327+
that the pod has permission to write to the backup bucket. Trigger a manual
328+
backup job from the CronJob the operator created:
329+
330+
```bash
331+
kubectl create job --from=cronjob/logical-backup-temporal-database \
332+
logical-backup-temporal-database-manual \
333+
-n temporal
334+
```
335+
336+
Wait for the job pod to complete:
337+
338+
```bash
339+
kubectl wait --for=condition=complete \
340+
job/logical-backup-temporal-database-manual \
341+
-n temporal --timeout=5m
342+
```
343+
344+
If the job does not complete within the timeout, check the pod logs to
345+
diagnose the failure:
346+
347+
```bash
348+
kubectl logs -n temporal \
349+
-l job-name=logical-backup-temporal-database-manual --tail=50
350+
```
351+
352+
Common causes of failure are missing or misconfigured IAM permissions (the
353+
`postgres-pod` service account cannot write to the bucket) and an incorrect
354+
bucket name or region in the `OperatorConfiguration`. Resolve any errors
355+
before continuing -- if backups are broken at this stage they will remain
356+
broken after Temporal is deployed.
357+
358+
Once the job shows `Complete`, clean it up:
359+
360+
```bash
361+
kubectl delete job logical-backup-temporal-database-manual -n temporal
362+
```
363+
324364
---
325365

326366
## Step 6: Install Temporal

0 commit comments

Comments
 (0)