REST Resource: projects.locations.privateClouds.clusters

Ressource : Cluster

Un cluster dans un cloud privé.

Représentation JSON
{
  "name": string,
  "createTime": string,
  "updateTime": string,
  "state": enum (State),
  "management": boolean,
  "autoscalingSettings": {
    object (AutoscalingSettings)
  },
  "uid": string,
  "nodeTypeConfigs": {
    string: {
      object (NodeTypeConfig)
    },
    ...
  },
  "stretchedClusterConfig": {
    object (StretchedClusterConfig)
  },
  "datastoreMountConfig": [
    {
      object (DatastoreMountConfig)
    }
  ]
}
Champs
name

string

Uniquement en sortie. Identifiant. Nom de ressource de ce cluster. Les noms de ressources sont des URI sans schéma qui suivent les conventions décrites sur https://cloud.google.com/apis/design/resource_names. Par exemple : projects/my-project/locations/us-central1-a/privateClouds/my-cloud/clusters/my-cluster

createTime

string (Timestamp format)

Uniquement en sortie. Heure de création de cette ressource.

Utilise la norme RFC 3339, où la sortie générée utilise toujours le format UTC (indiqué par "Z" pour le temps universel coordonné) avec des secondes fractionnaires de 0, 3, 6 ou 9 chiffres décimaux. Des décalages horaires autres que "Z" (UTC) sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Uniquement en sortie. Heure de la dernière mise à jour de cette ressource.

Utilise la norme RFC 3339, où la sortie générée utilise toujours le format UTC (indiqué par "Z" pour le temps universel coordonné) avec des secondes fractionnaires de 0, 3, 6 ou 9 chiffres décimaux. Des décalages horaires autres que "Z" (UTC) sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

state

enum (State)

Uniquement en sortie. État de la ressource.

management

boolean

Uniquement en sortie. "True" si le cluster est un cluster de gestion, "false" dans le cas contraire. Il ne peut y avoir qu'un seul cluster de gestion dans un cloud privé, et il doit être le premier.

autoscalingSettings

object (AutoscalingSettings)

Facultatif. Configuration de l'autoscaling appliqué à ce cluster.

uid

string

Uniquement en sortie. Identifiant unique généré par le système pour la ressource.

nodeTypeConfigs

map (key: string, value: object (NodeTypeConfig))

Obligatoire. Mappage des types de nœuds de cluster dans ce cluster, où la clé est l'identifiant canonique du type de nœud (correspond à NodeType).

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

stretchedClusterConfig

object (StretchedClusterConfig)

Facultatif. Configuration d'un cluster étendu. Obligatoire pour les clusters appartenant à un cloud privé étendu.

datastoreMountConfig[]

object (DatastoreMountConfig)

Uniquement en sortie. Configuration d'un datastore installé.

État

L'état Enum définit les états possibles des clusters de cloud privé.

Enums
STATE_UNSPECIFIED Valeur par défaut. Cette valeur ne doit jamais être utilisée.
ACTIVE Le cluster est opérationnel et peut être utilisé par l'utilisateur.
CREATING Le cluster est en cours de déploiement.
UPDATING Ajout ou suppression d'un nœud dans le cluster, ou toute autre mise à jour spécifique au cluster
DELETING Le cluster est en cours de suppression.
REPAIRING Le cluster est en cours de maintenance (par exemple, un nœud défaillant est en cours de remplacement).

AutoscalingSettings

Les paramètres d'autoscaling définissent les règles utilisées par VMware Engine pour faire évoluer automatiquement les clusters d'un cloud privé à la hausse ou à la baisse.

Représentation JSON
{
  "autoscalingPolicies": {
    string: {
      object (AutoscalingPolicy)
    },
    ...
  },
  "minClusterNodeCount": integer,
  "maxClusterNodeCount": integer,
  "coolDownPeriod": string
}
Champs
autoscalingPolicies

map (key: string, value: object (AutoscalingPolicy))

