These predefined labels are managed by the EDB Postgres Distributed for Kubernetes operator.
k8s.pgd.enterprisedb.io/certificateTypeIndicates the type of the certificates.
replicationindicates a certificate to be used to authenticate the replication client.serverindicates a certificate to be used for server authentication.k8s.pgd.enterprisedb.io/groupName of the PGDGroup that the resource belongs to. Added to cluster or instance resources.
k8s.pgd.enterprisedb.io/isWitnessServiceIndicates a service is for a witness node.
k8s.pgd.enterprisedb.io/nodeRoutableIndicates that the readiness probe of this node monitors the Connection Manager. Nodes that don't carry the label, or that carry it with the value
false, aren't included in the group'sproxyandproxy-rservices, and their readiness probe monitors only the PostgreSQL server. The label is added when a new node joins the cluster, and on existing nodes after upgrading the operator from a version before 2.1.0. A parting node carriesfalse. ThedisableConnMgrReadinessProbeannotation on the PGDGroup disables readiness probe management for the Connection Manager and for the proxy services of the group. The operator writes this label; it's not meant to be set by hand.k8s.pgd.enterprisedb.io/parentGroupUUIDAdded to node and instance pods to show the UUID of the global PGD group, used to group the PGD clusters in different regions.
k8s.pgd.enterprisedb.io/typeType of the resource added to cluster or instance resources, usually
node.k8s.pgd.enterprisedb.io/workloadTypeIndicates the workload type of the resource added to cluster or instance resources.
pgd-node-dataindicates data node;pgd-node-witnessa witness node;proxy-svcfor PGD Proxy service;group-svcfor PGD group service to communicate with any node in the PGDGroup;node-svcis a service created from the CNP service template;scheduled-backupis added toscheduledBackupresources;bootstrap-cross-location-pgd-groupis added to the pod that creates a cross-location PGD group;pgd-node-restoreis added to the pod that starts the node restore process.
Predefined annotations
k8s.pgd.enterprisedb.io/dirtyMetadataSet in a CNP cluster that has been generated from a backup and needs to have its metadata cleaned up before creating the PGD node. This is written by the restore job.
k8s.pgd.enterprisedb.io/disableConnMgrReadinessProbeSet to
truein the PGDGroup to prevent the readiness probe of its data nodes from monitoring the Connection Manager, reverting to the operator behavior of versions before 2.1.0. The data node pods are recreated once, node by node, when this annotation is set or removed.k8s.pgd.enterprisedb.io/hashHolds the hash of a certain part of PGDGroup spec that's utilized in various entities like
Cluster,ScheduledBackup,StatefulSet, andService (node, group and proxy service)to determine if any updates are required for the corresponding resources.k8s.pgd.enterprisedb.io/unsafeIgnoreRaftCheckSet to
trueon a PGDGroup to let the operator restart nodes while the raft has no spare member. It permits a restart with no quorum margin, so it's a last resort: remove it as soon as the group is healthy. See Restart held, raft has no spare member for the recovery options to try first.k8s.pgd.enterprisedb.io/latestCleanupExecutedSet in the PGDGroup to indicate that the cleanup was executed.
k8s.pgd.enterprisedb.io/nodeContains the name of the node for which a certain certificate was generated. Added to the certificate resources.
k8s.pgd.enterprisedb.io/nodeRestartHashStores the hash of the CNP configuration in PGDGroup. A restart is needed when the configuration is changed.
k8s.pgd.enterprisedb.io/noFinalizersSet in the PGDGroup with value
trueto skip the finalizer execution. For internal use only.k8s.pgd.enterprisedb.io/pauseSet in the PGDGroup to pause a PGDGroup.
k8s.pgd.enterprisedb.io/partSet in the PGDGroup with value
onto part all the nodes in the PGDGroup. Once all nodes are parted, each CNP Cluster is annotated with valueparted. This annotation is irreversible and blocks spec changes on the PGDGroup.k8s.pgd.enterprisedb.io/recoverabilityPointsByMethodSet in the PGDGroup to store the CNP cluster's first recoverability points by method in a tamper-proof place.
k8s.pgd.enterprisedb.io/reconciliationLoopSet in the PGDGroup with
disabledto temporarily disable the reconciliation from the operator.k8s.pgd.enterprisedb.io/remoteTargetSet in the PGDGroup during remote join by the bootstrap job, to indicate the remote node to physically join.
k8s.pgd.enterprisedb.io/seedingServerSet in the PGDGroup to indicate to the operator which server to restore. This is written by the restore job.
k8s.pgd.enterprisedb.io/seedingSnapshotsSet in the PGDGroup to indicate to the operator which snapshots to restore. This is written by the restore job.
k8s.pgd.enterprisedb.io/useBarmanCloudPluginSet in the PGDGroup with value
trueto instruct the operator to enable the barman-cloud plugin. Once the plugin is enabled, a new sidecar container will be created for the instance pod. The sidecar container will manage the barman base backup and WAL archiving, rather than the PostgreSQL container. Keep in mind that the barman-cloud plugin must be installed in the PG4K operator namespace beforehand, and a restart of instance pod is required for these changes to take effect.