REST Resource: projects.locations.awsClusters.awsNodePools

Ressource : AwsNodePool

Pool de nœuds Anthos s'exécutant sur AWS.

Représentation JSON
{
  "name": string,
  "version": string,
  "config": {
    object (AwsNodeConfig)
  },
  "autoscaling": {
    object (AwsNodePoolAutoscaling)
  },
  "subnetId": string,
  "state": enum (State),
  "uid": string,
  "reconciling": boolean,
  "createTime": string,
  "updateTime": string,
  "etag": string,
  "annotations": {
    string: string,
    ...
  },
  "maxPodsConstraint": {
    object (MaxPodsConstraint)
  },
  "errors": [
    {
      object (AwsNodePoolError)
    }
  ],
  "management": {
    object (AwsNodeManagement)
  },
  "updateSettings": {
    object (UpdateSettings)
  }
}
Champs
name

string

Nom de cette ressource.

Les noms des pools de nœuds doivent respecter le format projects/<project-number>/locations/<region>/awsClusters/<cluster-id>/awsNodePools/<node-pool-id>.

Pour en savoir plus sur les noms de ressources Google Cloud, consultez Noms de ressources.

version

string

Obligatoire. Version de Kubernetes à exécuter sur ce pool de nœuds (par exemple, 1.19.10-gke.1000).

Vous pouvez répertorier toutes les versions compatibles sur une région Google Cloud donnée en appelant locations.getAwsServerConfig.

config

object (AwsNodeConfig)

Obligatoire. Configuration du pool de nœuds.

autoscaling

object (AwsNodePoolAutoscaling)

Obligatoire. Configuration de l'autoscaler pour ce pool de nœuds.

subnetId

string

Obligatoire. Sous-réseau dans lequel le nœud du pool de nœuds est exécuté.

state

enum (State)

Uniquement en sortie. État du cycle de vie du pool de nœuds.

uid

string

Uniquement en sortie. Identifiant unique global du pool de nœuds.

reconciling

boolean

Uniquement en sortie. Si cette option est définie, des modifications sont en cours de diffusion dans le pool de nœuds.

createTime

string (Timestamp format)

Uniquement en sortie. Heure à laquelle ce pool de nœuds a été créé.

Horodatage au format RFC3339 UTC "Zulu", avec une résolution de l'ordre de la nanoseconde et jusqu'à neuf chiffres décimaux. Exemples : "2014-10-02T15:01:23Z" et "2014-10-02T15:01:23.045123456Z".

updateTime

string (Timestamp format)

Uniquement en sortie. Heure à laquelle ce pool de nœuds a été mis à jour pour la dernière fois.

Horodatage au format RFC3339 UTC "Zulu", avec une résolution de l'ordre de la nanoseconde et jusqu'à neuf chiffres décimaux. Exemples : "2014-10-02T15:01:23Z" et "2014-10-02T15:01:23.045123456Z".

etag

string

Permet aux clients d'effectuer des opérations de lecture-modification-écriture cohérentes via un contrôle de simultanéité optimiste.

Peut être envoyée lors des requêtes de mise à jour et de suppression pour s'assurer que le client dispose d'une valeur à jour avant de continuer.

annotations

map (key: string, value: string)

Facultatif. Annotations sur le pool de nœuds.

Ce champ est soumis aux mêmes restrictions que les annotations Kubernetes. La taille totale de toutes les clés et valeurs combinées est limitée à 256 000. La clé peut comporter deux segments : un préfixe (facultatif) et un nom (obligatoire), séparés par une barre oblique (/). Le préfixe doit être un sous-domaine DNS. Le nom ne doit pas dépasser 63 caractères. Il doit commencer et se terminer par un caractère alphanumérique, et contenir des tirets (-), des traits de soulignement (_) et des points (.), avec des caractères alphanumériques entre chaque symbole.

Objet contenant une liste de paires "key": value. Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" }.

maxPodsConstraint

object (MaxPodsConstraint)

Obligatoire. Contrainte sur le nombre maximal de pods pouvant être exécutés simultanément sur un nœud du pool de nœuds.

errors[]

object (AwsNodePoolError)

Uniquement en sortie. Ensemble d'erreurs détectées dans le pool de nœuds.

management

object (AwsNodeManagement)

Facultatif. Configuration de la gestion pour ce pool de nœuds.

updateSettings

object (UpdateSettings)

Facultatif. Les paramètres de mise à jour contrôlent la vitesse et les perturbations occasionnées par la mise à jour.

AwsNodeConfig

Paramètres décrivant les nœuds d'un cluster.

Représentation JSON
{
  "instanceType": string,
  "rootVolume": {
    object (AwsVolumeTemplate)
  },
  "taints": [
    {
      object (NodeTaint)
    }
  ],
  "labels": {
    string: string,
    ...
  },
  "tags": {
    string: string,
    ...
  },
  "iamInstanceProfile": string,
  "imageType": string,
  "sshConfig": {
    object (AwsSshConfig)
  },
  "securityGroupIds": [
    string
  ],
  "proxyConfig": {
    object (AwsProxyConfig)
  },
  "configEncryption": {
    object (AwsConfigEncryption)
  },
  "instancePlacement": {
    object (AwsInstancePlacement)
  },
  "autoscalingMetricsCollection": {
    object (AwsAutoscalingGroupMetricsCollection)
  },
  "spotConfig": {
    object (SpotConfig)
  }
}
Champs
instanceType