Obligatoire. Carte avec les règles d'autoscaling appliquées au cluster. La clé est l'identifiant de la règle. Elle doit répondre aux exigences suivantes :

  • Ne contient que 1 à 63 caractères alphanumériques et des tirets
  • Commence par un caractère alphabétique
  • Se termine par un caractère autre qu'un tiret
  • Format non UUID
  • Conforme à la norme RFC 1034 (section 3.5)

Actuellement, la carte ne doit contenir qu'un seul élément décrivant la règle d'autoscaling pour les nœuds de calcul.

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

minClusterNodeCount

integer

Facultatif. Nombre minimal de nœuds de n'importe quel type dans un cluster. Si aucune valeur n'est spécifiée, les limites par défaut s'appliquent.

maxClusterNodeCount

integer

Facultatif. Nombre maximal de nœuds de tout type dans un cluster. Si aucune valeur n'est spécifiée, les limites par défaut s'appliquent.

coolDownPeriod

string (Duration format)

Facultatif. Durée minimale entre deux opérations d'autoscaling consécutives. Il démarre une fois l'ajout ou la suppression de nœuds entièrement terminé. En l'absence de spécification, la valeur par défaut est de 30 minutes. La durée du temps d'attente doit être exprimée en minutes entières (par exemple, 30, 31, 50 ou 180 minutes).

Durée en secondes avec neuf chiffres au maximum après la virgule et se terminant par "s". Exemple : "3.5s"

AutoscalingPolicy

Une règle d'autoscaling décrit le comportement de l'autoscaling par rapport à l'utilisation des ressources. L'opération de scaling horizontal est lancée si l'utilisation dépasse l'UN DES SEUILS respectifs. L'opération de réduction est lancée si l'utilisation est inférieure à TOUS les seuils respectifs.

Représentation JSON
{
  "nodeTypeId": string,
  "scaleOutSize": integer,
  "cpuThresholds": {
    object (Thresholds)
  },
  "grantedMemoryThresholds": {
    object (Thresholds)
  },
  "consumedMemoryThresholds": {
    object (Thresholds)
  },
  "storageThresholds": {
    object (Thresholds)
  }
}
Champs
nodeTypeId

string

Obligatoire. Identifiant canonique du type de nœud à ajouter ou à supprimer. Correspond à NodeType.

scaleOutSize

integer

Obligatoire. Nombre de nœuds à ajouter à un cluster lors d'une opération de scaling horizontal. Doit être divisible par 2 pour les clusters étendus. Lors d'une opération de réduction, un seul nœud (ou deux pour les clusters étendus) est supprimé à chaque itération.

cpuThresholds

object (Thresholds)

Facultatif. Seuils d'utilisation liés à l'utilisation du processeur.

grantedMemoryThresholds

object (Thresholds)

Facultatif. Seuils d'utilisation liés à la quantité de mémoire accordée.

consumedMemoryThresholds

object (Thresholds)

Facultatif. Seuils d'utilisation liés à la quantité de mémoire consommée.

storageThresholds

object (Thresholds)

Facultatif. Seuils d'utilisation liés à la quantité de stockage consommée.

Seuils

Les seuils définissent l'utilisation des ressources qui déclenchent les opérations de scaling horizontal et vertical.

Représentation JSON
{
  "scaleOut": integer,
  "scaleIn": integer
}
Champs
scaleOut

integer

Obligatoire. Utilisation déclenchant l'opération de scale-out, en pourcentage.

scaleIn

integer

Obligatoire. Utilisation déclenchant l'opération de réduction de la capacité en pourcentage.

DatastoreMountConfig

Configuration du montage du datastore

Représentation JSON
{
  "fileShare": string,
  "datastore": string,
  "datastoreNetwork": {
    object (DatastoreNetwork)
  },
  "accessMode": enum (AccessMode),
  "nfsVersion": enum (NfsVersion),
  "servers": [
    string
  ]
}
Champs
fileShare

string

Uniquement en sortie. Nom du partage de fichiers.

datastore

string

