You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/hugo/content/en/connection_pooler/_index.md
+6Lines changed: 6 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -31,13 +31,19 @@ CPO relies on pgBouncer, a popular and above all lightweight open source tool. p
31
31
- connection_poole.max_db_connections - How many connections the pooler can max hold. This value is divided among the pooler pods. Default is 60 which will make up 30 connections per pod for the default setup with two instances.
32
32
- connection_pooler.mode - Defines pooler mode. Available Value: `session`, `transaction` or `statement`. Default is `transaction`.
33
33
- connection_pooler.resources - Hardware definition for the pooler pods
34
+
- env: Allows you to add custom environment variables
34
35
35
36
- enableConnectionPooler - Defines whether poolers for read/write access should be created based on the spec.connectionPooler definition.
36
37
- enableReplicaConnectionPooler- Defines whether poolers for read-only access should be created based on the spec.connectionPooler definition.
Copy file name to clipboardExpand all lines: docs/hugo/content/en/crd/crd-postgresql.md
+21-1Lines changed: 21 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -35,8 +35,9 @@ weight: 331
35
35
| enableMasterPoolerLoadBalancer | boolean | false | Define whether to enable the load balancer pointing to the primary ConnectionPooler |
36
36
| enableReplicaPoolerLoadBalancer| boolean | false | Define whether to enable the load balancer pointing to the Replica-ConnectionPooler |
37
37
| enableShmVolume | boolean | false | Start a database pod without limitations on shm memory. By default Docker limit /dev/shm to 64M (see e.g. the docker issue, which could be not enough if PostgreSQL uses parallel workers heavily. If this option is present and value is true, to the target database pod will be mounted a new tmpfs volume to remove this limitation. |
38
-
|[env](#env)| array | false | Allows to add own Envs to the PostgreSQL containers |
38
+
|[env](#env)| array | false | Allows you to add custom environment variables to all cluster containers |
39
39
|[initContainers](#initcontainers)| array | false | Enables the definition of init-containers |
40
+
|[labels](#labels)| object | false | Allows you to add custom labels to all cluster pods |
40
41
| logicalBackupSchedule | string | false | Enables the scheduling of logical backups based on cron-syntax. Example: `30 00 * * *`|
41
42
| maintenanceWindows | array | false | Enables the definition of maintenance windows for the cluster. Example: `Sat:00:00-04:00`|
42
43
| masterServiceAnnotations | map | false | Enables the definition of annotations for the Primary Service |
|[env](#env)| array | false | Allows you to add custom environment variables to all postgresql containers |
204
+
|[labels](#labels)| object | false | Allows you to add custom labels to poostgresql pods |
187
205
| parameters | map | false | PostgreSQL-Parameter as item (Example: max_connections: "100"). For help check out the [CYBERTEC PostgreSQL Configurator](https://pgconfigurator.cybertec.at)|
188
206
| version | string | false | a map of key-value pairs describing initdb parameters |
To flexibly manage containers within a cluster, the operator allows environment variables to be defined at various levels. This enables both global settings and specific configurations for individual components.
9
+
Hierarchy and Scope
10
+
The variables are defined within the Custom Resource (CR). The following logic applies for inheritance and assignment:
11
+
12
+
| object | Scope | Description |
13
+
| :--- | :--- | :--- |
14
+
|`spec.env`|**Global**| These ENVs are inherited by **all** containers within the cluster (PostgreSQL, Backup, Monitoring, etc.). |
15
+
|`spec.postgresql.env`|**PostgreSQL**| These ENVs apply exclusively to the **PostgreSQL containers**. |
16
+
|`spec.backup.pgbackrest.env`|**pgBackRest**| These ENVs apply exclusively to the **Backup containers**. |
17
+
|`spec.monitor.env`|**Exporter-Sidecar**| These ENVs apply exclusively to the **ConnectionPooler containers**. |
18
+
|`spec.connectionPooler.env`|**ConnectionPooler**| These ENVs apply exclusively to the **Monitoring sidecars**. |
19
+
20
+
{{< hint type=Warning >}}Updating the ENVs triggers a rolling update to the respective containers.{{< /hint >}}
21
+
22
+
23
+
### Configuration Logic
24
+
25
+
The definition of variables follows the standard Kubernetes schema for key-value pairs.
To manage and organise pods flexibly within a cluster, the operator allows labels to be defined at various levels. This enables both global labelling and specific metadata for individual components. Unlike environment variables, labels always refer to the pod as a whole, not to individual containers.
9
+
10
+
| object | Scope | Description |
11
+
| :--- | :--- | :--- |
12
+
|`spec.labels`|**Global**| These labels are adopted by **all** pods within the cluster (**PostgreSQL**, **Backup**, **Pooler**, etc.). |
13
+
|`spec.postgresql.labels`|**PostgreSQL**| These labels apply exclusively to the PostgreSQL pods. **PostgreSQL pods**. |
14
+
|`spec.backup.pgbackrest.labels`|**pgBackRest**| These labels apply exclusively to the backup pods **pgBackRest pods**. |
15
+
|`spec.connectionPooler.labels`|**ConnectionPooler**| These labels apply exclusively to the **ConnectionPooler pods**. |
16
+
17
+
{{< hint type=Warning >}}Updating the labels triggers a rolling update to the respective pods.{{< /hint >}}
18
+
19
+
20
+
### Configuration Logic
21
+
22
+
The definition of labels follows the standard Kubernetes schema for key-value pairs.
0 commit comments