Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
81e7928
Bump flask from 2.3.2 to 3.1.3 in /ui
dependabot[bot] Feb 20, 2026
fa4d668
ensure monitor-object is checked for changes
Schmaetz Mar 17, 2026
cefdc41
Bump google.golang.org/grpc from 1.75.0 to 1.79.3
dependabot[bot] Mar 19, 2026
9f0441f
Bump werkzeug from 3.1.5 to 3.1.6 in /ui
dependabot[bot] Mar 19, 2026
0cf4e0f
change python path to ../local/bin to ensure latest in container inst…
Schmaetz Mar 20, 2026
7e1528c
Add Loop to wait with major-upgrade if replica yet not ready (not str…
Schmaetz Mar 20, 2026
9d7f2fa
ensure exit-code from upgrade-skript (container) was fetched correct …
Schmaetz Mar 20, 2026
84f50fb
Bump requests from 2.32.4 to 2.33.0 in /ui
dependabot[bot] Mar 26, 2026
f25cee3
add configmap-field for customQueries
Schmaetz Mar 30, 2026
224ef02
add customQuery-Configmap as volume and mount to exporter-sidecar
Schmaetz Mar 30, 2026
bb8031d
update standby-field
Schmaetz Mar 30, 2026
d222250
ensure Standby is removed while update and sync if manifest changed
Schmaetz Mar 30, 2026
818d176
update for standby-handling
Schmaetz Mar 31, 2026
fa21e8e
add patroni-log-settings to crd and types
Schmaetz Mar 31, 2026
9709818
add log-definitions to patroni-config
Schmaetz Mar 31, 2026
aa3e738
Merge pull request #137 from cybertec-postgresql/monitoringSidecarFix
Schmaetz Apr 4, 2026
40b5674
Merge pull request #138 from cybertec-postgresql/optimizeMajorUpgrade…
Schmaetz Apr 4, 2026
635ef53
Merge pull request #144 from cybertec-postgresql/PatroniJSONLogs
Schmaetz Apr 4, 2026
d0aa6b0
Merge pull request #143 from cybertec-postgresql/customQueries_for_mo…
Schmaetz Apr 4, 2026
cd57da3
Merge pull request #142 from cybertec-postgresql/Standby
Schmaetz Apr 4, 2026
c19903f
Merge pull request #134 from cybertec-postgresql/dependabot/pip/ui/fl…
Schmaetz Apr 4, 2026
46265ec
Merge pull request #135 from cybertec-postgresql/dependabot/go_module…
Schmaetz Apr 4, 2026
a7fffe1
Merge pull request #136 from cybertec-postgresql/dependabot/pip/ui/we…
Schmaetz Apr 4, 2026
0c6fe32
Merge pull request #139 from cybertec-postgresql/dependabot/pip/ui/re…
Schmaetz Apr 4, 2026
cce2249
Merge remote-tracking branch 'origin/ENV' into rc-v0.9.2
Schmaetz Apr 4, 2026
efa6a2e
fix conflicts
Schmaetz Apr 4, 2026
640222c
update docu
Schmaetz Apr 4, 2026
f51cc43
add release-notes
Schmaetz Apr 4, 2026
84894b7
update manifest & chart
Schmaetz Apr 6, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 2 additions & 4 deletions charts/postgres-operator/values.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
image:
registry: docker.io
repository: cybertecpostgresql/cybertec-pg-operator
tag: v0.8.0-1
tag: v0.9.2-1
pullPolicy: "IfNotPresent"

# Optionally specify an array of imagePullSecrets.
Expand Down Expand Up @@ -38,7 +38,7 @@ configGeneral:
# etcd connection string for Patroni. Empty uses K8s-native DCS.
etcd_host: ""
# Database pod docker image
docker_image: docker.io/cybertecpostgresql/cybertec-pg-container:postgres-17.0-2
docker_image: containers.cybertec.at/cybertec-pg-container/postgres:rocky9-18.3-2

# key name for annotation to ignore globally configured instance limits
# ignore_instance_limits_annotation_key: ""
Expand Down Expand Up @@ -355,8 +355,6 @@ configLogicalBackup:
# logical_backup_memory_limit: ""
# logical_backup_memory_request: ""

# image for pods of the logical backup job (example runs pg_dumpall)
logical_backup_docker_image: "registry.opensource.zalan.do/acid/logical-backup:v1.10.1"
# path of google cloud service account json file
# logical_backup_google_application_credentials: ""

Expand Down
3 changes: 3 additions & 0 deletions docs/hugo/content/en/crd/crd-postgresql.md
Original file line number Diff line number Diff line change
Expand Up @@ -168,6 +168,7 @@ key, operator, value, effect and tolerationSeconds |

| Name | Type | required | Description |
| ------------------------------ |:-------:| ---------:| ------------------:|
| customQueries | string | false | Name of the ConfigMap containing custom queries |
| [env](#env) | array | false | Allows you to add custom environment variables to all expoerter-sidecar containers |
| image | string | true | Docker-Image for the metric exporter |

Expand Down Expand Up @@ -251,6 +252,8 @@ key, operator, value, effect and tolerationSeconds |
| ------------------------------ |:-------:| ---------:| ------------------:|
| standby_host | string | true | Endpoint of the primary cluster |
| standby_port | string | true | PostgreSQL port of the primary cluster |
| standby_primary_slot_name | string | true | replication slot of the primary cluster |


{{< back >}}

Expand Down
14 changes: 11 additions & 3 deletions docs/hugo/content/en/monitoring/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,14 @@ These Stack is based on:

CPO has prepared an own Exporter for the PostgreSQl-Pod which can used as a sidecar.

#### Configure Cluster for monitoring
To deploy a monitoring exporter for Prometheus and create the necessary users and permissions in the cluster, the cluster manifest must be extended to include the `monitor` object.
- `customQueries`: Name of the ConfigMap containing custom queries for PostgreSQL and Prometheus.
- `env`: Additional environment variables for the sidecar container
- `image`: Image for the monitoring sidecar. For example: `containers.cybertec.at/cybertec-pg-container/exporter:rocky9-18.3-2`

{{< hint type=Info >}}The ConfigMap is mounted in the sidecar container. Any additional permissions required for the queries must be manually granted to the monitoring user if necessary.{{< /hint >}}

#### Setting up the Monitoring Stack
To setup the Monitoring-Stack we suggest that you create an own namespace and use the prepared kustomization file inside the Operator-Tutorials.
```
Expand All @@ -24,7 +32,7 @@ No resources found in cpo-monitoring namespace.
git clone https://github.com/cybertec-postgresql/CYBERTEC-operator-tutorial
cd CYBERTEC-operator-tutorial/setup/monitoring

# Hint: Please check if youn want to use a specific storage-class the file pvcs.yaml and add your storageclass on the commented part. Please ensure that you removed the comment-char.
{{< hint type=Info >}}Hint: Please check if you want to use a specific storage-class the file pvcs.yaml and add your storageclass on the commented part. Please ensure that you removed the comment-char.{{< /hint >}}

$ kubectl apply -n cpo-monitoring -k .
serviceaccount/cpo-monitoring created
Expand All @@ -47,9 +55,9 @@ deployment.apps/cpo-monitoring-alertmanager created
deployment.apps/cpo-monitoring-grafana created
deployment.apps/cpo-monitoring-prometheus created

Hint: If you're not running Openshift you will get a error like this:
{{< hint type=Info >}}Hint: If you're not running Openshift you will get a error like this:
error: resource mapping not found for name: "grafana" namespace: "" from ".":
no matches for kind "Route" in version "route.openshift.io/v1" ensure CRDs are installed first
no matches for kind "Route" in version "route.openshift.io/v1" ensure CRDs are installed first{{< /hint >}}

You can ignore this, because it depends on an object with the type route which is part of Openshift.
It is not needed replaced by ingress-rules or an loadbalancer-service.
Expand Down
24 changes: 24 additions & 0 deletions docs/hugo/content/en/release_notes/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,30 @@ date: 2024-03-11T14:26:51+01:00
draft: false
weight: 2500
---

### 0.9.2 ###

#### Features
- Flexible environment variables: Introduction of custom environments, which can be defined both at container level and cluster-wide.
- Advanced label configuration: Custom labels can now be flexibly configured for individual pods or the entire cluster.
- Custom Metrics: Support for custom-queries in the exporter. These can now be easily added via ConfigMap without modifying the image.
- logging: Conversion of Patroni logs from plain text to JSON format.

#### Fixes
- Optimized upgrade-readiness-check: The trigger for major upgrades has been optimized.
- Standby-cluster: An error when promoting standby clusters has been resolved.

#### Notification of upcoming deprecation
- PG13 has reached its EoL - Support will be removed in the next release

#### Supported Versions

- PG: 13 - 18
- Patroni: 4.1.0
- pgBackRest: 2.57.0 - 2.58.0
- Kubernetes: 1.21 - 1.34
- Openshift: 4.8 - 4.20

### 0.9.1 ###

#### Features
Expand Down
22 changes: 11 additions & 11 deletions go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ require (
github.com/sirupsen/logrus v1.9.1
github.com/stretchr/testify v1.8.4
go.etcd.io/etcd/client/v3 v3.5.4
golang.org/x/crypto v0.45.0
golang.org/x/crypto v0.46.0
golang.org/x/exp v0.0.0-20230108222341-4b8118a2686a
gopkg.in/yaml.v2 v2.4.0
k8s.io/api v0.30.4
Expand All @@ -30,7 +30,7 @@ require (
go.etcd.io/etcd/client/pkg/v3 v3.5.4 // indirect
golang.org/x/tools/go/packages/packagestest v0.1.1-deprecated // indirect
google.golang.org/genproto v0.0.0-20220502173005-c8bf987b8c21 // indirect
google.golang.org/grpc v1.75.0 // indirect
google.golang.org/grpc v1.79.3 // indirect
)

require (
Expand Down Expand Up @@ -65,16 +65,16 @@ require (
go.uber.org/atomic v1.7.0 // indirect
go.uber.org/multierr v1.6.0 // indirect
go.uber.org/zap v1.19.0 // indirect
golang.org/x/mod v0.29.0 // indirect
golang.org/x/net v0.47.0 // indirect
golang.org/x/oauth2 v0.30.0 // indirect
golang.org/x/sync v0.18.0 // indirect
golang.org/x/sys v0.38.0 // indirect
golang.org/x/term v0.37.0 // indirect
golang.org/x/text v0.31.0 // indirect
golang.org/x/mod v0.30.0 // indirect
golang.org/x/net v0.48.0 // indirect
golang.org/x/oauth2 v0.34.0 // indirect
golang.org/x/sync v0.19.0 // indirect
golang.org/x/sys v0.39.0 // indirect
golang.org/x/term v0.38.0 // indirect
golang.org/x/text v0.32.0 // indirect
golang.org/x/time v0.3.0 // indirect
golang.org/x/tools v0.38.0 // indirect
google.golang.org/protobuf v1.36.6 // indirect
golang.org/x/tools v0.39.0 // indirect
google.golang.org/protobuf v1.36.10 // indirect
gopkg.in/inf.v0 v0.9.1 // indirect
gopkg.in/yaml.v3 v3.0.1 // indirect
k8s.io/gengo v0.0.0-20220902162205-c0856e24416d // indirect
Expand Down
Loading
Loading