Obligatoire. Nom de ressource du datastore à monter. Les noms de ressources sont des URI sans schéma qui suivent les conventions décrites sur https://cloud.google.com/apis/design/resource_names. Par exemple : projects/my-project/locations/us-central1/datastores/my-datastore

datastoreNetwork

object (DatastoreNetwork)

Obligatoire. Configuration réseau du magasin de données.

accessMode

enum (AccessMode)

Facultatif. Mode d'accès du volume NFS. Facultatif. La valeur par défaut utilisée sera READ_WRITE.

nfsVersion

enum (NfsVersion)

Facultatif. Protocole NFS accepté par le volume NFS. La valeur par défaut utilisée sera NFS_V3.

servers[]

string

Uniquement en sortie. Adresses IP du serveur du volume NFS. Pour NFS 3, vous ne pouvez fournir qu'une seule adresse IP de serveur ou un seul nom DNS.

DatastoreNetwork

Configuration réseau du magasin de données.

Représentation JSON
{
  "subnet": string,
  "mtu": integer,
  "networkPeering": string,
  "connectionCount": integer
}
Champs
subnet

string

Obligatoire. Nom de ressource du sous-réseau. Les noms de ressources sont des URI sans schéma qui suivent les conventions décrites sur https://cloud.google.com/apis/design/resource_names. Par exemple : projects/my-project/locations/us-central1/subnets/my-subnet

mtu

integer

Facultatif. La valeur de la MTU est définie sur l'adaptateur VMKernel pour le trafic NFS. Si elle n'est pas spécifiée, une MTU de 1 500 est utilisée. Pour utiliser des trames géantes, définissez cette valeur sur 8 896. Nous vous recommandons d'ajuster cette valeur en fonction des performances du trafic NFS. Les performances peuvent être déterminées à l'aide d'outils de benchmarking d'E/S tels que l'utilitaire fio (Flexible I/O Tester).

networkPeering

string

Uniquement en sortie. Nom de ressource du peering réseau, utilisé pour accéder au partage de fichiers par les clients sur le cloud privé. Les noms de ressources sont des URI sans schéma qui suivent les conventions décrites sur https://cloud.google.com/apis/design/resource_names. Par exemple : projects/my-project/locations/us-central1/networkPeerings/my-network-peering

connectionCount

integer

Facultatif. connectionCount permet de définir plusieurs connexions du client NFS sur l'hôte ESXi au serveur NFS. Un nombre plus élevé de connexions permet d'améliorer les performances des data stores. Dans l'API clusters.mountDatastore, quatre connexions maximum sont configurées par défaut. L'utilisateur peut définir la valeur de connectionCount entre 1 et 4. Connection_count est compatible avec vSphere 8.0u1. Pour les versions antérieures, le nombre de connexions 1 est défini sur les hôtes ESXi.

AccessMode

Mode d'accès du volume NFS.

Enums
ACCESS_MODE_UNSPECIFIED Valeur par défaut. Cette valeur ne doit jamais être utilisée.
READ_ONLY Les hôtes accèdent à NFS en mode lecture.
READ_WRITE Les hôtes accèdent à NFS en mode lecture et écriture.

NfsVersion

Protocole NFS accepté par le volume NFS.

Enums
NFS_VERSION_UNSPECIFIED Valeur par défaut. Cette valeur ne doit jamais être utilisée.
NFS_V3 NFS 3

Méthodes

create

Crée un cluster dans un cloud privé donné.

delete

Supprime une ressource Cluster.

get

Récupère une ressource Cluster par son nom de ressource.

getIamPolicy

Récupère la stratégie de contrôle d'accès d'une ressource.

list

Liste les ressources Cluster d'un cloud privé donné.

mountDatastore

Associe un Datastore à une ressource de cluster

patch

Modifie une ressource Cluster.

setIamPolicy

Définit la stratégie de contrôle d'accès de la ressource spécifiée.

testIamPermissions

Renvoie les autorisations qu'un appelant a sur la ressource spécifiée.

unmountDatastore

Démonte un Datastore sur une ressource de cluster