add missing pieces
This commit is contained in:
parent
f782181fd4
commit
9d8c19920c
|
|
@ -19,6 +19,8 @@ configTarget: "OperatorConfigurationCRD"
|
||||||
configGeneral:
|
configGeneral:
|
||||||
# choose if deployment creates/updates CRDs with OpenAPIV3Validation
|
# choose if deployment creates/updates CRDs with OpenAPIV3Validation
|
||||||
enable_crd_validation: true
|
enable_crd_validation: true
|
||||||
|
# update only the statefulsets without immediately doing the rolling update
|
||||||
|
enable_lazy_spilo_upgrade: false
|
||||||
# start any new database pod without limitations on shm memory
|
# start any new database pod without limitations on shm memory
|
||||||
enable_shm_volume: true
|
enable_shm_volume: true
|
||||||
# etcd connection string for Patroni. Empty uses K8s-native DCS.
|
# etcd connection string for Patroni. Empty uses K8s-native DCS.
|
||||||
|
|
|
||||||
|
|
@ -19,6 +19,8 @@ configTarget: "ConfigMap"
|
||||||
configGeneral:
|
configGeneral:
|
||||||
# choose if deployment creates/updates CRDs with OpenAPIV3Validation
|
# choose if deployment creates/updates CRDs with OpenAPIV3Validation
|
||||||
enable_crd_validation: "true"
|
enable_crd_validation: "true"
|
||||||
|
# update only the statefulsets without immediately doing the rolling update
|
||||||
|
enable_lazy_spilo_upgrade: "false"
|
||||||
# start any new database pod without limitations on shm memory
|
# start any new database pod without limitations on shm memory
|
||||||
enable_shm_volume: "true"
|
enable_shm_volume: "true"
|
||||||
# etcd connection string for Patroni. Empty uses K8s-native DCS.
|
# etcd connection string for Patroni. Empty uses K8s-native DCS.
|
||||||
|
|
|
||||||
|
|
@ -429,9 +429,16 @@ from numerous escape characters in the latter log entry, view it in CLI with
|
||||||
`PodTemplate` used by the operator is yet to be updated with the default values
|
`PodTemplate` used by the operator is yet to be updated with the default values
|
||||||
used internally in K8s.
|
used internally in K8s.
|
||||||
|
|
||||||
The operator also support lazy updates of the Spilo image. That means the pod template of a
|
The operator also support lazy updates of the Spilo image. That means the pod
|
||||||
PG cluster's stateful set is updated immediately with the new image, but no rolling update follows. This feature saves you
|
template of a PG cluster's stateful set is updated immediately with the new
|
||||||
a switchover - and hence downtime - when you know pods are re-started later anyway, for instance due to the node rotation. To force a rolling update, disable this mode by setting the `enable_lazy_spilo_upgrade` to `false` in the operator configuration and restart the operator pod. With the standard eager rolling updates the operator checks during Sync all pods run images specified in their respective statefulsets. The operator triggers a rolling upgrade fo PG clusters that violate this condition.
|
image, but no rolling update follows. This feature saves you a switchover - and
|
||||||
|
hence downtime - when you know pods are re-started later anyway, for instance
|
||||||
|
due to the node rotation. To force a rolling update, disable this mode by
|
||||||
|
setting the `enable_lazy_spilo_upgrade` to `false` in the operator configuration
|
||||||
|
and restart the operator pod. With the standard eager rolling updates the
|
||||||
|
operator checks during Sync all pods run images specified in their respective
|
||||||
|
statefulsets. The operator triggers a rolling upgrade for PG clusters that
|
||||||
|
violate this condition.
|
||||||
|
|
||||||
## Logical backups
|
## Logical backups
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -4,10 +4,10 @@ metadata:
|
||||||
name: postgresql-operator-default-configuration
|
name: postgresql-operator-default-configuration
|
||||||
configuration:
|
configuration:
|
||||||
# enable_crd_validation: true
|
# enable_crd_validation: true
|
||||||
# enable_lazy_spilo_upgrade: true
|
# enable_lazy_spilo_upgrade: false
|
||||||
|
# enable_shm_volume: true
|
||||||
etcd_host: ""
|
etcd_host: ""
|
||||||
docker_image: registry.opensource.zalan.do/acid/spilo-12:1.6-p2
|
docker_image: registry.opensource.zalan.do/acid/spilo-12:1.6-p2
|
||||||
# enable_shm_volume: true
|
|
||||||
max_instances: -1
|
max_instances: -1
|
||||||
min_instances: -1
|
min_instances: -1
|
||||||
resync_period: 30m
|
resync_period: 30m
|
||||||
|
|
|
||||||
|
|
@ -629,6 +629,9 @@ var OperatorConfigCRDResourceValidation = apiextv1beta1.CustomResourceValidation
|
||||||
"enable_crd_validation": {
|
"enable_crd_validation": {
|
||||||
Type: "boolean",
|
Type: "boolean",
|
||||||
},
|
},
|
||||||
|
"enable_lazy_spilo_upgrade": {
|
||||||
|
Type: "boolean",
|
||||||
|
},
|
||||||
"enable_shm_volume": {
|
"enable_shm_volume": {
|
||||||
Type: "boolean",
|
Type: "boolean",
|
||||||
},
|
},
|
||||||
|
|
|
||||||
|
|
@ -167,6 +167,7 @@ type OperatorLogicalBackupConfiguration struct {
|
||||||
// OperatorConfigurationData defines the operation config
|
// OperatorConfigurationData defines the operation config
|
||||||
type OperatorConfigurationData struct {
|
type OperatorConfigurationData struct {
|
||||||
EnableCRDValidation *bool `json:"enable_crd_validation,omitempty"`
|
EnableCRDValidation *bool `json:"enable_crd_validation,omitempty"`
|
||||||
|
EnableLazySpiloUpgrade bool `json:"enable_lazy_spilo_upgrade,omitempty"`
|
||||||
EtcdHost string `json:"etcd_host,omitempty"`
|
EtcdHost string `json:"etcd_host,omitempty"`
|
||||||
DockerImage string `json:"docker_image,omitempty"`
|
DockerImage string `json:"docker_image,omitempty"`
|
||||||
Workers uint32 `json:"workers,omitempty"`
|
Workers uint32 `json:"workers,omitempty"`
|
||||||
|
|
|
||||||
|
|
@ -26,6 +26,7 @@ func (c *Controller) importConfigurationFromCRD(fromCRD *acidv1.OperatorConfigur
|
||||||
|
|
||||||
// general config
|
// general config
|
||||||
result.EnableCRDValidation = fromCRD.EnableCRDValidation
|
result.EnableCRDValidation = fromCRD.EnableCRDValidation
|
||||||
|
result.EnableLazySpiloUpgrade = fromCRD.EnableLazySpiloUpgrade
|
||||||
result.EtcdHost = fromCRD.EtcdHost
|
result.EtcdHost = fromCRD.EtcdHost
|
||||||
result.DockerImage = fromCRD.DockerImage
|
result.DockerImage = fromCRD.DockerImage
|
||||||
result.Workers = fromCRD.Workers
|
result.Workers = fromCRD.Workers
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue