Définition de ressource personnalisée DBinstance v1.1.1

Schéma de spécification

DBInstanceSpec définit l'état souhaité de DBInstance.

conditions:
- lastTransactionTime: string
  message: string
  observedGeneration: integer
  reason: string
  status: string
  type: string
criticalIncidents:
- code: string
  createTime: string
  message: string
  messageTemplateParams: object
  resource:
    component: string
    location:
      cluster: string
      group: string
      kind: string
      name: string
      namespace: string
      version: string
  stackTrace:
  - component: string
    message: string
  transientUntil: string
lastBackupTime: string
nextBackupTime: string
observedGeneration: integer
dbcParent:
  name: string
instanceType: string
isStopped: boolean
nodeCount: integer
progressTimeout: string
resources:
  cpu:
  - disks:
    accessModes: string
    annotations: object
    name: string
    selector:
      matchExpressions:
      - key: string
        operator: string
        values: string
        matchLabels: object
    size: string
    storageClass: string
    volumeName: 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:
        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
            values: string
          matchLabels:
        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
  tolerations:
  - effect: string
    key: string
    operator: string
    tolerationSeconds: integer
    value: string

Champ

Type
Obligatoire ou facultatif

 

Description
dbcParent
object
Facultatif
DBClusterParent est le DBCluster à partir duquel cette DBInstance est répliquée.
dbcParent.name
string
Facultatif
Nom du référent. Pour en savoir plus, consultez la section Noms.
instanceType
string
Facultatif
InstanceType indique le type de l'instance de base de données. Actuellement, seul le type "ReadPool" est accepté.
isStopped
boolean
Facultatif
La valeur "IsStopped" arrête les nœuds DB de cette instance DB lorsque la valeur est "true". La valeur par défaut de ce champ est "false". Arrêter le nœud de base de données principal du DBCluster n'arrête pas automatiquement les nœuds de base de données des instances de base de données ReadPool. Lorsqu'elle est arrêtée, les ressources de calcul (processeur, mémoire) de l'instance sont libérées. Toutefois, le nœud de base de données conserve toujours la ressource de stockage.
nodeCount
integer
Obligatoire
NodeCount détermine le nombre de nœuds DBNode à créer pour cette instance de base de données.
progressTimeout
string
Facultatif
ProgressTimeout détermine le nombre de secondes pendant lesquelles le contrôleur tente de provisionner un nœud de base de données ou pendant lesquelles un nœud de base de données peut ne pas être prêt avant qu'il ne considère que le nœud de base de données a échoué. Une valeur de 0 signifie qu'aucun délai d'expiration n'est utilisé.
resources
object
Facultatif
Resource spécifie les ressources utilisées pour les instances (en d'autres termes, les nœuds de base de données) appartenant à cette instance de base de données. Si vous ne renseignez pas ce champ, l'instance utilise les mêmes ressources que l'instance principale du DBCluster.
resources.cpu
integer or string
Obligatoire
Quantité de processeur alloué au conteneur de base de données.
resources.disks
object
Obligatoire
Spécifications des disques alloués au conteneur de base de données.
resources.disks.accessModes
string
Facultatif
AccessModes contient les modes d'accès souhaités pour le volume. Pour en savoir plus, consultez la section Modes d'accès.
resources.disks.annotations
object
Facultatif
Annotations supplémentaires ajoutées à la revendication de volume persistant. Cela permet d'intégrer d'autres outils.
resources.disks.name
string
Obligatoire
Nom du disque.Les valeurs autorisées sont "DataDisk", "LogDisk", "BackupDisk" et "ObsDisk".
resources.disks.selector
object
Facultatif
Requête de libellé sur les volumes à prendre en compte pour l'association. Ce champ est facultatif. Si ce champ est défini, le volume associé aux libellés correspondants est utilisé comme volume de stockage du disque. Pour en savoir plus, consultez PersistentVolumeClaimSpec.
resources.disks.selector.matchExpressions
object
Facultatif
matchExpressions est une liste d'exigences concernant le sélecteur d'étiquettes. Les exigences sont combinées par "AND".
resources.disks.selector.matchExpressions.key
string
Obligatoire
key est la clé de libellé à laquelle le sélecteur s'applique.
resources.disks.selector.matchExpressions.operator
string
Obligatoire
L'opérateur représente la relation d'une clé avec un ensemble de valeurs. Les opérateurs valides sont "In", "NotIn", "Exists" et "DoesNotExist".
resources.disks.selector.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 des valeurs doit être vide. Ce tableau est remplacé lors d'un correctif de fusion stratégique.
resources.disks.selector.matchLabels
object
Facultatif
matchLabels est une carte de paires {clé,valeur}. Un seul élément {key,value} dans le mappage matchLabels équivaut à un élément de matchExpressions, dont le champ de clé est "key", l'opérateur est "In" et le tableau de valeurs ne contient que "value". Les exigences sont combinées par "AND".
resources.disks.size
string
Obligatoire
Taille du disque en octets (par exemple, "10Gi" pour 10 Gio). Les préfixes d'unités de taille autorisés sont: "Ki", "Mi", "Gi", "Ti", "Pi" et "Ei" pour la base 2. "K", "M", "G", "T", "P" et "E" sont également utilisés pour la base 10. Pour en savoir plus, consultez la section Préfixe d'unité.
resources.disks.storageClass
string
Facultatif
StorageClass pointe vers une classe de stockage CSI spécifique. Ce champ est facultatif. Si ce champ n'est pas défini, la classe de stockage CSI par défaut du cluster Kubernetes est utilisée. Si aucune valeur par défaut n'est définie pour le cluster Kubernetes, la revendication de volume persistant échoue et le provisionnement du cluster de base de données échoue. Pour plus d'informations, consultez le document Classes de stockage.
resources.disks.volumeName
string
Facultatif
VolumeName est la référence de liaison au volume persistant associé à ce disque. Ce champ est facultatif. Cela permet de réutiliser un volume existant. Notez que si ce champ est spécifié, la valeur "storageClass" n'aura aucun effet. Pour en savoir plus, consultez Liaison.
resources.memory
integer or string
Obligatoire
Quantité de mémoire allouée au conteneur de base de données.
schedulingConfig
object
Facultatif
SchedulingConfig spécifie comment l'instance doit être planifiée sur les nœuds Kubernetes. Si vous ne renseignez pas ce champ, l'instance utilisera la même configuration de planification que l'instance principale du DBCluster. Lorsque vous modifiez un champ de la configuration de planification, le pod Kubernetes peut être reprogrammé sur un autre nœud en fonction de la configuration.
schedulingConfig.nodeAffinity
object
Facultatif
NodeAffinity décrit les règles de planification d'affinité de nœuds pour l'instance.
schedulingConfig.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution
object
Facultatif
Le planificateur préfère planifier les pods sur les nœuds qui répondent aux expressions d'affinité spécifiées par ce champ. Le planificateur peut choisir un nœud qui ne respecte pas une ou plusieurs des expressions. Le nœud le plus préféré est celui qui présente la somme des pondérations 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'affinité requiredDuringScheduling, etc.), calculez une somme en itérant sur les éléments de ce champ et en ajoutant "weight" à la somme, si le nœud correspond aux matchExpressions correspondantes. Le ou les nœuds présentant la somme la plus élevée sont les plus préférés.
schedulingConfig.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference
object
Obligatoire
Terme de sélecteur de nœud, associé au poids correspondant.
schedulingConfig.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchExpressions
object
Facultatif
Liste des exigences du sélecteur de nœuds par libellé du nœud.
schedulingConfig.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchExpressions.key
string
Obligatoire
Clé du libellé auquel le sélecteur s'applique.
schedulingConfig.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchExpressions.operator
string
Obligatoire
Représente la relation d'une clé avec un ensemble de valeurs. Les opérateurs valides sont "In", "NotIn", "Exists", "DoesNotExist", "Gt" et "Lt".
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 des valeurs doit être vide. Si l'opérateur est Gt ou Lt, le tableau des valeurs doit comporter un seul élément, qui est interprété comme un entier. Ce tableau est remplacé lors d'un correctif de fusion stratégique.
schedulingConfig.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchFields
object
Facultatif
Liste des exigences du sélecteur de nœud par champ du nœud.
schedulingConfig.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchFields.key
string
Obligatoire
Clé du libellé auquel le sélecteur s'applique.
schedulingConfig.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchFields.operator
string
Obligatoire
Représente la relation d'une clé avec un ensemble de valeurs. Les opérateurs valides sont "In", "NotIn", "Exists", "DoesNotExist", "Gt" et "Lt".
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 des valeurs doit être vide. Si l'opérateur est Gt ou Lt, le tableau des valeurs doit comporter un seul élément, qui est interprété comme un entier. Ce tableau est remplacé lors d'un correctif de fusion stratégique.
schedulingConfig.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.weight
integer
Obligatoire
Pondération associée à la correspondance avec le terme nodeSelector correspondant, comprise entre 1 et 100.
schedulingConfig.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution
object
Facultatif
Si les exigences d'affinité spécifiées par ce champ ne sont pas remplies au moment de la planification, le pod n'est pas planifié sur le nœud. Si les exigences d'affinité spécifiées par ce champ ne sont pas remplies à un moment donné de l'exécution du pod, par exemple en raison d'une mise à jour, le système peut essayer ou non de supprimer le pod de son nœud.
schedulingConfig.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms
object
Obligatoire
Liste des termes du sélecteur de nœuds. Les termes sont associés à l'opérateur OU.
schedulingConfig.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchExpressions
object
Facultatif
Liste des exigences du sélecteur de nœuds par libellé du nœud.
schedulingConfig.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchExpressions.key
string
Obligatoire
Clé du libellé auquel le sélecteur s'applique.
schedulingConfig.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchExpressions.operator
string
Obligatoire
Représente la relation d'une clé avec un ensemble de valeurs. Les opérateurs valides sont "In", "NotIn", "Exists", "DoesNotExist", "Gt" et "Lt".
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 des valeurs doit être vide. Si l'opérateur est Gt ou Lt, le tableau des valeurs doit comporter un seul élément, qui est interprété comme un entier. Ce tableau est remplacé lors d'un correctif de fusion stratégique.
schedulingConfig.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchFields
object
Facultatif
Liste des exigences du sélecteur de nœud par champ du nœud.
schedulingConfig.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchFields.key
string
Obligatoire
Clé du libellé auquel le sélecteur s'applique.
schedulingConfig.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchFields.operator
string
Obligatoire
Représente la relation d'une clé avec un ensemble de valeurs. Les opérateurs valides sont "In", "NotIn", "Exists", "DoesNotExist", "Gt" et "Lt".
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 des valeurs doit être vide. Si l'opérateur est Gt ou Lt, le tableau des valeurs doit comporter un seul élément, qui est interprété comme un entier. Ce tableau est remplacé lors d'un correctif de fusion stratégique.
schedulingConfig.podAffinity
object
Facultatif
PodAffinity décrit les règles de planification d'affinité de pod pour l'instance.
schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution
object
Facultatif
Le planificateur préfère planifier les pods sur les nœuds qui répondent aux expressions d'affinité spécifiées par ce champ. Le planificateur peut choisir un nœud qui ne respecte pas une ou plusieurs des expressions. Le nœud le plus préféré est celui dont la somme des pondérations est la plus élevée. Pour chaque nœud qui répond à toutes les exigences de planification (par exemple, les demandes de ressources et les expressions d'affinité requiredDuringScheduling), vous calculez une somme en itérant les éléments de ce champ et en ajoutant un "poids" à la somme, si le nœud contient des pods correspondant au podAffinityTerm correspondant. Les nœuds dont la somme est la plus élevée sont les plus privilégiés.
schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm
object
Obligatoire
Terme d'affinité de pod, associé à la pondération correspondante.
schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector
object
Facultatif
Requête de libellé sur un ensemble de ressources, dans ce cas, des pods.
schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchExpressions
object
Facultatif
matchExpressions est une liste d'exigences concernant le sélecteur d'étiquettes. Les exigences sont combinées par "AND".
schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchExpressions.key
string
Obligatoire
key est la clé de libellé à laquelle le sélecteur s'applique.
schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchExpressions.operator
string
Obligatoire
L'opérateur représente la relation d'une clé avec un ensemble de valeurs. Les opérateurs valides sont "In", "NotIn", "Exists" et "DoesNotExist".
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 des valeurs doit être vide. Ce tableau est remplacé lors d'un correctif de fusion stratégique.
schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchLabels
object
Facultatif
matchLabels est une carte de paires {clé,valeur}. Un seul élément {key,value} dans le mappage matchLabels équivaut à un élément de matchExpressions, dont le champ de clé est "key", l'opérateur est "In" et le tableau de valeurs ne contient que "value". Les exigences sont combinées par "AND".
schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector
object
Facultatif
Requête d'étiquette sur l'ensemble des espaces de noms auxquels le terme s'applique. Ce terme s'applique à l'union des espaces de noms sélectionnés par ce champ et de ceux listés dans le champ "namespaces". Un sélecteur nul et une liste d'espaces de noms nulle ou vide signifient "espace de noms de ce pod". Un sélecteur vide ("{}") correspond à tous les espaces de noms.
schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchExpressions
object
Facultatif
matchExpressions est une liste d'exigences concernant le sélecteur d'étiquettes. Les exigences sont combinées par "AND".
schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchExpressions.key
string
Obligatoire
key est la clé de libellé à laquelle le sélecteur s'applique.
schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchExpressions.operator
string
Obligatoire
L'opérateur représente la relation d'une clé avec un ensemble de valeurs. Les opérateurs valides sont "In", "NotIn", "Exists" et "DoesNotExist".
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 des valeurs doit être vide. Ce tableau est remplacé lors d'un correctif de fusion stratégique.
schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchLabels
object
Facultatif
matchLabels est une carte de paires {clé,valeur}. Un seul élément {key,value} dans le mappage matchLabels équivaut à un élément de matchExpressions, dont le champ de clé est "key", l'opérateur est "In" et le tableau de valeurs ne contient que "value". Les exigences sont combinées par "AND".
schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaces
string
Facultatif
namespaces spécifie une liste statique de noms d'espaces de noms auxquels le terme s'applique. Le terme 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 "espace de noms de ce pod".
schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaces
string
Obligatoire
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. Un pod est défini comme colocalisé s'il s'exécute sur un nœud dont la valeur du libellé avec la clé topologyKey correspond à celle de n'importe quel nœud sur lequel l'un des pods sélectionnés s'exécute. La valeur "topologyKey" ne doit pas être vide.
schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.weight
integer
Obligatoire
pondération associée à la correspondance avec le podAffinityTerm correspondant, comprise entre 1 et 100.
schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution
object
Facultatif
Si les exigences d'affinité spécifiées par ce champ ne sont pas remplies au moment de la planification, le pod n'est pas planifié sur le nœud. Si les exigences d'affinité spécifiées par ce champ ne sont pas remplies à un moment donné de l'exécution du pod (par exemple, en raison d'une mise à jour du libellé du pod), le système peut essayer ou non d'éjecter le pod de son nœud. Lorsque plusieurs éléments sont définis, les listes de nœuds correspondant à chaque podAffinityTerm se croisent. En d'autres termes, tous les termes doivent être respectés.
schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector
object
Facultatif
Requête de libellé sur un ensemble de ressources, dans ce cas, des pods.
schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchExpressions
object
Facultatif
matchExpressions est une liste d'exigences concernant le sélecteur d'étiquettes. Les exigences sont combinées par "AND".
schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchExpressions.key
string
Obligatoire
key est la clé de libellé à laquelle le sélecteur s'applique.
schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchExpressions.operator
string
Obligatoire
L'opérateur représente la relation d'une clé avec un ensemble de valeurs. Les opérateurs valides sont "In", "NotIn", "Exists" et "DoesNotExist".
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 des valeurs doit être vide. Ce tableau est remplacé lors d'un correctif de fusion stratégique.
schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchLabels
object
Facultatif
matchLabels est une carte de paires {clé,valeur}. Un seul élément {key,value} dans le mappage matchLabels équivaut à un élément de matchExpressions, dont le champ de clé est "key", l'opérateur est "In" et le tableau de valeurs ne contient que "value". Les exigences sont combinées par "AND".
schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector
object
Facultatif
Requête d'étiquette sur l'ensemble des espaces de noms auxquels le terme s'applique. Ce terme s'applique à l'union des espaces de noms sélectionnés par ce champ et de ceux listés dans le champ "namespaces". Un sélecteur nul et une liste d'espaces de noms nulle ou vide signifient "espace de noms de ce pod". Un sélecteur vide ("{}") correspond à tous les espaces de noms.
schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchExpressions
object
Facultatif
matchExpressions est une liste d'exigences concernant le sélecteur d'étiquettes. Les exigences sont combinées par "AND".
schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchExpressions.key
string
Obligatoire
key est la clé de libellé à laquelle le sélecteur s'applique.
schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchExpressions.operator
string
Obligatoire
L'opérateur représente la relation d'une clé avec un ensemble de valeurs. Les opérateurs valides sont "In", "NotIn", "Exists" et "DoesNotExist".
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 des valeurs doit être vide. Ce tableau est remplacé lors d'un correctif de fusion stratégique.
schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchLabels
object
Facultatif
matchLabels est une carte de paires {clé,valeur}. Un seul élément {key,value} dans le mappage matchLabels équivaut à un élément de matchExpressions, dont le champ de clé est "key", l'opérateur est "In" et le tableau de valeurs ne contient que "value". Les exigences sont combinées par "AND".
schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaces
string
Facultatif
namespaces spécifie une liste statique de noms d'espaces de noms auxquels le terme s'applique. Le terme 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 "espace de noms de ce pod".
schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaces
string
Facultatif
namespaces spécifie une liste statique de noms d'espaces de noms auxquels le terme s'applique. Le terme 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 "espace de noms de ce pod".
schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.topologyKey
string
Obligatoire
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. Un pod est défini comme colocalisé s'il s'exécute sur un nœud dont la valeur du libellé avec la clé topologyKey correspond à celle de n'importe quel nœud sur lequel l'un des pods sélectionnés s'exécute. La valeur "topologyKey" ne doit pas être vide.
schedulingConfig.podAntiAffinity
string
Obligatoire
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. Un pod est défini comme colocalisé s'il s'exécute sur un nœud dont la valeur du libellé avec la clé topologyKey correspond à celle de n'importe quel nœud sur lequel l'un des pods sélectionnés s'exécute. La valeur "topologyKey" ne doit pas être vide.
schedulingConfig.podAntiAffinity
object
Facultatif
PodAntiAffinity décrit les règles de planification d'anti-affinité des pods pour l'instance.
schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution
object
Facultatif
Le planificateur préfère planifier les pods sur les nœuds qui répondent aux expressions d'anti-affinité spécifiées par ce champ, mais il peut choisir un nœud qui ne respecte pas une ou plusieurs de ces expressions. Le nœud le plus préféré est celui qui présente la somme des pondérations 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 itérant les éléments de ce champ et en ajoutant "weight" à la somme, si le nœud contient des pods correspondant au podAffinityTerm correspondant. Les nœuds dont la somme est la plus élevée sont les plus privilégiés.
schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm
object
Obligatoire
Terme d'affinité de pod, associé à la pondération correspondante.
schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector
object
Facultatif
Requête de libellé sur un ensemble de ressources, dans ce cas, des pods.
schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchExpressions
object
Facultatif
matchExpressions est une liste d'exigences concernant le sélecteur d'étiquettes. Les exigences sont combinées par "AND".
schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchExpressions.key
string
Obligatoire
key est la clé de libellé à laquelle le sélecteur s'applique.
schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchExpressions.operator
string
Obligatoire
L'opérateur représente la relation d'une clé avec un ensemble de valeurs. Les opérateurs valides sont "In", "NotIn", "Exists" et "DoesNotExist".
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 des valeurs doit être vide. Ce tableau est remplacé lors d'un correctif de fusion stratégique.
schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchLabels
object
Facultatif
matchLabels est une carte de paires {clé,valeur}. Un seul élément {key,value} dans le mappage matchLabels équivaut à un élément de matchExpressions, dont le champ de clé est "key", l'opérateur est "In" et le tableau de valeurs ne contient que "value". Les exigences sont combinées par "AND".
schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector
object
Facultatif
Requête d'étiquette sur l'ensemble des espaces de noms auxquels le terme s'applique. Ce terme s'applique à l'union des espaces de noms sélectionnés par ce champ et de ceux listés dans le champ "namespaces". Un sélecteur nul et une liste d'espaces de noms nulle ou vide signifient "espace de noms de ce pod". Un sélecteur vide ("{}") correspond à tous les espaces de noms.
schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchExpressions
object
Facultatif
matchExpressions est une liste d'exigences concernant le sélecteur d'étiquettes. Les exigences sont combinées par "AND".
schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchExpressions.key
string
Obligatoire
key est la clé de libellé à laquelle le sélecteur s'applique.
schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchExpressions.operator
string
Obligatoire
L'opérateur représente la relation d'une clé avec un ensemble de valeurs. Les opérateurs valides sont "In", "NotIn", "Exists" et "DoesNotExist".
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 des valeurs doit être vide. Ce tableau est remplacé lors d'un correctif de fusion stratégique.
schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchLabels
string
Facultatif
matchLabels est une carte de paires {clé,valeur}. Un seul élément {key,value} dans le mappage matchLabels équivaut à un élément de matchExpressions, dont le champ de clé est "key", l'opérateur est "In" et le tableau de valeurs ne contient que "value". Les exigences sont combinées par "AND".
schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaces
string
Facultatif
namespaces spécifie une liste statique de noms d'espaces de noms auxquels le terme s'applique. Le terme 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 "espace de noms de ce pod".
schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.topologyKey
string
Obligatoire
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. Un pod est défini comme colocalisé s'il s'exécute sur un nœud dont la valeur du libellé avec la clé topologyKey correspond à celle de n'importe quel nœud sur lequel l'un des pods sélectionnés s'exécute. La valeur "topologyKey" ne doit pas être vide.
schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.weight
integer
Obligatoire
pondération associée à la correspondance avec le podAffinityTerm correspondant, comprise entre 1 et 100.
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 ne sera pas planifié sur le nœud. Si les exigences d'anti-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 du libellé du pod), le système peut essayer ou non d'éjecter le pod de son nœud. Lorsque plusieurs éléments sont spécifiés, les listes de nœuds correspondant à chaque podAffinityTerm se croisent, ce qui signifie que tous les termes doivent être satisfaits.
schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector
object
Facultatif
Requête de libellé sur un ensemble de ressources, dans ce cas, des pods.
schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchExpressions
object
Facultatif
matchExpressions est une liste d'exigences concernant le sélecteur d'étiquettes. Les exigences sont combinées par "AND".
schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchExpressions.key
string
Obligatoire
key est la clé de libellé à laquelle le sélecteur s'applique.
schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchExpressions.operator
string
Obligatoire
L'opérateur représente la relation d'une clé avec un ensemble de valeurs. Les opérateurs valides sont "In", "NotIn", "Exists" et "DoesNotExist".
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 des valeurs doit être vide. Ce tableau est remplacé lors d'un correctif de fusion stratégique.
schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchExpressions.matchLabels
object
Facultatif
matchLabels est une carte de paires {clé,valeur}. Un seul élément {key,value} dans le mappage matchLabels équivaut à un élément de matchExpressions, dont le champ de clé est "key", l'opérateur est "In" et le tableau de valeurs ne contient que "value". Les exigences sont combinées par "AND".
schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector
object
Facultatif
Requête d'étiquette sur l'ensemble des espaces de noms auxquels le terme s'applique. Ce terme s'applique à l'union des espaces de noms sélectionnés par ce champ et de ceux listés dans le champ "namespaces". Un sélecteur nul et une liste d'espaces de noms nulle ou vide signifient "espace de noms de ce pod". Un sélecteur vide ("{}") correspond à tous les espaces de noms.
schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchExpressions
object
Facultatif
matchExpressions est une liste d'exigences concernant le sélecteur d'étiquettes. Les exigences sont combinées par "AND".
schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchExpressions.key
string
Obligatoire
key est la clé de libellé à laquelle le sélecteur s'applique.
schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchExpressions.operator
string
Obligatoire
L'opérateur représente la relation d'une clé avec un ensemble de valeurs. Les opérateurs valides sont "In", "NotIn", "Exists" et "DoesNotExist".
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 des valeurs doit être vide. Ce tableau est remplacé lors d'un correctif de fusion stratégique.
schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchLabels
object
Facultatif
matchLabels est une carte de paires {clé,valeur}. Un seul élément {key,value} dans le mappage matchLabels équivaut à un élément de matchExpressions, dont le champ de clé est "key", l'opérateur est "In" et le tableau de valeurs ne contient que "value". Les exigences sont combinées par "AND".
schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaces
string
Facultatif
namespaces spécifie une liste statique de noms d'espaces de noms auxquels le terme s'applique. Le terme 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 "espace de noms de ce pod".
schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.topologyKey
string
Obligatoire
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. Un pod est défini comme colocalisé s'il s'exécute sur un nœud dont la valeur du libellé avec la clé topologyKey correspond à celle de n'importe quel nœud sur lequel l'un des pods sélectionnés s'exécute. La valeur "topologyKey" ne doit pas être vide.
schedulingConfig.tolerations
object
Facultatif
Tolérances permettant de gérer l'autorisation ou l'interdiction de planifier une instance sur un nœud Kubernetes auquel une altération spécifique est appliquée.
schedulingConfig.tolerations.effect
string
Facultatif
Effect indique l'effet de rejet à faire correspondre. Une valeur vide signifie que tous les effets de rejet sont acceptés. Si elles sont spécifiées, les valeurs autorisées sont "NoSchedule", "PreferNoSchedule" et "NoExecute".
schedulingConfig.tolerations.key
string
Facultatif
Key est la clé de rejet à laquelle la tolérance s'applique. Un champ vide signifie que toutes les clés de contamination sont prises en compte. 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.
schedulingConfig.tolerations.operator
string
Facultatif
L'opérateur représente la relation d'une clé avec la valeur. Les opérateurs valides sont "Exists" et "Equal". La valeur par défaut est "Égal". Exists équivaut à un caractère générique pour la valeur, de sorte qu'un pod puisse tolérer tous les taints d'une catégorie particulière.
schedulingConfig.tolerations.tolerationSeconds
integer
Facultatif
TolerationSeconds représente la période pendant laquelle la tolérance (qui doit être de l'effet NoExecute, sinon ce champ est ignoré) tolère le rejet. Par défaut, il n'est pas défini, ce qui signifie que la contamination est tolérée indéfiniment (ne pas supprimer). Les valeurs nulles et négatives sont traitées comme des valeurs 0 (suppression immédiate) par le système.
schedulingConfig.tolerations.value
string
Facultatif
La valeur correspond à la valeur de rejet à laquelle la tolérance correspond. Si l'opérateur est "Exists", la valeur doit être vide, sinon il ne s'agit que d'une chaîne normale.

Schéma d'état

DBInstanceStatus définit l'état observé de DBInstance.

conditions:
- lastTransitionTime:
  message: string
  observedGeneration: integer
  reason: string
  status: string
  type: string
criticalIncidents:
- code: string
  createTime: string
  message: string
  messageTemplateParams: object
  resource:
    component: string
    location:
      cluster: string
      group: string
      kind: string
      name: string
      namespace: string
      version: string
  stackTrace:
  - component: string
    message: string
  transientUntil: string
endpoints:
- name: string
  value: string
observedGeneration: integer
reconciled: boolean

Champ

Type
Obligatoire ou facultatif

 

Description
conditions
object
Facultatif
Les conditions représentent les dernières observations disponibles de l'état actuel de l'entité.
conditions.lastTransitionTime
string
Obligatoire
lastTransitionTime correspond à la dernière fois où la condition est passée d'un état à un autre, ce qui se produit lorsque la condition sous-jacente a changé. Si l'heure à laquelle la condition sous-jacente a changé est inconnue, utilisez l'heure à laquelle le champ de l'API a changé.
conditions.message
string
Obligatoire
Le message est un message lisible par l'utilisateur qui indique des détails sur la transition. Il peut s'agir d'une chaîne vide.
conditions.observedGeneration
integer
Facultatif
observedGeneration représente la .metadata.generation sur laquelle la condition a été définie. Par exemple, si .metadata.generation est actuellement 12, mais que .status.conditions[x].observedGeneration est 9, la condition est obsolète par rapport à l'état actuel de l'instance.
conditions.reason
string
Obligatoire
reason contient un identifiant programmatique indiquant la raison de la dernière transition de la condition. Les producteurs de types de conditions spécifiques peuvent définir les valeurs et les significations attendues pour ce champ, et indiquer si les valeurs sont considérées comme une API garantie. La valeur doit être une chaîne en CamelCase. Ce champ peut être vide.
conditions.status
string
Obligatoire
État de la condition. Sa valeur peut être "True", "False" ou "Unknown".
conditions.type
string
Obligatoire
type de condition au format CamelCase ou foo.example.com/CamelCase. De nombreuses valeurs .condition.type sont cohérentes entre les ressources, comme "Available" (Disponible). Toutefois, comme des conditions arbitraires peuvent s'avérer utiles (voir .node.status.conditions), il est important de pouvoir résoudre les conflits. L'expression régulière correspondante est (dns1123SubdomainFmt/)?(qualifiedNameFmt).
criticalIncidents
object
Facultatif
CriticalIncidents est une liste plate de tous les incidents critiques actifs.
criticalIncidents.code
string
Obligatoire
Code correspond au code d'erreur de cette erreur spécifique. Les codes d'erreur sont des chaînes DBSE+numériques, comme "DBSE1012".
criticalIncidents.createTime
string
Obligatoire
CreateTime correspond au code temporel de création de cet incident à l'origine.
criticalIncidents.message
string
Facultatif
Le message décrit l'incident ou l'erreur qui s'est produite.
criticalIncidents.messageTemplateParams
object
Facultatif
MessageTemplateParams contient des paires clé-valeur nécessaires pour générer une version de Message basée sur les données et conviviale dans l'interface utilisateur.
criticalIncidents.resource
object
Obligatoire
La ressource contient des informations sur le composant Database Service qui a signalé l'incident, ainsi que des informations sur la ressource Kubernetes.
criticalIncidents.resource.component
string
Obligatoire
Le composant est un identifiant interne du sous-système de service de base de données qui a signalé l'incident.
criticalIncidents.resource.location
object
Facultatif
Emplacement
criticalIncidents.resource.location.cluster
string
Facultatif
"Cluster" est le nom du cluster de la ressource Kubernetes affectée.
criticalIncidents.resource.location.group
string
Facultatif
"Group" est le nom du groupe de la ressource Kubernetes.
criticalIncidents.resource.location.kind
string
Facultatif
Kind est le type de la ressource Kubernetes.
criticalIncidents.resource.location.name
string
Facultatif
"Name" (Nom) est le nom de la ressource Kubernetes concernée.
criticalIncidents.resource.location.namespace
string
Facultatif
L'espace de noms est l'espace de noms de la ressource Kubernetes concernée.
criticalIncidents.resource.location.version
string
Facultatif
"Group" correspond à la version de la ressource Kubernetes.
criticalIncidents.stackTrace
object
Facultatif
StackTrace contient une liste non structurée des messages de la trace de la pile.
criticalIncidents.stackTrace.component
string
Facultatif
"Component" (Composant) est le nom d'un composant du service de base de données ayant enregistré le message.
criticalIncidents.stackTrace.message
string
Facultatif
Message consigné.
criticalIncidents.transientUntil
string
Facultatif
Si elle est présente, TransientUntil indique que le problème doit être considéré comme temporaire jusqu'à l'heure spécifiée.
endpoints
object
Facultatif
Les points de terminaison sont les points de terminaison à partir desquels vous pouvez accéder aux nœuds de base de données de l'instance de base de données.
endpoints.name
string
Obligatoire
Le nom contient le nom du point de terminaison.
endpoints.value
string
Facultatif
La valeur contient les informations sur le point de terminaison.
observedGeneration
integer
Facultatif
Génération observée par le contrôleur.
reconciled
boolean
Facultatif
Indique si la ressource est réconciliée par le contrôleur.