string

Facultatif. Type d'instance EC2 lors de la création d'instances à la demande.

Si vous ne spécifiez pas de valeur lors de la création du pool de nœuds, une valeur par défaut est choisie en fonction de la version du pool de nœuds et est attribuée à ce champ.

rootVolume

object (AwsVolumeTemplate)

Facultatif. Modèle du volume racine provisionné pour les nœuds du pool de nœuds. Les volumes seront provisionnés dans la zone de disponibilité attribuée au sous-réseau du pool de nœuds.

Si aucune valeur n'est spécifiée, la valeur par défaut est de 32 Gio avec le type de volume GP2.

taints[]

object (NodeTaint)

Facultatif. Rejets initiaux attribués aux nœuds de ce pool de nœuds.

labels

map (key: string, value: string)

Facultatif. Étiquettes initiales attribuées aux nœuds de ce pool de nœuds. Objet contenant une liste de paires "clé:valeur". Exemple : { "nom": "clé", "masse": "1,3 kg", "nombre": "3" }.

Objet contenant une liste de paires "key": value. Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" }.

tags

map (key: string, value: string)

Facultatif. Métadonnées clé/valeur à attribuer à chaque ressource AWS sous-jacente. Spécifiez au maximum 50 paires contenant des caractères alphanumériques, des espaces et des symboles (.+-=_:@/). Les clés peuvent contenir jusqu'à 127 caractères Unicode. Les valeurs peuvent comporter jusqu'à 255 caractères Unicode.

Objet contenant une liste de paires "key": value. Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" }.

iamInstanceProfile

string

Obligatoire. Nom ou ARN du profil d'instance IAM AWS à attribuer aux nœuds du pool.

imageType

string

Facultatif. Type d'image d'OS à utiliser sur les instances de pool de nœuds. Peut ne pas être spécifié ou avoir la valeur ubuntu.

Si cette valeur n'est pas spécifiée, elle est définie par défaut sur ubuntu.

sshConfig

object (AwsSshConfig)

Facultatif. Configuration SSH.

securityGroupIds[]

string

Facultatif. ID des groupes de sécurité supplémentaires à ajouter aux nœuds de ce pool. Le gestionnaire crée automatiquement des groupes de sécurité avec les règles minimales requises pour un cluster opérationnel.

proxyConfig

object (AwsProxyConfig)

Facultatif. Configuration du proxy pour le trafic HTTP(S) sortant.

configEncryption

object (AwsConfigEncryption)

Obligatoire. Chiffrement de la configuration des données utilisateur.

instancePlacement

object (AwsInstancePlacement)

Facultatif. Informations sur l'emplacement pour ce nœud. Lorsque cette valeur n'est pas spécifiée, la location par défaut du VPC est utilisée.

autoscalingMetricsCollection

object (AwsAutoscalingGroupMetricsCollection)

Facultatif. Configuration liée à la collecte des métriques CloudWatch sur le groupe Auto Scaling du pool de nœuds.

Lorsqu'elle n'est pas spécifiée, la collecte de métriques est désactivée.

spotConfig

object (SpotConfig)

Facultatif. Configuration pour le provisionnement d'instances Spot EC2

Si cette valeur est spécifiée, le pool de nœuds provisionne des instances Spot à partir de l'ensemble spotConfig.instance_types. Ce champ s'exclut mutuellement avec instanceType.

AwsAutoscalingGroupMetricsCollection

Configuration liée à la collecte des métriques CloudWatch dans un groupe AWS Auto Scaling.

Représentation JSON
{
  "granularity": string,
  "metrics": [
    string
  ]
}
Champs
granularity

string

Obligatoire. Fréquence à laquelle EC2 Auto Scaling envoie des données agrégées à AWS CloudWatch. La seule valeur valide est "1Minute".

metrics[]

string

Facultatif. Métriques à activer. Pour obtenir la liste des métriques valides, consultez https://docs.aws.amazon.com/autoscaling/ec2/APIReference/API_EnableMetricsCollection.html. Si vous spécifiez "Granularité" et que vous ne spécifiez aucune métrique, toutes les métriques sont activées.

SpotConfig

SpotConfig dispose d'informations de configuration pour le nœud Spot.

Représentation JSON
{
  "instanceTypes": [
    string
  ]
}
Champs
instanceTypes[]

string

Obligatoire. Liste des types d'instances permettant de créer un pool de nœuds spot.

AwsNodePoolAutoscaling

AwsNodePoolAutoscaling contient les informations requises par l'autoscaler de cluster pour ajuster la taille du pool de nœuds en fonction de l'utilisation actuelle du cluster.

