-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathvalues.yaml
335 lines (283 loc) · 13.3 KB
/
values.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
---
# For a full explanation of how to set up the custom resource, please refer to
# the documentation:
# https://access.crunchydata.com/documentation/postgres-operator/latest/
###########
# General #
###########
# name is the name of the cluster. This defaults to the name of the Helm
# release.
# name: hippo
# PostgresCluster annotations
# annotations:
# postgres-operator.crunchydata.com/someFeature: "true"
# Optional: autoCreateUserSchema: true instead of using annotations above
# autoCreateUserSchema: true
# postgresVersion sets the version to deploy. This version number needs to be
# available as one of the "RELATED_IMAGE_POSTGRES_..." images as part of the PGO
# installation if you want to deploy the image without setting the "postgres"
# image variable. This value is required.
postgresVersion: 17
# postGISVersion if set and coupled with a PostGIS enabled container, enables
# PostGIS. This version number needs to be available as one of the
# "RELATED_IMAGE_POSTGRES_..." images as part of the PGO installation if you
# want to deploy the image without setting the "postgres" image variable.
# postGISVersion: 3.4
# NOTE: pgBackRest is enabled by default. It must be set in
# "RELATED_IMAGE_PGBACKREST" on the PGO deployment, otherwise you will need to
# override the "pgBackRest" image.
# pgBouncerReplicas sets the number of pgBouncer instances to deploy. The
# default is 0. You need to set this to at least 1 to deploy pgBouncer or set
# "pgBouncerConfig". Setting "pgBouncerConfig" will override the value of
# pgBouncerReplicas. The "RELATED_IMAGE_PGBOUNCER" in the PGO deployment must be
# set if you want to enable this without explicitly setting "pgBouncer".
# pgBouncerReplicas: 1
# monitoring enables the ability to monitor the Postgres cluster through a
# metrics exporter that can be scraped by Prometheus. This defaults to the value
# below.
# monitoring: false
###################
# Image Overrides #
###################
# imagePostgres can be a Postgres or GIS-enabled Postgres image. This defaults to the
# below value. "postgresVersion" needs to match the version of Postgres that is
# used here. If using the GIS-enabled Postgres image, you need to ensure
# "postGISVersion" matches the version of PostGIS used.
# imagePostgres: registry.developers.crunchydata.com/crunchydata/crunchy-postgres:ubi8-17.2-2
# imagePgBackRest is the pgBackRest backup utility image. This defaults to the
# below value.
# imagePgBackRest: registry.developers.crunchydata.com/crunchydata/crunchy-pgbackrest:ubi8-2.54.1-0
# imagePgBouncer is the image for the PgBouncer connection pooler. This defaults
# to the below value.
# imagePgBouncer: registry.developers.crunchydata.com/crunchydata/crunchy-pgbouncer:ubi8-1.23-3
# imageExporter is the image name for the exporter used as a part of monitoring.
# This defaults to the value below.
# imageExporter: registry.developers.crunchydata.com/crunchydata/crunchy-postgres-exporter:ubi8-0.16.0-0
###########################
# Basic Postgres Settings #
###########################
# instanceName lets you set the name of your instances. This defaults to
# the value below. Setting "instances" overrides this value.
# instanceName: instance1
# instanceSize sets the size of the volume that contains the data. This defaults
# to the value below. Settings "instances" overrides this value.
# instanceSize: 1Gi
# instanceStorageClassName sets the storage class for the volume that contains the data.
# This defaults to the "default" storage class defined in the cluster.
# See: 'kubectl get storageclasses.storage.k8s.io | grep default'
# Settings "instances" overrides this value.
# instanceStorageClassName: "hostpath"
# instanceMemory sets the memory limit for the Postgres instances. This defaults
# to no limit being set, but an example value is set below. Settings "instances"
# overrides this value.
# instanceMemory: 2Gi
# instanceCPU sets the CPU limit for the Postgres instances. This defaults to
# no limit being set, but an example value is set below. Setting "instances"
# overrides this value.
# instanceCPU: 1000m
# instanceReplicas lets you set the total number of Postgres replicas. This
# defaults to the value below. More than on replica enables high availability
# (HA). Settings "instances" overrides this value.
# instanceReplicas: 1
##############################
# Advanced Postgres Settings #
##############################
# Instances
# https://access.crunchydata.com/documentation/postgres-operator/latest/references/crd/5.7.x/postgrescluster#postgresclusterspecinstancesindex
# The instances config allows you to define one or more Postgres instance sets. By default,
# PGO will only deploy a single instance. Each instance set has similar
# characteristics to the other instances in the set, e.g. storage size, resource
# etc. You can have multiple replicas within an instance set.
#
# This allows you to fully customize the topology of your Postgres instances.
#
# For example, to set up an instance set with HA (due to the default pod
# topology spread constraints)
#
# instances:
# - name: pgha1
# replicas: 2
# dataVolumeClaimSpec:
# accessModes:
# - "ReadWriteOnce"
# resources:
# requests:
# storage: 1Gi
# instances: {}
# port sets the port that Postgres listens on. Defaults to 5432.
# port: 5432
# patroni lets you set the Patroni configuration for the Postgres cluster.
# for example, to set up synchronous replication:
# patroni:
# dynamicConfiguration:
# synchronous_mode: true
# postgresql:
# parameters:
# synchronous_commit: "on"
# https://access.crunchydata.com/documentation/postgres-operator/latest/references/crd/5.7.x/postgrescluster#postgresclusterspecpatroni
# patroni: {}
# users sets any custom Postgres users and databases that they have access to
# as well as any permissions associated with the user account.
# https://access.crunchydata.com/documentation/postgres-operator/latest/references/crd/5.7.x/postgrescluster#postgresclusterspecusersindex
# users: {}
#
# optionally create a user schema and grant permissions for the application user on their configured databases.
# https://access.crunchydata.com/documentation/postgres-operator/latest/tutorials/basic-setup/user-management#automatically-creating-per-user-schemas
# autoCreateUserSchema: true
# dataSource specifies a data source for bootstrapping a Postgres cluster.
# https://access.crunchydata.com/documentation/postgres-operator/latest/references/crd/5.7.x/postgrescluster#postgresclusterspecdatasource
# dataSource: {}
# customTLSSecret references a Secret that contains the relevant information for
# bringing external TLS artifacts to a PostgreSQL cluster. This provides the
# TLS for the cluster itself.
# customTLSSecret: {}
# customReplicationTLSSecret references a Secret that contains the relevant
# information for bringing external TLS artifacts to a PostgreSQL cluster. This
# provides the information for the replication user.
# customReplicationTLSSecret: {}
# databaseInitSQL references a ConfigMap that contains a SQL file that should be
# run a cluster bootstrap.
# databaseInitSQL:
# name: bootstrap-sql
# key: bootstrap.sql
# standby sets whether to run this as a standby cluster. Setting "enabled" to
# "true" enables the standby cluster while "repoName" points to a pgBackRest
# archive to replay WAL files from, and "host" and "port" point to a primary
# cluster from which to stream data.
# standby:
# enabled: false
# repoName: repo1
# host: "192.0.2.2"
# port: 5432
# shutdown when set scales the entire workload to zero. By default, this is not
# set.
# shutdown: true
#################################
# Backups / pgBackRest Settings #
#################################
# backupsSize sets the storage size of the backups to a volume in Kubernetes.
# can be overridden by "pgBackRestConfig", if set. Defaults to the value below.
# backupsSize: 1Gi
# backupsStorageClassName sets the storage class to a class existing in Kubernetes.
# Defaults to the "default" storage class defined in the cluster.
# Can be overridden by "pgBackRestConfig", if set.
# backupsStorageClassName: "hostpath"
# s3 allows for AWS S3 or an S3 compatible storage system to be used for
# backups. This allows for a quick setup with S3; if you need more advanced
# setup, use pgBackRestConfig.
# s3:
# # bucket specifies the S3 bucket to use,
# bucket: ""
# # endpoint specifies the S3 endpoint to use.
# endpoint: ""
# # region specifies the S3 region to use. If your S3 storage system does not
# # use "region", fill this in with a random value.
# region: ""
# # key is the S3 key. This is stored in a Secret.
# key: ""
# # keySecret is the S3 key secret. This is stored in a Secret.
# keySecret: ""
# # keyType can be configured to enable IAM integration via AssumeRole
# # For more info, see the documentation at https://access.crunchydata.com/documentation/postgres-operator/latest/tutorials/backups-disaster-recovery/backups#using-an-aws-integrated-identity-provider-and-role
# keyType: ""
# # encryptionPassphrase is an optional parameter to enable encrypted backups
# # with pgBackRest. This is encrypted by pgBackRest and does not use S3's
# # built-in encryption system.
# encryptionPassphrase: ""
# gcs allows for Google Cloud Storage (GCS) to be used for backups. This allows
# for a quick setup with GCS; if you need a more advanced setup, use
# "pgBackRestConfig".
# gcs:
# # bucket is the name of the GCS bucket that the backups will be stored in.
# bucket: ""
# # key is a multi-line string that contains the GCS key, which is a JSON
# # structure.
# key: |
# {}
# azure allows for Azure Blob Storage to be used for backups. This allows
# for a quick setup with Azure Blob Storage; if you need a more advanced setup,
# use "pgBackRestConfig".
# azure:
# # account is the name of the Azure account to be used.
# account: ""
# # key is the Secret key used associated with the Azure account.
# key: ""
# # container is the Azure container that the backups will be stored in.
# container: ""
# multiBackupRepos allows for backing up to multiple repositories. This is
# effectively uses the "quickstarts" for each of the backup types (volume, s3,
# gcs, azure). You can have any permutation of these types. You can set up to 4.
# can be overwritten by "pgBackRestConfig".
#
# You can't set "multiBackupRepos" and any of the individual quickstarts at the
# same time. "multiBackupRepos" will take precedence.
#
# Below is an example that enables one of each backup type.
# All available quickstart options are presented below; please see the backup types
# if you want to see how each option works.
# multiBackupRepos:
# - volume:
# backupsSize: 1Gi
# - s3:
# bucket: ""
# endpoint: ""
# region: ""
# key: ""
# keySecret: ""
# keyType: ""
# - gcs:
# bucket: ""
# key: |
# {}
# - azure:
# account: ""
# key: ""
# container: ""
# pgBackRestConfig allows for the configuration of every pgBackRest option
# except for "image", which is set by "pgBackRest".
# https://access.crunchydata.com/documentation/postgres-operator/latest/references/crd/5.7.x/postgrescluster#postgresclusterspecbackupspgbackrest
# pgBackRestConfig: {}
################################
# Pooling / pgBouncer Settings #
################################
# pgBouncerConfig sets all of the pgBouncer portions of the spec except for
# image. To set image, you need to set the "pgBouncer" setting.
# https://access.crunchydata.com/documentation/postgres-operator/latest/references/crd/5.7.x/postgrescluster#postgresclusterspecproxypgbouncer
# pgBouncerConfig: {}
#######################
# Monitoring Settings #
#######################
# monitoringConfig sets all of the monitoring portions of the spec except for the
# image. To set the image, which also enables monitoring, you need to set the
# "monitoring" setting.
# https://access.crunchydata.com/documentation/postgres-operator/latest/references/crd/5.7.x/postgrescluster#postgresclusterspecmonitoring
# monitoringConfig: {}
#######################
# Kubernetes Settings #
#######################
# metadata contains any metadata that should be applied to all PGO managed
# objects in this Postgres cluster. This includes "annotations" and "labels" as
# sub-keys.
# metadata: {}
# service customizes the Service that exposes the Postgres primary.
# service: {}
# imagePullPolicy sets the pull policy for all the images. This defaults to
# the Kubernetes heuristic:
# https://kubernetes.io/docs/concepts/containers/images/#imagepullpolicy-defaulting
# imagePullPolicy: IfNotPresent
# imagePullSecrets references Secrets that credentials for pulling image from
# private repositories
# imagePullSecrets: []
# supplementalGroups sets any group IDs that should be assigned to
# Pods, particularly around file system constraints within a system
# supplementalGroups: []
# disableDefaultPodScheduling if set to true, will disable any of the default
# scheduling constraints for Pods, such as the default Pod Topology Spread
# Constraints. If set to false or unset, the default scheduling constraints will
# be used in addition to any customizations that are added in.
# disableDefaultPodScheduling: false
# openshift can be set explicitly if this is an OpenShift cluster or a cluster
# that uses a SecurityContextConstraint. This usually does not need to be set,
# but you may want to explicitly set it to "false" when using an SCC like
# "anyuid"
# openshift: false