Schéma de spécification
PgBouncerSpec définit l'état sélectionné de PgBouncer.
accessMode: string
allowSuperUserAccess: boolean
dbclusterRef: string
parameters: object
podSpec:
image: string
resources:
cpu: integer or string
memory: integer or string
schedulingconfig:
nodeaffinity:
preferredDuringSchedulingIgnoredDuringExecution:
preference:
matchExpressions:
- key: string
operator: string
values: string
matchFields:
- key: string
operator: string
values: string
weight: integer
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
matchExpressions:
- key: string
operator: string
values: string
matchFields:
- key: string
operator: string
values: string
podAffinity:
preferredDuringSchedulingIgnoredDuringExecution:
- podAffinityTerm:
labelSelector:
matchExpressions:
- key: string
operator: string
values: string
matchLabels: object
namespaceSelector:
matchExpressions:
- key: string
operator: string
values: string
matchLabels: object
namespaces: string
topologyKey: string
weight: integer
requiredDuringSchedulingIgnoredDuringExecution:
labelSelector:
matchExpressions:
- key: string
operator: string
values: string
matchLabels: object
namespaceSelector:
matchExpressions:
- key: string
operator: string
values: string
matchLabels: object
namespaces: string
topologyKey: string
podAntiAffinity:
preferredDuringSchedulingIgnoredDuringExecution:
podAffinityTerm:
labelSelector:
matchExpressions:
- key: string
operator: string
type: string
matchLabels: object
namespaceSelector:
matchExpressions:
- key: string
operator: string
values: string
matchLabels: object
namespaces: string
topologyKey: string
weight: integer
requiredDuringSchedulingIgnoredDuringExecution:
labelSelector:
matchExpressions:
- key: string
operator: string
values: string
matchLabels: object
namespaceSelector:
matchExpressions:
- key: string
operator: string
type: string
matchLabels: object
namespaces: string
topologyKey: string
tolerations:
- effect: string
key: string
operator: string
tolerationSeconds: integer
value: string
replicaCount: integer
serverTLS:
certSecret:
name: string
serviceOptions:
annotations: object
gcp:
loadBalancerIP: string
loadBalancerType: string
type: object
Champ TypeObligatoire ou facultatif |
Description |
|---|---|
accessMode
| |
string(facultatif) |
Définit les modes d'accès read-write ou read-only pour les connexions PgBouncer. La valeur par défaut est read-only.
|
allowSuperUserAccess
| |
boolean(facultatif) | "AllowSuperUserAccess" peut être défini sur "true" ou "false". |
dbclusterRef
| |
stringObligatoire |
"DBClusterRef" est le nom du DBCluster pour lequel PgBouncer regroupe les connexions.
Vous devez créer l'objet PgBouncer dans le même espace de noms que le DBCluster auquel il fait référence. Ce champ est obligatoire pour le pooling de connexions PgBouncer.
|
parameters
| |
object(facultatif) | "Parameters" contient des paires clé-valeur de différentes configurations PgBouncer pouvant être définies. Consultez https://www.pgbouncer.org/config.html pour découvrir les différentes options disponibles. La section Créer un service PgBouncer fournit des exemples avec cette spécification. |
podspec
| |
objectObligatoire | "PodSpec" contient les spécifications du pod PgBouncer. Il contient les ressources de calcul, de stockage et d'image qui desservent le pod PgBouncer, ainsi que les options de planification. |
podSpec.image
| |
stringObligatoire | "Image" correspond à l'URI (Uniform Resource Identifier) d'une image pgbouncer personnalisée dans Artifact Registry. |
podSpec.resources
| |
objectObligatoire | "Resources" représente la configuration actuelle de la mémoire et du processeur. |
podSpec.resources.cpu
| |
integer or stringObligatoire | Quantité de ressources processeur allouée au conteneur pgbouncer. |
podSpec.resources.memory
| |
integer or stringObligatoire | Quantité de mémoire allouée au conteneur PgBouncer. |
podSpec.schedulingConfig
| |
object(facultatif) | Utilisez le champ "SchedulingConfig" pour spécifier comment l'instance est planifiée sur les nœuds Kubernetes. Si vous modifiez un champ de la configuration de planification, Kubernetes peut reprogrammer le pod sur un autre nœud, en fonction de la nouvelle configuration. |
podSpec.schedulingConfig.nodeAffinity
| |
object(facultatif) | "NodeAffinity" décrit les règles de planification de l'affinité de nœud pour l'instance. |
podSpec.schedulingConfig.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution
| |
object(facultatif) | Ce champ vous permet de spécifier des préférences d'affinité pour la planification des pods. Le planificateur tente de placer les pods sur des nœuds correspondant à vos préférences. Toutefois, ce n'est pas toujours possible. Le planificateur calcule une "pondération" pour chaque nœud en fonction de son adéquation avec vos préférences et choisit le nœud ayant la pondération la plus élevée. |
podSpec.schedulingConfig.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference
| |
objectObligatoire | Condition de sélecteur de nœud, associée à la pondération correspondante. |
podSpec.schedulingConfig.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchExpressions
| |
object(facultatif) | Liste des exigences du sélecteur de nœuds par étiquettes de nœuds. |
podSpec.schedulingConfig.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchExpressions.key
| |
stringObligatoire | Clé d'étiquette à laquelle s'applique le sélecteur. |
podSpec.schedulingConfig.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchExpressions.operator
| |
stringObligatoire |
Représente la relation d'une clé avec un ensemble de valeurs. Les opérateurs valides sont In, NotIn, Exists, DoesNotExist, Gt et Lt.
|
podSpec.schedulingConfig.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchExpressions.values
| |
string(facultatif) |
Tableau de valeurs de chaîne. Si l'opérateur est In ou NotIn, le tableau de valeurs ne doit pas être vide. Si l'opérateur est Exists ou DoesNotExist, le tableau de valeurs doit être vide. Si l'opérateur est Gt ou Lt, le tableau de valeurs doit comporter un seul élément, qui est interprété comme un entier. Ce tableau est remplacé lors de l'application d'un correctif de fusion stratégique.
|
podSpec.schedulingConfig.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchFields
| |
object(facultatif) | Liste des exigences de sélecteur de nœuds par champ de nœud. |
podSpec.schedulingConfig.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchFields.key
| |
stringObligatoire | Clé d'étiquette à laquelle s'applique le sélecteur. |
podSpec.schedulingConfig.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchFields.operator
| |
stringObligatoire |
Représente la relation d'une clé avec un ensemble de valeurs. Les opérateurs valides sont In, NotIn, Exists, DoesNotExist, Gt et Lt.
|
podSpec.schedulingConfig.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchFields.values
| |
string(facultatif) | Tableau de valeurs de chaîne. Si l'opérateur est "In" ou "NotIn", le tableau de valeurs ne doit pas être vide. Si l'opérateur est "Exists" ou "DoesNotExist", le tableau de valeurs doit être vide. Si l'opérateur est "Gt" ou "Lt", le tableau de valeurs doit comporter un seul élément, qui est interprété comme un entier. Ce tableau est remplacé lors de l'application d'un correctif de fusion stratégique. |
podSpec.schedulingConfig.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.weight
| |
integerObligatoire | La pondération associée à la mise en correspondance du "nodeSelectorTerm" correspondant est comprise entre 1 et 100 (inclus). |
podSpec.schedulingConfig.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution
| |
object(facultatif) | Si les exigences d'affinité de ce champ ne sont pas respectées, le planificateur ne planifie pas le pod sur le nœud. Si les exigences d'affinité spécifiées par ce champ ne sont pas respectées à un moment donné de l'exécution du pod, par exemple en raison d'une mise à jour, le système peut ou non essayer d'exclure le pod de son nœud. |
podSpec.schedulingConfig.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms
| |
objectObligatoire | Liste des conditions du sélecteur de nœuds. Les conditions sont combinées avec un opérateur OR. |
podSpec.schedulingConfig.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchExpressions
| |
object(facultatif) | Liste des exigences du sélecteur de nœuds par étiquettes de nœuds. |
podSpec.schedulingConfig.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchExpressions.key
| |
stringObligatoire | Clé d'étiquette à laquelle s'applique le sélecteur. |
podSpec.schedulingConfig.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchExpressions.operator
| |
stringObligatoire |
Représente la relation d'une clé avec un ensemble de valeurs. Les opérateurs valides sont In, NotIn, Exists, DoesNotExist, Gt et Lt.
|
podSpec.schedulingConfig.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchExpressions.values
| |
string(facultatif) | Tableau de valeurs de chaîne. Si l'opérateur est "In" ou "NotIn", le tableau de valeurs ne doit pas être vide. Si l'opérateur est "Exists" ou "DoesNotExist", le tableau de valeurs doit être vide. Si l'opérateur est "Gt" ou "Lt", le tableau de valeurs doit comporter un seul élément, qui est interprété comme un entier. Ce tableau est remplacé lors de l'application d'un correctif de fusion stratégique. |
podSpec.schedulingConfig.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchFields
| |
object(facultatif) | Liste des exigences de sélecteur de nœuds par champ de nœud. |
podSpec.schedulingConfig.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchFields.key
| |
stringObligatoire | Clé d'étiquette à laquelle s'applique le sélecteur. |
podSpec.schedulingConfig.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchFields.operator
| |
stringObligatoire |
Représente la relation d'une clé avec un ensemble de valeurs. Les opérateurs valides sont In, NotIn, Exists, DoesNotExist, Gt et Lt.
|
podSpec.schedulingConfig.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchFields.values
| |
string(facultatif) | Tableau de valeurs de chaîne. Si l'opérateur est "In" ou "NotIn", le tableau de valeurs ne doit pas être vide. Si l'opérateur est "Exists" ou "DoesNotExist", le tableau de valeurs doit être vide. Si l'opérateur est "Gt" ou "Lt", le tableau de valeurs doit comporter un seul élément, qui est interprété comme un entier. Ce tableau est remplacé lors de l'application d'un correctif de fusion stratégique. |
podSpec.schedulingConfig.podAffinity
| |
object(facultatif) | "PodAffinity" décrit les règles de planification de l'affinité des pods pour l'instance. |
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution
| |
object(facultatif) | Lors de la planification des pods, le planificateur donne la priorité aux nœuds qui répondent aux expressions d'affinité spécifiées dans ce champ. Le planificateur peut toujours choisir un nœud qui ne répond pas entièrement aux critères. Le nœud préféré est celui dont la pondération totale est la plus élevée. Cette pondération est calculée en additionnant les valeurs pour chaque nœud qui répond à toutes les exigences de planification (comme les demandes de ressources ou les expressions d'affinité "requiredDuringScheduling"). Pour chaque condition "podAffinityTerm" correspondante, la pondération du nœud augmente. Les nœuds ayant la pondération totale la plus élevée sont sélectionnés en tant que nœuds privilégiés. |
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm
| |
objectObligatoire | Condition d'affinité de pod, associée à la pondération correspondante. |
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector
| |
object(facultatif) | Requête d'étiquette sur un ensemble de ressources, dans le cas présent, des pods. |
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchExpressions
| |
object(facultatif) | Pour qu'une correspondance se produise, toutes les "matchExpressions" de la liste doivent être définies sur "true". |
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchExpressions.key
| |
stringObligatoire | Clé d'étiquette à laquelle s'applique le sélecteur. |
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchExpressions.operator
| |
stringObligatoire |
"operator" représente la relation entre une clé et un ensemble de valeurs. Les opérateurs valides sont In, NotIn, Exists et DoesNotExist.
|
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchExpressions.values
| |
string(facultatif) | "values" est un tableau de valeurs de chaîne. Si l'opérateur est "In" ou "NotIn", le tableau de valeurs ne doit pas être vide. Si l'opérateur est "Exists" ou "DoesNotExist", le tableau de valeurs doit être vide. Ce tableau est remplacé lors de l'application d'un correctif de fusion stratégique. |
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchLabels
| |
object(facultatif) | "matchLabels" est une carte de correspondance de paires {clé,valeur}. Une seule paire {clé,valeur} dans le mappage "matchLabels" équivaut à un élément de "matchExpressions", dont le champ de clé est "clé", l'opérateur est "In" et le tableau de valeurs ne contient que "valeur". Les exigences sont combinées par un opérateur AND. |
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector
| |
object(facultatif) | Requête d'étiquette sur l'ensemble des espaces de noms auxquels la condition s'applique. La condition s'applique à l'union des espaces de noms sélectionnés par ce champ et de ceux listés dans le champ "namespaces". Une sélection nulle et une liste d'espaces de noms nulle ou vide signifient "l'espace de noms de ce pod". Un sélecteur vide ({}) fait référence à tous les espaces de noms. |
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchExpressions
| |
object(facultatif) | "matchExpressions" est une liste d'exigences de sélecteur d'étiquettes. Les exigences sont combinées par un opérateur AND. |
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchExpressions.key
| |
stringObligatoire | "key" est la clé d'étiquette à laquelle le sélecteur s'applique. |
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchExpressions.operator
| |
stringObligatoire |
"operator" représente la relation entre une clé et un ensemble de valeurs. Les opérateurs valides sont In, NotIn, Exists et DoesNotExist.
|
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchExpressions.values
| |
string(facultatif) | "values" est un tableau de valeurs de chaîne. Si l'opérateur est "In" ou "NotIn", le tableau de valeurs ne doit pas être vide. Si l'opérateur est "Exists" ou "DoesNotExist", le tableau de valeurs doit être vide. Ce tableau est remplacé lors de l'application d'un correctif de fusion stratégique. |
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchLabels
| |
object(facultatif) | "matchLabels" est une carte de correspondance de paires {clé,valeur}. Une seule paire {clé,valeur} dans le mappage "matchLabels" équivaut à un élément de "matchExpressions", dont le champ de clé est "clé", l'opérateur est "In" et le tableau de valeurs ne contient que "valeur". Les exigences sont combinées par un opérateur AND. |
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaces
| |
string(facultatif) | "namespaces" spécifie une liste statique de noms d'espaces de noms auxquels la condition s'applique. La condition s'applique à l'union des espaces de noms listés dans ce champ et de ceux sélectionnés par "namespaceSelector". Une liste d'espaces de noms vide ou nulle et un "namespaceSelector" nul signifient "l'espace de noms de ce pod". |
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.topologyKey
| |
stringObligatoire | Ce pod doit être colocalisé (affinité) ou non colocalisé (anti-affinité) avec les pods correspondant au "labelSelector" dans les espaces de noms spécifiés. Colocalisation : exécution du pod sur un nœud dont la valeur de l'étiquette avec la clé topologyKey correspond à celle de n'importe quel nœud sur lequel l'un des pods sélectionnés est en cours d'exécution. La clé topologyKey ne peut pas être vide. |
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.weight
| |
integerObligatoire | Pondération associée à la mise en correspondance du "podAffinityTerm" correspondant, dans la plage de 1 à 100. |
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution
| |
object(facultatif) | Si les exigences d'affinité spécifiées par ce champ ne sont pas respectées au moment de la planification, le pod ne sera pas planifié sur le nœud. Si les exigences d'affinité spécifiées par ce champ ne sont pas respectées à un moment donné de l'exécution du pod (par exemple, en raison de la mise à jour d'une étiquette du pod), le système peut ou non essayer d'évincer le pod de son nœud. Lorsqu'il existe plusieurs éléments, les listes de nœuds correspondant à chaque "podAffinityTerm" sont croisées, ce qui signifie que toutes les conditions doivent être satisfaites. |
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector
| |
object(facultatif) | Requête d'étiquette sur un ensemble de ressources, dans le cas présent, des pods. |
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector
| |
object(facultatif) | Requête d'étiquette sur un ensemble de ressources, dans le cas présent, des pods. |
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchExpressions
| |
object(facultatif) | Pour qu'une correspondance se produise, toutes les "matchExpressions" de la liste doivent être définies sur "true". |
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchExpressions.key
| |
stringObligatoire | "key" est la clé d'étiquette à laquelle le sélecteur s'applique. |
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchExpressions.operator
| |
stringObligatoire |
"operator" représente la relation entre une clé et un ensemble de valeurs. Les opérateurs valides sont In, NotIn, Exists et DoesNotExist.
|
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchExpressions.values
| |
string(facultatif) | "values" est un tableau de valeurs de chaîne. Si l'opérateur est "In" ou "NotIn", le tableau de valeurs ne doit pas être vide. Si l'opérateur est "Exists" ou "DoesNotExist", le tableau de valeurs doit être vide. Ce tableau est remplacé lors de l'application d'un correctif de fusion stratégique. |
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchLabels
| |
object(facultatif) | "matchLabels" est une carte de correspondance de paires {clé,valeur}. Une seule paire {clé,valeur} dans le mappage "matchLabels" équivaut à un élément de "matchExpressions", dont le champ de clé est "clé", l'opérateur est "In" et le tableau de valeurs ne contient que "valeur". Les exigences sont combinées par un opérateur AND. |
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector
| |
object(facultatif) | Requête d'étiquette sur l'ensemble des espaces de noms auxquels la condition s'applique. La condition s'applique à l'union des espaces de noms sélectionnés par ce champ et de ceux listés dans le champ "namespaces". Une sélection nulle et une liste d'espaces de noms nulle ou vide signifient "l'espace de noms de ce pod". Un sélecteur vide ({}) fait référence à tous les espaces de noms. |
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchExpressions
| |
object(facultatif) | "matchExpressions" est une liste d'exigences de sélecteur d'étiquettes. Les exigences sont combinées par un opérateur AND. |
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchExpressions.key
| |
stringObligatoire | "key" est la clé d'étiquette à laquelle le sélecteur s'applique. |
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchExpressions.operator
| |
stringObligatoire |
"operator" représente la relation entre une clé et un ensemble de valeurs. Les opérateurs valides sont In, NotIn, Exists, DoesNotExist, Gt et Lt.
|
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchExpressions.values
| |
string(facultatif) | "values" est un tableau de valeurs de chaîne. Si l'opérateur est "In" ou "NotIn", le tableau de valeurs ne doit pas être vide. Si l'opérateur est "Exists" ou "DoesNotExist", le tableau de valeurs doit être vide. Ce tableau est remplacé lors de l'application d'un correctif de fusion stratégique. |
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchLabels
| |
object(facultatif) | "matchLabels" est une carte de correspondance de paires {clé,valeur}. Une seule paire {clé,valeur} dans le mappage "matchLabels" équivaut à un élément de "matchExpressions", dont le champ de clé est "clé", l'opérateur est "In" et le tableau de valeurs ne contient que "valeur". Les exigences sont combinées par un opérateur AND. |
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchLabels
| |
object(facultatif) | "matchLabels" est une carte de correspondance de paires {clé,valeur}. Une seule paire {clé,valeur} dans le mappage "matchLabels" équivaut à un élément de "matchExpressions", dont le champ de clé est "clé", l'opérateur est "In" et le tableau de valeurs ne contient que "valeur". Les exigences sont combinées par un opérateur AND. |
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaces
| |
string(facultatif) | "namespaces" spécifie une liste statique de noms d'espaces de noms auxquels la condition s'applique. La condition s'applique à l'union des espaces de noms listés dans ce champ et de ceux sélectionnés par "namespaceSelector". Une liste d'espaces de noms vide ou nulle et un "namespaceSelector" nul signifient "l'espace de noms de ce pod". |
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.topologyKey
| |
stringObligatoire | Ce pod doit être colocalisé (affinité) ou non colocalisé (anti-affinité) avec les pods correspondant au "labelSelector" dans les espaces de noms spécifiés. Colocalisation : exécution du pod sur un nœud dont la valeur de l'étiquette avec la clé topologyKey correspond à celle de n'importe quel nœud sur lequel l'un des pods sélectionnés est en cours d'exécution. La clé topologyKey ne peut pas être vide. |
podSpec.schedulingConfig.podAntiAffinity
| |
object(facultatif) | "PodAntiAffinity" décrit les règles de planification de l'anti-affinité de pod pour l'instance. |
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution
| |
object(facultatif) | Le planificateur préfère planifier les pods sur des nœuds qui satisfont les expressions d'anti-affinité spécifiées par ce champ, mais il peut choisir un nœud qui ne respecte pas une ou plusieurs expressions. Le nœud privilégié est celui dont la somme des pondérations est la plus élevée. En d'autres termes, pour chaque nœud qui répond à toutes les exigences de planification (demande de ressources, expressions d'anti-affinité "requiredDuringScheduling", etc.), calculez une somme en parcourant les éléments de ce champ et en ajoutant la "pondération" à la somme, si le nœud comporte des pods qui correspondent au "podAffinityTerm" correspondant. Le ou les nœuds dont la somme est la plus élevée sont privilégiés. |
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm
| |
objectObligatoire | Condition d'affinité de pod, associée à la pondération correspondante. |
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector
| |
object(facultatif) | Requête d'étiquette sur un ensemble de ressources, dans le cas présent, des pods. |
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchExpressions
| |
object(facultatif) | "matchExpressions" est une liste d'exigences de sélecteur d'étiquettes. Les exigences sont combinées par un opérateur AND. |
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchExpressions.key
| |
stringObligatoire | "key" est la clé d'étiquette à laquelle le sélecteur s'applique. |
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchExpressions.operator
| |
stringObligatoire |
"operator" représente la relation entre une clé et un ensemble de valeurs. Les opérateurs valides sont In, NotIn, Exists et DoesNotExist.
|
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchExpressions.values
| |
string(facultatif) | "values" est un tableau de valeurs de chaîne. Si l'opérateur est "In" ou "NotIn", le tableau de valeurs ne doit pas être vide. Si l'opérateur est "Exists" ou "DoesNotExist", le tableau de valeurs doit être vide. Ce tableau est remplacé lors de l'application d'un correctif de fusion stratégique. |
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchLabels
| |
object(facultatif) | "matchLabels" est une carte de correspondance de paires {clé,valeur}. Une seule paire {clé,valeur} dans le mappage "matchLabels" équivaut à un élément de "matchExpressions", dont le champ de clé est "clé", l'opérateur est "In" et le tableau de valeurs ne contient que "valeur". Les exigences sont combinées par un opérateur AND. |
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector
| |
object(facultatif) | Requête d'étiquette sur l'ensemble des espaces de noms auxquels la condition s'applique. La condition s'applique à l'union des espaces de noms sélectionnés par ce champ et de ceux listés dans le champ "namespaces". Une sélection nulle et une liste d'espaces de noms nulle ou vide signifient "l'espace de noms de ce pod". Un sélecteur vide ({}) fait référence à tous les espaces de noms. |
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchExpressions
| |
object(facultatif) | "matchExpressions" est une liste d'exigences de sélecteur d'étiquettes. Les exigences sont combinées par un opérateur AND. |
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchExpressions.key
| |
stringObligatoire | "key" est la clé d'étiquette à laquelle le sélecteur s'applique. |
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchExpressions.operator
| |
stringObligatoire |
"operator" représente la relation entre une clé et un ensemble de valeurs. Les opérateurs valides sont In, NotIn, Exists et DoesNotExist.
|
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchExpressions.values
| |
string(facultatif) | "values" est un tableau de valeurs de chaîne. Si l'opérateur est "In" ou "NotIn", le tableau de valeurs ne doit pas être vide. Si l'opérateur est "Exists" ou "DoesNotExist", le tableau de valeurs doit être vide. Ce tableau est remplacé lors de l'application d'un correctif de fusion stratégique. |
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchLabels
| |
object(facultatif) |
Carte de correspondance de paires clé/valeur. Chaque paire clé/valeur agit comme une exigence. Le planificateur associe les pods aux nœuds qui comportent toutes les étiquettes spécifiées dans matchLabels.
|
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaces
| |
string(facultatif) | "namespaces" spécifie une liste statique de noms d'espaces de noms auxquels la condition s'applique. La condition s'applique à l'union des espaces de noms listés dans ce champ et de ceux sélectionnés par "namespaceSelector". Une liste d'espaces de noms vide ou nulle et un "namespaceSelector" nul signifient "l'espace de noms de ce pod". |
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.topologyKey
| |
stringObligatoire | Ce pod doit être colocalisé (affinité) ou non colocalisé (anti-affinité) avec les pods correspondant au "labelSelector" dans les espaces de noms spécifiés. Colocalisation : exécution du pod sur un nœud dont la valeur de l'étiquette avec la clé topologyKey correspond à celle de n'importe quel nœud sur lequel l'un des pods sélectionnés est en cours d'exécution. La clé topologyKey ne peut pas être vide. |
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.weight
| |
integerObligatoire | Pondération associée à la mise en correspondance du "podAffinityTerm" correspondant, dans la plage de 1 à 100. |
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution
| |
object(facultatif) | Si les exigences d'anti-affinité spécifiées par ce champ ne sont pas respectées au moment de la planification, le pod n'est pas planifié sur le nœud. Si les exigences d'anti-affinité spécifiées par ce champ cessent d'être respectées à un moment donné pendant l'exécution du pod (par exemple, en raison d'une mise à jour d'une étiquette du pod), le système peut ou non essayer d'évincer le pod de son nœud. Lorsqu'il existe plusieurs éléments, les listes de nœuds correspondant à chaque "podAffinityTerm" sont croisées, ce qui signifie que toutes les conditions doivent être satisfaites. |
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector
| |
object(facultatif) | Requête d'étiquette sur un ensemble de ressources, dans le cas présent, des pods. |
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchExpressions
| |
object(facultatif) | "matchExpressions" est une liste d'exigences de sélecteur d'étiquettes. Les exigences sont combinées par un opérateur AND. |
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchExpressions.key
| |
stringObligatoire | "key" est la clé d'étiquette à laquelle le sélecteur s'applique. |
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchExpressions.operator
| |
stringObligatoire |
"operator" représente la relation entre une clé et un ensemble de valeurs. Les opérateurs valides sont In, NotIn, Exists et DoesNotExist.
|
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchExpressions.values
| |
string(facultatif) | "values" est un tableau de valeurs de chaîne. Si l'opérateur est "In" ou "NotIn", le tableau de valeurs ne doit pas être vide. Si l'opérateur est "Exists" ou "DoesNotExist", le tableau de valeurs doit être vide. Ce tableau est remplacé lors de l'application d'un correctif de fusion stratégique. |
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchLabels
| |
object(facultatif) | "matchLabels" est une carte de correspondance de paires {clé,valeur}. Une seule paire {clé,valeur} dans le mappage "matchLabels" équivaut à un élément de "matchExpressions", dont le champ de clé est "clé", l'opérateur est "In" et le tableau de valeurs ne contient que "valeur". Les exigences sont combinées par un opérateur AND. |
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector
| |
object(facultatif) | Requête d'étiquette sur l'ensemble des espaces de noms auxquels la condition s'applique. La condition s'applique à l'union des espaces de noms sélectionnés par ce champ et de ceux listés dans le champ "namespaces". Une sélection nulle et une liste d'espaces de noms nulle ou vide signifient "l'espace de noms de ce pod". Un sélecteur vide ({}) fait référence à tous les espaces de noms. |
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchExpressions
| |
object(facultatif) | "matchExpressions" est une liste d'exigences de sélecteur d'étiquettes. Les exigences sont combinées par un opérateur AND. |
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchExpressions.key
| |
stringObligatoire | "key" est la clé d'étiquette à laquelle le sélecteur s'applique. |
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchExpressions.operator
| |
stringObligatoire |
"operator" représente la relation entre une clé et un ensemble de valeurs. Les opérateurs valides sont In, NotIn, Exists et DoesNotExist.
|
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchExpressions.values
| |
string(facultatif) | "values" est un tableau de valeurs de chaîne. Si l'opérateur est "In" ou "NotIn", le tableau de valeurs ne doit pas être vide. Si l'opérateur est "Exists" ou "DoesNotExist", le tableau de valeurs doit être vide. Ce tableau est remplacé lors de l'application d'un correctif de fusion stratégique. |
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchLabels
| |
object(facultatif) | "matchLabels" est une carte de correspondance de paires {clé,valeur}. Une seule paire {clé,valeur} dans le mappage "matchLabels" équivaut à un élément de "matchExpressions", dont le champ de clé est "clé", l'opérateur est "In" et le tableau de valeurs ne contient que "valeur". Les exigences sont combinées par un opérateur AND. |
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaces
| |
string(facultatif) | "namespaces" spécifie une liste statique de noms d'espaces de noms auxquels la condition s'applique. La condition s'applique à l'union des espaces de noms listés dans ce champ et de ceux sélectionnés par "namespaceSelector". Une liste d'espaces de noms vide ou nulle et un "namespaceSelector" nul signifient "l'espace de noms de ce pod". |
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.topologyKey
| |
stringObligatoire | Ce pod doit être colocalisé (affinité) ou non colocalisé (anti-affinité) avec les pods correspondant au "labelSelector" dans les espaces de noms spécifiés. Colocalisation : exécution du pod sur un nœud dont la valeur de l'étiquette avec la clé topologyKey correspond à celle de n'importe quel nœud sur lequel l'un des pods sélectionnés est en cours d'exécution. La clé topologyKey ne peut pas être vide. |
podSpec.schedulingConfig.tolerations
| |
object(facultatif) | Les tolérances permettent de gérer s'il est autorisé ou interdit de planifier une instance sur un nœud Kubernetes auquel un rejet spécifique est appliqué. |
podSpec.schedulingConfig.tolerations.effect
| |
string(facultatif) | "Effect" indique l'effet de rejet à mettre en correspondance. Une valeur vide signifie que tous les effets de rejet correspondent. Si ce paramètre est spécifié, les valeurs autorisées sont "NoSchedule", "PreferNoSchedule" et "NoExecute". |
podSpec.schedulingConfig.tolerations.key
| |
string(facultatif) | "Key" est la clé de rejet à laquelle s'applique la tolérance. Une valeur vide signifie que toutes les clés de rejet correspondent. Si la clé est vide, l'opérateur doit être "Exists". Cette combinaison signifie que toutes les valeurs et toutes les clés doivent correspondre. |
podSpec.schedulingConfig.tolerations.operator
| |
string(facultatif) |
"Operator" représente la relation entre une clé et la valeur. Les opérateurs valides sont Exists et Equal. La valeur par défaut est Equal. Exists équivaut à un caractère générique pour la valeur, de sorte qu'un pod peut tolérer tous les rejets d'une catégorie particulière.
|
podSpec.schedulingConfig.tolerations.tolerationSeconds
| |
integer(facultatif) | "TolerationSeconds" représente la période pendant laquelle la tolérance (qui doit être de type "NoExecute", sinon ce champ est ignoré) tolère le rejet. Par défaut, ce champ n'est pas défini, ce qui signifie que le rejet est toléré indéfiniment (aucune éviction). Les valeurs nulles et négatives sont traitées comme des valeurs nulles (éviction immédiate) par le système. |
podSpec.schedulingConfig.tolerations.value
| |
string(facultatif) | La valeur est la valeur de rejet à laquelle la tolérance correspond. Si l'opérateur est "Exists", la valeur doit être vide. Sinon, il doit s'agir d'une chaîne standard. |
replicaCount
| |
integer(facultatif) | "ReplicaCount" définit le nombre d'instances répliquées PgBouncer à déployer. |
serverTLS
| |
object(facultatif) | "ServerTLSSpec" définit le secret du certificat pour la communication chiffrée utilisée par PgBouncer pour se connecter au cluster de bases de données pour la requête d'authentification. |
serverTLS.certSecret
| |
object(facultatif) | "CertSecret" fait référence au secret du certificat dans le même espace de noms. Le secret doit contenir les entrées ca.crt (certificat de l'autorité de certification), tls.key (clé privée) et tls.crt (certificat d'entité finale). Les valeurs de ce secret sont utilisées pour renseigner server_tls_ca_file, server_tls_cert_file et server_tls_key_file dans pgbouncer.ini. Le certificat CA doit correspondre à l'autorité de certification qui a signé le certificat d'entité finale du cluster de bases de données. Le certificat d'entité finale doit contenir le CommonName "alloydbpgbouncer". |
serverTLS.certSecret.name
| |
string(facultatif) | Nom du référent. Pour en savoir plus, consultez Travailler avec des objets#Noms. |
serviceOptions
| |
objectObligatoire | "ServiceOptions" définit les options de connectivité pour accéder aux pods PgBouncer. |
serviceOptions.annotations
| |
object(facultatif) | L'annotation fournie par le client sera ajoutée à l'objet de service de type "loadbalancer". |
serviceOptions.gcp
| |
object(facultatif) | GCP contient des attributs spécifiques à Google Cloud pour l'équilibreur de charge Kubernetes. |
serviceOptions.gcp.loadBalancerIP
| |
integer or string(facultatif) | "LoadBalancerIP" est une adresse IP statique. Pour en savoir plus, consultez Réserver une adresse IP externe statique. |
serviceOptions.gcp.loadBalancerType
| |
string(facultatif) | Un équilibreur de charge peut être interne ou externe. Consultez Équilibreur de charge interne. |
serviceOptions.type
| |
stringObligatoire |
Type de service Kubernetes permettant d'accéder au pod PgBouncer. Il peut avoir les valeurs suivantes : LoadBalancer ou ClusterIP.
|
Schéma d'état
PgBouncerStatus définit l'état observé de PgBouncer.
ipAddress: string
phase: string
Champ TypeObligatoire ou facultatif |
Description |
|---|---|
ipAddress
| |
stringObligatoire | "ipAddress" est le point de terminaison PgBouncer auquel vous pouvez vous connecter pour accéder à la base de données. |
phase
| |
stringObligatoire | "phase" décrit l'état du déploiement PgBouncer. Les valeurs telles que "WaitingForDeploymentReady", "Acquiring IP" et "Ready" s'affichent ici. |