Représentation JSON
{
  "minNodeCount": integer,
  "maxNodeCount": integer
}
Champs
minNodeCount

integer

Obligatoire. Nombre minimal de nœuds dans le pool de nœuds. Doit être supérieur ou égal à 1 et inférieur ou égal à maxNodeCount.

maxNodeCount

integer

Obligatoire. Nombre maximal de nœuds dans le pool de nœuds. Doit être supérieur ou égal à minNodeCount et inférieur ou égal à 50.

État

État du cycle de vie du pool de nœuds.

Enums
STATE_UNSPECIFIED Non défini.
PROVISIONING L'état "PROVISIONING" (En cours de provisionnement) indique que le pool de nœuds est en cours de création.
RUNNING L'état "RUNNING" (En cours d'exécution) indique que le pool de nœuds a été créé et qu'il est entièrement utilisable.
RECONCILING L'état "RECONCILING" (Rapprochement) indique que le pool de nœuds est en cours de rapprochement.
STOPPING L'état "STOPPING" (Arrêt) indique que le pool de nœuds est en cours de suppression.
ERROR L'état "ERROR" (Erreur) indique que le pool de nœuds est dans un état défaillant irrécupérable.
DEGRADED L'état "DEGRADED" (Dégradé) indique que le pool de nœuds nécessite une action de l'utilisateur pour restaurer toutes les fonctionnalités.

AwsNodePoolError

AwsNodePoolError décrit les erreurs détectées dans les pools de nœuds AWS.

Représentation JSON
{
  "message": string
}
Champs
message

string

Description de l'erreur compréhensible par l'utilisateur.

AwsNodeManagement

AwsNodeManagement définit l'ensemble des fonctionnalités de gestion des nœuds activées pour un pool de nœuds AWS.

Représentation JSON
{
  "autoRepair": boolean
}
Champs
autoRepair

boolean

Facultatif. Indique si les nœuds sont réparés automatiquement ou non. Si cette valeur est définie sur "true", les nœuds de ce pool de nœuds sont surveillés. Si les vérifications d'état échouent de manière cohérente sur une période donnée, une action de réparation automatique est déclenchée pour les remplacer par de nouveaux nœuds.

UpdateSettings

UpdateSettings contrôle le niveau de parallélisme et le niveau de perturbation causé par la mise à jour d'un pool de nœuds.

Ces paramètres s'appliquent lorsque la mise à jour du pool de nœuds nécessite de remplacer les nœuds existants du pool par des nœuds mis à jour.

UpdateSettings est facultatif. Lorsque UpdateSettings n'est pas spécifié lors de la création du pool de nœuds, une valeur par défaut est choisie en fonction de la version du cluster parent. Pour les clusters exécutant la version mineure 1.27 ou ultérieure, une configuration surgeSettings par défaut avec maxSurge = 1 et maxavailable = 0 est utilisée. Pour les clusters avec des versions plus anciennes, les mises à jour de pool de nœuds utilisent le mécanisme de mise à jour progressive traditionnel, qui consiste à mettre à jour un nœud à la fois en mode "arrêter avant de créer", et updateSettings n'est pas applicable.

Définissez le paramètre surgeSettings de manière à utiliser le mécanisme de mise à jour de surutilisation pour la mise à jour progressive des nœuds du pool de nœuds. 1. maxSurge contrôle temporairement le nombre de nœuds supplémentaires pouvant être créés au-delà de la taille actuelle du pool de nœuds en attendant la mise à jour, afin d'augmenter le nombre de nœuds disponibles. 2. maxUnavailable contrôle le nombre de nœuds pouvant être simultanément indisponibles lors de la mise à jour. 3. (maxSurge + maxUnavailable) détermine le niveau de parallélisme (c'est-à-dire le nombre de nœuds mis à jour simultanément).

Représentation JSON
{
  "surgeSettings": {
    object (SurgeSettings)
  }
}
Champs
surgeSettings

object (SurgeSettings)

Facultatif. Paramètres de mise à jour de surutilisation.

SurgeSettings

SurgeSettings contient les paramètres de mise à jour de surutilisation.

Représentation JSON
{
  "maxSurge": integer,
  "maxUnavailable": integer
}
Champs
maxSurge

integer

Facultatif. Nombre maximal de nœuds pouvant être créés au-delà de la taille actuelle du pool de nœuds lors du processus de mise à jour.

maxUnavailable

integer

Facultatif. Nombre maximal de nœuds pouvant être simultanément indisponibles lors du processus de mise à jour. Un nœud est considéré comme indisponible s'il n'est pas prêt.

Méthodes

create

Crée un AwsNodePool associé à un AwsCluster donné.

delete

Supprime une ressource AwsNodePool spécifique.

get

Décrit une ressource AwsNodePool spécifique.

list

Répertorie toutes les ressources AwsNodePool d'un AwsCluster donné.

patch

Met à jour un AwsNodePool.

rollback

Annule une requête de mise à jour AwsNodePool précédemment annulée ou ayant échoué.