quickstart-openshift
quickstart-openshift copied to clipboard
Crunchy over Patroni?
I'm liking the sound of Crunchy over Patroni. Still early.
Setup and lots of ideas courtesy of @conbrad.
- apiVersion: postgres-operator.crunchydata.com/v1beta1
kind: PostgresCluster
metadata:
name: ${APP_NAME}-${SUFFIX}
spec:
image: artifacts.developer.gov.bc.ca/bcgov-docker-local/crunchy-postgres-gis:ubi8-14.7-3.2-0
metadata:
name: ${APP_NAME}-${SUFFIX}
labels:
app: ${APP_NAME}-${SUFFIX}
users:
- name: ${APP_NAME}-${SUFFIX}
databases:
- postgres
options: "SUPERUSER"
postgresVersion: 14
instances:
- name: tileserv
replicas: 3
dataVolumeClaimSpec:
accessModes:
- "ReadWriteOnce"
resources:
requests:
storage: 5Gi
cpu: 15m
memory: 200Mi
limits:
cpu: 100m
memory: 500Mi
storageClassName: netapp-block-standard
walVolumeClaimSpec:
accessModes:
- "ReadWriteOnce"
resources:
requests:
storage: 2Gi
storageClassName: netapp-block-standard
backups:
pgbackrest:
image: artifacts.developer.gov.bc.ca/bcgov-docker-local/crunchy-pgbackrest:ubi8-2.41-4
repos:
- name: repo1
volume:
volumeClaimSpec:
accessModes:
- "ReadWriteOnce"
resources:
requests:
storage: 5Gi
https://github.com/bcgov/wps/blob/main/openshift/templates/tileserv/tileserv.yaml
https://access.crunchydata.com/documentation/postgres-operator/latest/tutorials/basic-setup
(comments also stolen)
Oh wow look at their upgrade path for major versions, so easy: https://access.crunchydata.com/documentation/postgres-operator/latest/guides/major-postgres-version-upgrade
Postgres Major Version Upgrade
apiVersion: postgres-operator.crunchydata.com/v1beta1
kind: PGUpgrade
metadata:
name: hippo-upgrade
spec:
image: registry.developers.crunchydata.com/crunchydata/crunchy-upgrade:ubi8-5.4.2-0
postgresClusterName: hippo
fromPostgresVersion: 14
toPostgresVersion: 15
I am voting for crunchy @DerekRoberts , lets add that https://docs.developer.gov.bc.ca/postgres-how-to/
@mishraomp @conbrad Agreed! :)
I am adding it with the current HELM work I am doing . cc @DerekRoberts @conbrad https://github.com/bcgov/quickstart-openshift/issues/1454
If y'all are still evaluating postgres cluster tooling, I came across CloudNativePG: https://cloudnative-pg.io/
It's a project managed by the CNCF that has some pretty compelling support for cross-cluster architectures: https://www.cncf.io/blog/2023/09/29/recommended-architectures-for-postgresql-in-kubernetes/
@conbrad Lol! Sure sounds like the sort of thing we should use. :D
Run PostgreSQL.
The Kubernetes way.
CloudNativePG is the Kubernetes operator that covers the full lifecycle of a highly available PostgreSQL database cluster with a primary/standby architecture, using native streaming replication.
Update: Issue!
@DerekRoberts @conbrad anything Cluster level we don't have access to, the platform-services team needs to be involved and they will add that as an operator for different teams to use. ATM we are limited to only Crunchy Operator. EDB was a big failure and did not have good feedback. we will focus on Crunchy atm, and since it will be used with HELM, moving to another solution should not be a problem :)