postgres-operator/manifests
Jonathan Juares Beber ba60e15d07 Add ServiceAnnotations cluster config (#803)
The [operator parameters][1] already support the
`custom_service_annotations` config.With this parameter is possible to
define custom annotations that will be used on the services created by the
operator. The `custom_service_annotations` as all the other
[operator parameters][1] are defined on the operator level and do not allow
customization on the cluster level. A cluster may require different service
annotations, as for example, set up different cloud load balancers
timeouts, different ingress annotations, and/or enable more customizable
environments.

This commit introduces a new parameter on the cluster level, called
`serviceAnnotations`, responsible for defining custom annotations just for
the services created by the operator to the specifically defined cluster.
It allows a mix of configuration between `custom_service_annotations` and
`serviceAnnotations` where the latest one will have priority. In order to
allow custom service annotations to be used on services without
LoadBalancers (as for example, service mesh services annotations) both
`custom_service_annotations` and `serviceAnnotations` are applied
independently of load-balancing configuration. For retro-compatibility
purposes, `custom_service_annotations` is still under
[Load balancer related options][2]. The two default annotations when using
LoadBalancer services, `external-dns.alpha.kubernetes.io/hostname` and
`service.beta.kubernetes.io/aws-load-balancer-connection-idle-timeout` are
still defined by the operator.
`service.beta.kubernetes.io/aws-load-balancer-connection-idle-timeout` can
be overridden by `custom_service_annotations` or `serviceAnnotations`,
allowing a more customizable environment.
`external-dns.alpha.kubernetes.io/hostname` can not be overridden once
there is no differentiation between custom service annotations for
replicas and masters.

It updates the documentation and creates the necessary unit and e2e
tests to the above-described feature too.

[1]: https://github.com/zalando/postgres-operator/blob/master/docs/reference/operator_parameters.md
[2]: https://github.com/zalando/postgres-operator/blob/master/docs/reference/operator_parameters.md#load-balancer-related-options
2020-02-10 12:03:25 +01:00
..
complete-postgres-manifest.yaml Add ServiceAnnotations cluster config (#803) 2020-02-10 12:03:25 +01:00
configmap.yaml Add region setting for logical backups to non-AWS storage (#813) 2020-02-10 11:48:24 +01:00
fake-teams-api.yaml remove new line from the token; 2017-05-12 16:38:42 +02:00
infrastructure-roles-configmap.yaml Improve infrastructure role definitions (#208) 2018-04-04 17:21:36 +02:00
infrastructure-roles.yaml Improve infrastructure role definitions (#208) 2018-04-04 17:21:36 +02:00
kustomization.yaml Kustomization (#608) 2019-07-15 17:17:42 +02:00
minimal-postgres-manifest.yaml extend docs and polish manifest examples (#762) 2019-12-12 17:55:41 +01:00
operator-service-account-rbac.yaml Remove bind verb and explain privileges (#765) 2019-12-16 17:07:36 +01:00
operatorconfiguration.crd.yaml Add region setting for logical backups to non-AWS storage (#813) 2020-02-10 11:48:24 +01:00
platform-credentials.yaml Pod Rolling update 2017-05-12 11:41:25 +02:00
postgres-manifest-with-service-annotations.yaml Add ServiceAnnotations cluster config (#803) 2020-02-10 12:03:25 +01:00
postgres-operator.yaml make minimum limits boundaries configurable (#808) 2020-02-03 11:43:18 +01:00
postgresql-operator-default-configuration.yaml Add region setting for logical backups to non-AWS storage (#813) 2020-02-10 11:48:24 +01:00
postgresql.crd.yaml Add ServiceAnnotations cluster config (#803) 2020-02-10 12:03:25 +01:00
standby-manifest.yaml add missing fields to OperatorConfiguration CRD validation (#767) 2019-12-16 17:08:09 +01:00
user-facing-clusterroles.yaml rbac: add user-facing clusterroles (#585) 2019-06-14 15:59:51 +02:00