Definizione di risorsa personalizzata PgBouncer 1.4.0

Seleziona una versione della documentazione:

Schema delle specifiche

PgBouncerSpec definisce lo stato selezionato di 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
  loadBalancerSourceRanges: array
    items: string
  type: object

Campo

Tipo
Obbligatorio o facoltativo

 

Descrizione
accessMode
string
Facoltativo
Definisce le modalità di accesso read-write o read-only per le connessioni PgBouncer. Il valore predefinito è read-only.
allowSuperUserAccess
boolean
Facoltativo
AllowSuperUserAccess può essere impostato su true o false
dbclusterRef
string
Obbligatorio
DBClusterRef è il nome del cluster di database per cui PgBouncer raggruppa le connessioni. Devi creare l'oggetto PgBouncer nello stesso spazio dei nomi del DBCluster a cui fa riferimento. Questo campo è obbligatorio per il pooling delle connessioni PgBouncer.
parameters
object
Facoltativo
I parametri conterranno coppie chiave-valore di varie configurazioni di PgBouncer che possono essere impostate. Consulta la pagina https://www.pgbouncer.org/config.html per le varie opzioni disponibili. Crea un servizio PgBouncer fornisce alcuni esempi con questa specifica.
podspec
object
Obbligatorio
PodSpec contiene le specifiche del pod PgBouncer. Contiene le risorse di immagine, di calcolo e di archiviazione che gestiscono il pod PgBouncer insieme alle opzioni di pianificazione.
podSpec.image
string
Obbligatorio
Image è l'identificatore uniforme di risorse di un'immagine pgbouncer personalizzata all'interno del registro degli artefatti.
podSpec.resources
object
Obbligatorio
Risorse rappresenta la configurazione attuale di memoria e CPU.
podSpec.resources.cpu
integer or string
Obbligatorio
La quantità di CPU allocata al container pgbouncer.
podSpec.resources.memory
integer or string
Obbligatorio
La quantità di memoria allocata al container PgBouncer.
podSpec.schedulingConfig
object
Facoltativo
Utilizza il campo SchedulingConfig per specificare come viene pianificata l'istanza sui nodi Kubernetes. La modifica di qualsiasi campo all'interno della configurazione di pianificazione può causare la ripianificazione del pod su un nodo diverso da parte di Kubernetes, a seconda della nuova configurazione.
podSpec.schedulingConfig.nodeAffinity
object
Facoltativo
NodeAffinity descrive le regole di pianificazione dell'affinità dei nodi per l'istanza.
podSpec.schedulingConfig.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution
object
Facoltativo
Questo campo ti consente di specificare le preferenze di affinità per la pianificazione dei pod. Lo scheduler tenta di posizionare i pod sui nodi che corrispondono alle tue preferenze. Tuttavia, non è sempre possibile. Lo scheduler calcola un "peso" per ogni nodo in base a quanto corrisponde alle tue preferenze e sceglie il nodo con il peso più alto.
podSpec.schedulingConfig.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference
object
Obbligatorio
Un termine di selezione dei nodi, associato al peso corrispondente.
podSpec.schedulingConfig.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchExpressions
object
Facoltativo
Un elenco dei requisiti del selettore di nodi in base alle etichette del nodo.
podSpec.schedulingConfig.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchExpressions.key
string
Obbligatorio
La chiave dell'etichetta a cui si applica il selettore.
podSpec.schedulingConfig.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchExpressions.operator
string
Obbligatorio
Rappresenta la relazione di una chiave con un insieme di valori. Gli operatori validi sono In, NotIn, Exists, DoesNotExist, Gt e Lt.
podSpec.schedulingConfig.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchExpressions.values
string
Facoltativo
Un array di valori stringa. Se l'operatore è In o NotIn, l'array di valori non deve essere vuoto. Se l'operatore è Exists o DoesNotExist, l'array di valori deve essere vuoto. Se l'operatore è Gt o Lt, l'array di valori deve avere un singolo elemento, che viene interpretato come un numero intero. Questo array viene sostituito durante una patch di unione strategica.
podSpec.schedulingConfig.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchFields
object
Facoltativo
Un elenco di requisiti del selettore di nodi in base ai campi del nodo.
podSpec.schedulingConfig.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchFields.key
string
Obbligatorio
La chiave dell'etichetta a cui si applica il selettore.
podSpec.schedulingConfig.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchFields.operator
string
Obbligatorio
Rappresenta la relazione di una chiave con un insieme di valori. Gli operatori validi sono In, NotIn, Exists, DoesNotExist, Gt e Lt.
podSpec.schedulingConfig.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchFields.values
string
Facoltativo
Un array di valori stringa. Se l'operatore è In o NotIn, l'array di valori non deve essere vuoto. Se l'operatore è Exists o DoesNotExist, l'array di valori deve essere vuoto. Se l'operatore è Gt o Lt, l'array di valori deve contenere un singolo elemento, che viene interpretato come un numero intero. Questo array viene sostituito durante una patch di unione strategica.
podSpec.schedulingConfig.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.weight
integer
Obbligatorio
Il peso associato alla corrispondenza del nodeSelectorTerm corrispondente è compreso tra 1 e 100 (inclusi).
podSpec.schedulingConfig.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution
object
Facoltativo
Se i requisiti di affinità di questo campo non vengono soddisfatti, lo scheduler non pianifica il pod sul nodo. Se i requisiti di affinità specificati da questo campo non vengono soddisfatti in un determinato momento durante l'esecuzione del pod, ad esempio a causa di un aggiornamento, il sistema potrebbe o meno tentare di espellere il pod dal relativo nodo.
podSpec.schedulingConfig.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms
object
Obbligatorio
Un elenco di termini del selettore di nodi. I termini sono combinati con l'operatore OR.
podSpec.schedulingConfig.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchExpressions
object
Facoltativo
Un elenco dei requisiti del selettore di nodi in base alle etichette del nodo.
podSpec.schedulingConfig.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchExpressions.key
string
Obbligatorio
La chiave dell'etichetta a cui si applica il selettore.
podSpec.schedulingConfig.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchExpressions.operator
string
Obbligatorio
Rappresenta la relazione di una chiave con un insieme di valori. Gli operatori validi sono In, NotIn, Exists, DoesNotExist, Gt e Lt.
podSpec.schedulingConfig.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchExpressions.values
string
Facoltativo
Un array di valori stringa. Se l'operatore è In o NotIn, l'array di valori non deve essere vuoto. Se l'operatore è Exists o DoesNotExist, l'array di valori deve essere vuoto. Se l'operatore è Gt o Lt, l'array di valori deve contenere un singolo elemento, che viene interpretato come un numero intero. Questo array viene sostituito durante una patch di unione strategica.
podSpec.schedulingConfig.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchFields
object
Facoltativo
Un elenco di requisiti del selettore di nodi in base ai campi del nodo.
podSpec.schedulingConfig.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchFields.key
string
Obbligatorio
La chiave dell'etichetta a cui si applica il selettore.
podSpec.schedulingConfig.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchFields.operator
string
Obbligatorio
Rappresenta la relazione di una chiave con un insieme di valori. Gli operatori validi sono In, NotIn, Exists, DoesNotExist, Gt e Lt.
podSpec.schedulingConfig.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchFields.values
string
Facoltativo
Un array di valori stringa. Se l'operatore è In o NotIn, l'array di valori non deve essere vuoto. Se l'operatore è Exists o DoesNotExist, l'array di valori deve essere vuoto. Se l'operatore è Gt o Lt, l'array di valori deve contenere un singolo elemento, che viene interpretato come un numero intero. Questo array viene sostituito durante una patch di unione strategica.
podSpec.schedulingConfig.podAffinity
object
Facoltativo
PodAffinity descrive le regole di pianificazione dell'affinità dei pod per l'istanza.
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution
object
Facoltativo
Lo scheduler assegna la priorità ai nodi che soddisfano le espressioni di affinità specificate in questo campo durante la pianificazione dei pod. Lo scheduler potrebbe comunque scegliere un nodo che non soddisfa completamente i criteri. Il nodo preferito è quello con il peso totale più elevato. Questo peso viene calcolato sommando i valori di ogni nodo che soddisfa tutti i requisiti di pianificazione (ad esempio richieste di risorse o espressioni di affinità requiredDuringScheduling). Per ogni podAffinityTerm corrispondente, il peso del nodo aumenta e i nodi con il peso totale più alto vengono selezionati come i più preferiti.
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm
object
Obbligatorio
Un termine di affinità del pod, associato al peso corrispondente.
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector
object
Facoltativo
Una query di etichette su un insieme di risorse, in questo caso i pod.
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchExpressions
object
Facoltativo
Affinché si verifichi una corrispondenza, tutte le matchExpressions all'interno dell'elenco devono essere vere.
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchExpressions.key
string
Obbligatorio
La chiave dell'etichetta a cui si applica il selettore.
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchExpressions.operator
string
Obbligatorio
rappresenta la relazione di una chiave con un insieme di valori. Gli operatori validi sono In, NotIn, Exists e DoesNotExist.
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchExpressions.values
string
Facoltativo
values è un array di valori stringa. Se l'operatore è In o NotIn, l'array di valori non deve essere vuoto. Se l'operatore è Exists o DoesNotExist, l'array di valori deve essere vuoto. Questo array viene sostituito durante una patch di unione strategica.
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchLabels
object
Facoltativo
matchLabels è una mappa di coppie {chiave,valore}. Una singola coppia {key,value} nella mappa matchLabels equivale a un elemento di matchExpressions, il cui campo chiave è "key", l'operatore è "In" e l'array dei valori contiene solo "value". I requisiti sono combinati con l'operatore AND.
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector
object
Facoltativo
Una query di etichette sull'insieme di spazi dei nomi a cui si applica il termine. Il termine viene applicato all'unione degli spazi dei nomi selezionati da questo campo e di quelli elencati nel campo degli spazi dei nomi. Il selettore null e l'elenco degli spazi dei nomi null o vuoto indicano "lo spazio dei nomi di questo pod". Un selettore vuoto ({}) corrisponde a tutti gli spazi dei nomi.
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchExpressions
object
Facoltativo
matchExpressions è un elenco di requisiti del selettore di etichette. I requisiti sono combinati con l'operatore AND.
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchExpressions.key
string
Obbligatorio
key è la chiave dell'etichetta a cui si applica il selettore.
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchExpressions.operator
string
Obbligatorio
rappresenta la relazione di una chiave con un insieme di valori. Gli operatori validi sono In, NotIn, Exists e DoesNotExist.
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchExpressions.values
string
Facoltativo
values è un array di valori stringa. Se l'operatore è In o NotIn, l'array di valori non deve essere vuoto. Se l'operatore è Exists o DoesNotExist, l'array di valori deve essere vuoto. Questo array viene sostituito durante una patch di unione strategica.
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchLabels
object
Facoltativo
matchLabels è una mappa di coppie {chiave,valore}. Una singola coppia {key,value} nella mappa matchLabels equivale a un elemento di matchExpressions, il cui campo chiave è "key", l'operatore è "In" e l'array dei valori contiene solo "value". I requisiti sono combinati con l'operatore AND.
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaces
string
Facoltativo
namespaces specifica un elenco statico di nomi di spazi dei nomi a cui si applica il termine. Il termine viene applicato all'unione degli spazi dei nomi elencati in questo campo e di quelli selezionati da namespaceSelector. L'elenco degli spazi dei nomi null o vuoto e namespaceSelector null significa "lo spazio dei nomi di questo pod".
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.topologyKey
string
Obbligatorio
Questo pod deve essere collocato (affinità) o non collocato (anti-affinità) insieme ai pod che corrispondono a labelSelector negli spazi dei nomi specificati. La colocation è definita come l'esecuzione su un nodo il cui valore dell'etichetta con chiave topologyKey corrisponde a quello di qualsiasi nodo su cui è in esecuzione uno dei pod selezionati. topologyKey vuota non è consentita.
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.weight
integer
Obbligatorio
ponderazione associata alla corrispondenza del podAffinityTerm corrispondente, nell'intervallo 1-100.
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution
object
Facoltativo
Se i requisiti di affinità specificati da questo campo non vengono soddisfatti al momento della pianificazione, il pod non verrà pianificato sul nodo. Se i requisiti di affinità specificati da questo campo non vengono soddisfatti a un certo punto durante l'esecuzione del pod, ad esempio a causa di un aggiornamento dell'etichetta del pod, il sistema potrebbe o meno tentare di espellere il pod dal relativo nodo. Quando sono presenti più elementi, gli elenchi di nodi corrispondenti a ogni podAffinityTerm vengono intersecati, il che significa che tutti i termini devono essere soddisfatti.
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector
object
Facoltativo
Una query di etichette su un insieme di risorse, in questo caso i pod.
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector
object
Facoltativo
Una query di etichette su un insieme di risorse, in questo caso i pod.
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchExpressions
object
Facoltativo
Affinché si verifichi una corrispondenza, tutte le matchExpressions all'interno dell'elenco devono essere vere.
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchExpressions.key
string
Obbligatorio
key è la chiave dell'etichetta a cui si applica il selettore.
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchExpressions.operator
string
Obbligatorio
rappresenta la relazione di una chiave con un insieme di valori. Gli operatori validi sono In, NotIn, Exists e DoesNotExist.
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchExpressions.values
string
Facoltativo
values è un array di valori stringa. Se l'operatore è In o NotIn, l'array di valori non deve essere vuoto. Se l'operatore è Exists o DoesNotExist, l'array di valori deve essere vuoto. Questo array viene sostituito durante una patch di unione strategica.
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchLabels
object
Facoltativo
matchLabels è una mappa di coppie {chiave,valore}. Una singola coppia {key,value} nella mappa matchLabels equivale a un elemento di matchExpressions, il cui campo chiave è "key", l'operatore è "In" e l'array dei valori contiene solo "value". I requisiti sono combinati con l'operatore AND.
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector
object
Facoltativo
Una query di etichette sull'insieme di spazi dei nomi a cui si applica il termine. Il termine viene applicato all'unione degli spazi dei nomi selezionati da questo campo e di quelli elencati nel campo degli spazi dei nomi. Il selettore null e l'elenco degli spazi dei nomi null o vuoto indicano "lo spazio dei nomi di questo pod". Un selettore vuoto ({}) corrisponde a tutti gli spazi dei nomi.
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchExpressions
object
Facoltativo
matchExpressions è un elenco di requisiti del selettore di etichette. I requisiti sono combinati con l'operatore AND.
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchExpressions.key
string
Obbligatorio
key è la chiave dell'etichetta a cui si applica il selettore.
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchExpressions.operator
string
Obbligatorio
rappresenta la relazione di una chiave con un insieme di valori. Gli operatori validi sono In, NotIn, Exists, DoesNotExist, Gt e Lt.
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchExpressions.values
string
Facoltativo
values è un array di valori stringa. Se l'operatore è In o NotIn, l'array di valori non deve essere vuoto. Se l'operatore è Exists o DoesNotExist, l'array di valori deve essere vuoto. Questo array viene sostituito durante una patch di unione strategica.
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchLabels
object
Facoltativo
matchLabels è una mappa di coppie {chiave,valore}. Una singola coppia {key,value} nella mappa matchLabels equivale a un elemento di matchExpressions, il cui campo chiave è "key", l'operatore è "In" e l'array dei valori contiene solo "value". I requisiti sono combinati con l'operatore AND.
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchLabels
object
Facoltativo
matchLabels è una mappa di coppie {chiave,valore}. Una singola coppia {key,value} nella mappa matchLabels equivale a un elemento di matchExpressions, il cui campo chiave è "key", l'operatore è "In" e l'array dei valori contiene solo "value". I requisiti sono combinati con l'operatore AND.
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaces
string
Facoltativo
namespaces specifica un elenco statico di nomi di spazi dei nomi a cui si applica il termine. Il termine viene applicato all'unione degli spazi dei nomi elencati in questo campo e di quelli selezionati da namespaceSelector. L'elenco degli spazi dei nomi null o vuoto e namespaceSelector null significa "lo spazio dei nomi di questo pod".
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.topologyKey
string
Obbligatorio
Questo pod deve essere collocato (affinità) o non collocato (anti-affinità) insieme ai pod che corrispondono a labelSelector negli spazi dei nomi specificati. La colocation è definita come l'esecuzione su un nodo il cui valore dell'etichetta con chiave topologyKey corrisponde a quello di qualsiasi nodo su cui è in esecuzione uno dei pod selezionati. topologyKey vuota non è consentita.
podSpec.schedulingConfig.podAntiAffinity
object
Facoltativo
PodAntiAffinity descrive le regole di pianificazione dell'anti-affinità tra pod per l'istanza.
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution
object
Facoltativo
Lo scheduler preferisce pianificare i pod sui nodi che soddisfano le espressioni di anti-affinità specificate da questo campo, ma potrebbe scegliere un nodo che viola una o più espressioni. Il nodo preferito è quello con la somma dei pesi maggiore. In altre parole, per ogni nodo che soddisfa tutti i requisiti di pianificazione (richiesta di risorse, espressioni di anti-affinità RequiredDuringScheduling e così via), calcola una somma iterando gli elementi di questo campo e aggiungendo "peso" alla somma, se il nodo ha pod che corrispondono al podAffinityTerm corrispondente. I nodi con la somma più alta sono i preferiti.
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm
object
Obbligatorio
Un termine di affinità del pod, associato al peso corrispondente.
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector
object
Facoltativo
Una query di etichette su un insieme di risorse, in questo caso i pod.
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchExpressions
object
Facoltativo
matchExpressions è un elenco di requisiti del selettore di etichette. I requisiti sono combinati con l'operatore AND.
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchExpressions.key
string
Obbligatorio
key è la chiave dell'etichetta a cui si applica il selettore.
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchExpressions.operator
string
Obbligatorio
rappresenta la relazione di una chiave con un insieme di valori. Gli operatori validi sono In, NotIn, Exists e DoesNotExist.
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchExpressions.values
string
Facoltativo
values è un array di valori stringa. Se l'operatore è In o NotIn, l'array di valori non deve essere vuoto. Se l'operatore è Exists o DoesNotExist, l'array di valori deve essere vuoto. Questo array viene sostituito durante una patch di unione strategica.
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchLabels
object
Facoltativo
matchLabels è una mappa di coppie {chiave,valore}. Una singola coppia {key,value} nella mappa matchLabels equivale a un elemento di matchExpressions, il cui campo chiave è "key", l'operatore è "In" e l'array dei valori contiene solo "value". I requisiti sono combinati con l'operatore AND.
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector
object
Facoltativo
Una query di etichette sull'insieme di spazi dei nomi a cui si applica il termine. Il termine viene applicato all'unione degli spazi dei nomi selezionati da questo campo e di quelli elencati nel campo degli spazi dei nomi. Il selettore null e l'elenco degli spazi dei nomi null o vuoto indicano "lo spazio dei nomi di questo pod". Un selettore vuoto ({}) corrisponde a tutti gli spazi dei nomi.
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchExpressions
object
Facoltativo
matchExpressions è un elenco di requisiti del selettore di etichette. I requisiti sono combinati con l'operatore AND.
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchExpressions.key
string
Obbligatorio
key è la chiave dell'etichetta a cui si applica il selettore.
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchExpressions.operator
string
Obbligatorio
rappresenta la relazione di una chiave con un insieme di valori. Gli operatori validi sono In, NotIn, Exists e DoesNotExist.
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchExpressions.values
string
Facoltativo
values è un array di valori stringa. Se l'operatore è In o NotIn, l'array di valori non deve essere vuoto. Se l'operatore è Exists o DoesNotExist, l'array di valori deve essere vuoto. Questo array viene sostituito durante una patch di unione strategica.
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchLabels
object
Facoltativo
Una mappa di coppie chiave-valore. Ogni coppia chiave-valore funge da requisito. Lo scheduler associa i pod ai nodi che hanno tutte le etichette specificate in matchLabels.
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaces
string
Facoltativo
namespaces specifica un elenco statico di nomi di spazi dei nomi a cui si applica il termine. Il termine viene applicato all'unione degli spazi dei nomi elencati in questo campo e di quelli selezionati da namespaceSelector. L'elenco degli spazi dei nomi null o vuoto e namespaceSelector null significa "lo spazio dei nomi di questo pod".
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.topologyKey
string
Obbligatorio
Questo pod deve essere collocato (affinità) o non collocato (anti-affinità) insieme ai pod che corrispondono a labelSelector negli spazi dei nomi specificati. La colocation è definita come l'esecuzione su un nodo il cui valore dell'etichetta con chiave topologyKey corrisponde a quello di qualsiasi nodo su cui è in esecuzione uno dei pod selezionati. topologyKey vuota non è consentita.
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.weight
integer
Obbligatorio
ponderazione associata alla corrispondenza del podAffinityTerm corrispondente, nell'intervallo 1-100.
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution
object
Facoltativo
Se i requisiti di anti-affinità specificati da questo campo non vengono soddisfatti al momento della pianificazione, il pod non viene pianificato sul nodo. Se i requisiti di anti-affinità specificati da questo campo non vengono più soddisfatti a un certo punto durante l'esecuzione del pod (ad esempio, a causa di un aggiornamento dell'etichetta del pod), il sistema potrebbe o meno tentare di espellere il pod dal suo nodo. Quando sono presenti più elementi, gli elenchi di nodi corrispondenti a ogni podAffinityTerm vengono intersecati, il che significa che tutti i termini devono essere soddisfatti.
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector
object
Facoltativo
Una query di etichette su un insieme di risorse, in questo caso i pod.
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchExpressions
object
Facoltativo
matchExpressions è un elenco di requisiti del selettore di etichette. I requisiti sono combinati con l'operatore AND.
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchExpressions.key
string
Obbligatorio
key è la chiave dell'etichetta a cui si applica il selettore.
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchExpressions.operator
string
Obbligatorio
rappresenta la relazione di una chiave con un insieme di valori. Gli operatori validi sono In, NotIn, Exists e DoesNotExist.
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchExpressions.values
string
Facoltativo
values è un array di valori stringa. Se l'operatore è In o NotIn, l'array di valori non deve essere vuoto. Se l'operatore è Exists o DoesNotExist, l'array di valori deve essere vuoto. Questo array viene sostituito durante una patch di unione strategica.
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchLabels
object
Facoltativo
matchLabels è una mappa di coppie {chiave,valore}. Una singola coppia {key,value} nella mappa matchLabels equivale a un elemento di matchExpressions, il cui campo chiave è "key", l'operatore è "In" e l'array dei valori contiene solo "value". I requisiti sono combinati con l'operatore AND.
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector
object
Facoltativo
Una query di etichette sull'insieme di spazi dei nomi a cui si applica il termine. Il termine viene applicato all'unione degli spazi dei nomi selezionati da questo campo e di quelli elencati nel campo degli spazi dei nomi. Il selettore null e l'elenco degli spazi dei nomi null o vuoto indicano "lo spazio dei nomi di questo pod". Un selettore vuoto ({}) corrisponde a tutti gli spazi dei nomi.
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchExpressions
object
Facoltativo
matchExpressions è un elenco di requisiti del selettore di etichette. I requisiti sono combinati con l'operatore AND.
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchExpressions.key
string
Obbligatorio
key è la chiave dell'etichetta a cui si applica il selettore.
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchExpressions.operator
string
Obbligatorio
rappresenta la relazione di una chiave con un insieme di valori. Gli operatori validi sono In, NotIn, Exists e DoesNotExist.
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchExpressions.values
string
Facoltativo
values è un array di valori stringa. Se l'operatore è In o NotIn, l'array di valori non deve essere vuoto. Se l'operatore è Exists o DoesNotExist, l'array di valori deve essere vuoto. Questo array viene sostituito durante una patch di unione strategica.
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchLabels
object
Facoltativo
matchLabels è una mappa di coppie {chiave,valore}. Una singola coppia {key,value} nella mappa matchLabels equivale a un elemento di matchExpressions, il cui campo chiave è "key", l'operatore è "In" e l'array dei valori contiene solo "value". I requisiti sono combinati con l'operatore AND.
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaces
string
Facoltativo
namespaces specifica un elenco statico di nomi di spazi dei nomi a cui si applica il termine. Il termine viene applicato all'unione degli spazi dei nomi elencati in questo campo e di quelli selezionati da namespaceSelector. L'elenco degli spazi dei nomi null o vuoto e namespaceSelector null significa "lo spazio dei nomi di questo pod".
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.topologyKey
string
Obbligatorio
Questo pod deve essere collocato (affinità) o non collocato (anti-affinità) insieme ai pod che corrispondono a labelSelector negli spazi dei nomi specificati. La colocation è definita come l'esecuzione su un nodo il cui valore dell'etichetta con chiave topologyKey corrisponde a quello di qualsiasi nodo su cui è in esecuzione uno dei pod selezionati. topologyKey vuota non è consentita.
podSpec.schedulingConfig.tolerations
object
Facoltativo
Le tolleranze consentono di gestire se consentire o meno la pianificazione di un'istanza su un nodo Kubernetes a cui è stata applicata una specifica contaminazione.
podSpec.schedulingConfig.tolerations.effect
string
Facoltativo
Effect indica l'effetto di contaminazione da abbinare. Se il campo è vuoto, vengono corrisposti tutti gli effetti di taint. Se specificati, i valori consentiti sono NoSchedule, PreferNoSchedule e NoExecute.
podSpec.schedulingConfig.tolerations.key
string
Facoltativo
Key è la chiave di incompatibilità a cui si applica la tolleranza. Se il campo è vuoto, corrisponde a tutte le chiavi di taint. Se la chiave è vuota, l'operatore deve essere Exists. Questa combinazione significa che devono corrispondere tutti i valori e tutte le chiavi.
podSpec.schedulingConfig.tolerations.operator
string
Facoltativo
L'operatore rappresenta la relazione di una chiave con il valore. Gli operatori validi sono Exists e Equal. Il valore predefinito è Equal. Exists è equivalente al carattere jolly per il valore, in modo che un pod possa tollerare tutte le contaminazioni di una determinata categoria.
podSpec.schedulingConfig.tolerations.tolerationSeconds
integer
Facoltativo
TolerationSeconds rappresenta il periodo di tempo in cui la tolleranza (che deve avere l'effetto NoExecute, altrimenti questo campo viene ignorato) tollera l'incompatibilità. Per impostazione predefinita, questo campo non è impostato, il che significa tollerare la contaminazione per sempre (non eseguire l'espulsione). I valori pari a zero e negativi vengono considerati pari a 0 (rimozione immediata) dal sistema.
podSpec.schedulingConfig.tolerations.value
string
Facoltativo
Value è il valore di taint a cui corrisponde la tolleranza. Se l'operatore è Exists, il valore deve essere vuoto; altrimenti, deve essere una stringa normale.
replicaCount
integer
Facoltativo
ReplicaCount definisce il numero di repliche PgBouncer da implementare.
serverTLS
object
Facoltativo
ServerTLSSpec definisce il secret del certificato per la comunicazione criptata utilizzata da PgBouncer per connettersi al cluster di database per la query di autenticazione.
serverTLS.certSecret
object
Facoltativo
CertSecret fa riferimento al secret del certificato all'interno dello stesso spazio dei nomi. Il secret deve contenere le voci ca.crt (certificato CA), tls.key (chiave privata) e tls.crt (certificato foglia). I valori all'interno di questo secret vengono utilizzati per compilare server_tls_ca_file, server_tls_cert_file e server_tls_key_file in pgbouncer.ini. Il certificato CA deve corrispondere alla CA che ha firmato il certificato foglia del cluster di database. Il certificato foglia deve contenere il CommonName "alloydbpgbouncer".
serverTLS.certSecret.name
string
Facoltativo
"Nome del referente. Per saperne di più: Utilizzo degli oggetti#Nomi.
serviceOptions
object
Obbligatorio
ServiceOptions definisce le opzioni di connettività per l'accesso ai pod PgBouncer.
serviceOptions.annotations
object
Facoltativo
L'annotazione fornita dal cliente verrà aggiunta all'oggetto Service di tipo LoadBalancer.
serviceOptions.gcp
object
Facoltativo
GCP contiene attributi specifici di Google Cloud per il bilanciatore del carico Kubernetes.
serviceOptions.gcp.loadBalancerIP
integer or string
Facoltativo
LoadBalancerIP è un indirizzo IP statico. Consulta Prenota indirizzo IP esterno statico.
serviceOptions.gcp.loadBalancerType
string
Facoltativo
Un bilanciatore del carico può essere interno o esterno. Consulta bilanciatore del carico interno.
serviceOptions.loadBalancerSourceRanges
array
Facoltativo
Gli intervalli CIDR per gli indirizzi IP di origine consentiti per un client. Questo parametro è applicabile solo a LoadBalancer.
serviceOptions.loadBalancerSourceRanges.items
string
Facoltativo
Ogni intervallo CIDR per un indirizzo IP di origine.
serviceOptions.type
string
Obbligatorio
Tipo di servizio Kubernetes per accedere al pod PgBouncer. Può avere i seguenti valori: LoadBalancer o ClusterIP.

Schema dello stato

PgBouncerStatus definisce lo stato osservato di PgBouncer.

ipAddress: string
phase: string

Campo

Tipo
Obbligatorio o facoltativo

 

Descrizione
ipAddress
string
Obbligatorio
ipAddress è l'endpoint PgBouncer a cui è possibile connettersi per accedere al database.
phase
string
Obbligatorio
La fase descrive lo stato del deployment di PgBouncer. Qui vengono visualizzati valori come WaitingForDeploymentReady, Acquiring IP e Ready.