REST Resource: projects.locations.vmwareClusters

Ressource : VmwareCluster

Ressource représentant un cluster d'utilisateur VMware.

##

Représentation JSON
{
  "name": string,
  "adminClusterMembership": string,
  "description": string,
  "onPremVersion": string,
  "uid": string,
  "state": enum (State),
  "endpoint": string,
  "reconciling": boolean,
  "createTime": string,
  "updateTime": string,
  "localName": string,
  "etag": string,
  "annotations": {
    string: string,
    ...
  },
  "controlPlaneNode": {
    object (VmwareControlPlaneNodeConfig)
  },
  "antiAffinityGroups": {
    object (VmwareAAGConfig)
  },
  "storage": {
    object (VmwareStorageConfig)
  },
  "networkConfig": {
    object (VmwareNetworkConfig)
  },
  "loadBalancer": {
    object (VmwareLoadBalancerConfig)
  },
  "vcenter": {
    object (VmwareVCenterConfig)
  },
  "status": {
    object (ResourceStatus)
  },
  "dataplaneV2": {
    object (VmwareDataplaneV2Config)
  },
  "vmTrackingEnabled": boolean,
  "autoRepairConfig": {
    object (VmwareAutoRepairConfig)
  },
  "fleet": {
    object (Fleet)
  },
  "authorization": {
    object (Authorization)
  },
  "deleteTime": string,
  "validationCheck": {
    object (ValidationCheck)
  },
  "adminClusterName": string,
  "enableControlPlaneV2": boolean,
  "binaryAuthorization": {
    object (BinaryAuthorization)
  },
  "upgradePolicy": {
    object (VmwareClusterUpgradePolicy)
  },
  "disableBundledIngress": boolean,
  "enableAdvancedCluster": boolean
}
Champs
name

string

Immuable. Nom de ressource du cluster d'utilisateur VMware.

adminClusterMembership

string

Obligatoire. Cluster d'administrateur auquel appartient ce cluster d'utilisateur VMware. Nom complet de la ressource de l'appartenance au parc du cluster d'administrateur. À l'avenir, les références à d'autres types de ressources pourront être autorisées si les clusters d'administrateur sont modélisés en tant que ressources propres.

description

string

Description lisible de ce cluster d'utilisateur VMware.

onPremVersion

string

Obligatoire. Version d'Anthos clusters on VMware pour le cluster d'utilisateur.

uid

string

Uniquement en sortie. Identifiant unique du cluster d'utilisateur VMware.

state

enum (State)

Uniquement en sortie. État actuel du cluster d'utilisateur VMware.

endpoint

string

Uniquement en sortie. Nom DNS du serveur d'API du cluster d'utilisateur VMware.

reconciling

boolean

Uniquement en sortie. Si cette option est définie, des modifications sont en cours de diffusion dans le cluster d'utilisateur VMware.

createTime

string (Timestamp format)

Uniquement en sortie. Date et heure auxquelles le cluster d'utilisateur VMware a été créé.

Utilise la norme RFC 3339, où le résultat généré est toujours normalisé avec le suffixe Z et utilise 0, 3, 6 ou 9 chiffres décimaux. Les décalages autres que "Z" 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 à laquelle le cluster d'utilisateur VMware a été mis à jour pour la dernière fois.

Utilise la norme RFC 3339, où le résultat généré est toujours normalisé avec le suffixe Z et utilise 0, 3, 6 ou 9 chiffres décimaux. Les décalages autres que "Z" sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

localName

string

Uniquement en sortie. Nom d'objet de la ressource personnalisée VMware OnPremUserCluster sur le cluster d'administrateur associé. Ce champ permet de gérer les noms conflictuels lors de l'enregistrement de clusters existants auprès de l'API. Lorsqu'il est utilisé dans l'enregistrement d'un cluster, ce champ diffère de l'ID figurant dans le nom de la ressource. Pour les nouveaux clusters, ce champ correspond au nom de cluster fourni par l'utilisateur et est visible dans le dernier composant du nom de ressource. Il n'est pas modifiable.

Tous les utilisateurs doivent utiliser ce nom pour accéder à leur cluster à l'aide de gkectl ou kubectl, et s'attendre à voir le nom local lorsqu'ils consultent les journaux du contrôleur de cluster d'administrateur.

etag

string

Cette somme de contrôle est calculée par le serveur en fonction de la valeur des autres champs. Elle 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. Permet aux clients d'effectuer des opérations de lecture-modification-écriture cohérentes via un contrôle de simultanéité optimiste.

annotations

map (key: string, value: string)

Annotations sur le cluster d'utilisateur VMware. 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" }.

controlPlaneNode

object (VmwareControlPlaneNodeConfig)

Les nœuds du plan de contrôle du cluster d'utilisateur VMware doivent comporter une ou trois répliques.

antiAffinityGroups

object (VmwareAAGConfig)

AAGConfig indique si les nœuds de cluster d'utilisateur VMware doivent être répartis sur au moins trois hôtes physiques dans le centre de données.

storage

object (VmwareStorageConfig)

Configuration du stockage.

networkConfig

object (VmwareNetworkConfig)

Configuration du réseau du cluster d'utilisateur VMware.

loadBalancer

object (VmwareLoadBalancerConfig)

Configuration de l'équilibreur de charge.

vcenter

object (VmwareVCenterConfig)

VmwareVCenterConfig spécifie la configuration vCenter pour le cluster d'utilisateur. Si aucune valeur n'est spécifiée, elle est héritée du cluster d'administrateur.

status

object (ResourceStatus)

Uniquement en sortie. ResourceStatus représentant l'état détaillé du cluster.

dataplaneV2

object (VmwareDataplaneV2Config)

VmwareDataplaneV2Config spécifie la configuration de Dataplane V2.

vmTrackingEnabled

boolean

Activez le suivi des VM.

autoRepairConfig

object (VmwareAutoRepairConfig)

Configuration pour la réparation automatique.

fleet

object (Fleet)

Uniquement en sortie. Configuration du parc pour le cluster.

authorization

object (Authorization)

Stratégie RBAC qui sera appliquée et gérée par l'API Anthos On-Prem.

deleteTime

string (Timestamp format)

Uniquement en sortie. Heure à laquelle le cluster d'utilisateur VMware a été supprimé.

Utilise la norme RFC 3339, où le résultat généré est toujours normalisé avec le suffixe Z et utilise 0, 3, 6 ou 9 chiffres décimaux. Les décalages autres que "Z" sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

validationCheck

object (ValidationCheck)

Uniquement en sortie. ValidationCheck représente le résultat de la tâche de vérification préliminaire.

adminClusterName

string

Uniquement en sortie. Nom de ressource du cluster d'administrateur VMware hébergeant ce cluster d'utilisateur.

enableControlPlaneV2

boolean

Activez le plan de contrôle V2. La valeur par défaut est "false".

binaryAuthorization

object (BinaryAuthorization)

Configurations liées à l'autorisation binaire.

upgradePolicy

object (VmwareClusterUpgradePolicy)

Spécifie la règle de mise à niveau pour le cluster.

disableBundledIngress

boolean

Désactivez l'entrée groupée.

enableAdvancedCluster

boolean

Activez le cluster avancé.

État

État du cycle de vie du cluster d'utilisateur VMware.

Énumérations
STATE_UNSPECIFIED Non défini.
PROVISIONING L'état "PROVISIONING" (En cours de provisionnement) indique que le cluster est en cours de création.
RUNNING L'état "RUNNING" (En cours d'exécution) indique que le cluster a été créé et qu'il est entièrement utilisable.
RECONCILING L'état "RECONCILING" (Rapprochement) indique que le cluster est en cours de mise à jour. Il reste disponible, mais ses performances peuvent être dégradées.
STOPPING L'état "STOPPING" (Arrêt) indique que le cluster est en cours de suppression.
ERROR L'état "ERROR" (Erreur) indique que le cluster est dans un état défaillant irrécupérable.
DEGRADED L'état "DEGRADED" (Dégradé) indique que le cluster nécessite une action de l'utilisateur pour restaurer toutes les fonctionnalités.

VmwareControlPlaneNodeConfig

Spécifie la configuration des nœuds du plan de contrôle pour le cluster d'utilisateur VMware.

Représentation JSON
{
  "cpus": string,
  "memory": string,
  "replicas": string,
  "autoResizeConfig": {
    object (VmwareAutoResizeConfig)
  },
  "vsphereConfig": {
    object (VmwareControlPlaneVsphereConfig)
  }
}
Champs
cpus

string (int64 format)

Nombre de processeurs pour chaque nœud de cluster d'administrateur servant de plans de contrôle pour ce cluster d'utilisateur VMware. (par défaut : 4 processeurs)

memory

string (int64 format)

Nombre de mégaoctets de mémoire pour chaque nœud de cluster d'administrateur servant de plan de contrôle pour ce cluster d'utilisateur VMware (par défaut : 8 192 Mo de mémoire).

replicas

string (int64 format)

Nombre de nœuds de plan de contrôle pour ce cluster d'utilisateur VMware. (par défaut, une réplique)

autoResizeConfig

object (VmwareAutoResizeConfig)

AutoResizeConfig fournit des configurations de redimensionnement automatique.

vsphereConfig

object (VmwareControlPlaneVsphereConfig)

Configuration spécifique à vSphere.

VmwareControlPlaneVsphereConfig

Spécifie la configuration du nœud de plan de contrôle.

Représentation JSON
{
  "datastore": string,
  "storagePolicyName": string
}
Champs
datastore

string

Datastore vSphere utilisé par le nœud du plan de contrôle.

storagePolicyName

string

Règle de stockage vSphere utilisée par le nœud du plan de contrôle.

VmwareStorageConfig

Spécifie la configuration du déploiement des composants CSI vSphere dans le cluster d'utilisateur VMware.

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

boolean

Indique si les composants CSI vSphere doivent être déployés dans le cluster d'utilisateur VMware. Cette option est activée par défaut.

VmwareNetworkConfig

Spécifie la configuration réseau du cluster d'utilisateur VMware.

Représentation JSON
{
  "serviceAddressCidrBlocks": [
    string
  ],
  "podAddressCidrBlocks": [
    string
  ],
  "vcenterNetwork": string,
  "hostConfig": {
    object (VmwareHostConfig)
  },
  "controlPlaneV2Config": {
    object (VmwareControlPlaneV2Config)
  },

  // Union field ip_configuration can be only one of the following:
  "staticIpConfig": {
    object (VmwareStaticIpConfig)
  },
  "dhcpIpConfig": {
    object (VmwareDhcpIpConfig)
  }
  // End of list of possible types for union field ip_configuration.
}
Champs
serviceAddressCidrBlocks[]

string

Obligatoire. Une adresse IPv4 RFC1918 de ces plages est attribuée à chaque service du cluster. Une seule plage est acceptée. Une fois le compte créé, ce champ ne peut plus être modifié.

podAddressCidrBlocks[]

string

Obligatoire. Une adresse IPv4 RFC1918 de ces plages est attribuée à chaque pod du cluster. Une seule plage est acceptée. Une fois le compte créé, ce champ ne peut plus être modifié.

vcenterNetwork

string

vcenterNetwork spécifie le nom du réseau vCenter. Hérité du cluster d'administrateur.

hostConfig

object (VmwareHostConfig)

Représente les paramètres réseau courants, quelle que soit l'adresse IP de l'hôte.

controlPlaneV2Config

object (VmwareControlPlaneV2Config)

Configuration du mode Controlplane V2.

Champ d'union ip_configuration. Type de configuration IP utilisé par le cluster d'utilisateur VMware. ip_configuration ne peut être qu'un des éléments suivants :
staticIpConfig

object (VmwareStaticIpConfig)

Paramètres de configuration pour une configuration d'adresse IP statique.

dhcpIpConfig

object (VmwareDhcpIpConfig)

Paramètres de configuration d'une configuration IP DHCP.

VmwareControlPlaneV2Config

Spécifie la configuration du plan de contrôle V2.

Représentation JSON
{
  "controlPlaneIpBlock": {
    object (VmwareIpBlock)
  }
}
Champs
controlPlaneIpBlock

object (VmwareIpBlock)

Adresses IP statiques pour les nœuds du plan de contrôle.

VmwareLoadBalancerConfig

Spécifie la configuration de l'équilibreur de charge pour le cluster d'utilisateur VMware.

Représentation JSON
{
  "vipConfig": {
    object (VmwareVipConfig)
  },

  // Union field load_balancer_configuration can be only one of the following:
  "f5Config": {
    object (VmwareF5BigIpConfig)
  },
  "manualLbConfig": {
    object (VmwareManualLbConfig)
  },
  "seesawConfig": {
    object (VmwareSeesawConfig)
  },
  "metalLbConfig": {
    object (VmwareMetalLbConfig)
  }
  // End of list of possible types for union field load_balancer_configuration.
}
Champs
vipConfig

object (VmwareVipConfig)

Adresses IP virtuelles utilisées par l'équilibreur de charge.

Champ d'union load_balancer_configuration. Configuration de l'équilibreur de charge à utiliser dans le cluster d'utilisateur. load_balancer_configuration ne peut être qu'un des éléments suivants :
f5Config

object (VmwareF5BigIpConfig)

Configuration pour les équilibreurs de charge F5 BIG-IP typés.

manualLbConfig

object (VmwareManualLbConfig)

Équilibreurs de charge configurés manuellement.

seesawConfig

object (VmwareSeesawConfig)

Uniquement en sortie. Configuration des équilibreurs de charge Seesaw typés.

metalLbConfig

object (VmwareMetalLbConfig)

Configuration des équilibreurs de charge typés MetalLB.

VmwareVipConfig

Spécifie la configuration de l'adresse IP virtuelle pour l'équilibreur de charge du cluster d'utilisateur VMware.

Représentation JSON
{
  "controlPlaneVip": string,
  "ingressVip": string
}
Champs
controlPlaneVip

string

Adresse IP virtuelle que vous avez précédemment réservée pour l'API Kubernetes de ce cluster.

ingressVip

string

Adresse IP virtuelle que vous avez précédemment réservée pour le trafic entrant dans ce cluster.

VmwareF5BigIpConfig

Représente les paramètres de configuration d'un équilibreur de charge F5 BIG-IP.

Représentation JSON
{
  "address": string,
  "partition": string,
  "snatPool": string
}
Champs
address

string

Adresse IP de l'équilibreur de charge.

partition

string

Partition préexistante à utiliser par l'équilibreur de charge. Cette partition est généralement créée pour le cluster d'administrateur, par exemple : "my-f5-admin-partition".

snatPool

string

Nom du pool. Nécessaire uniquement si vous utilisez SNAT.

VmwareManualLbConfig

Représente les paramètres de configuration d'un équilibreur de charge manuel existant. Étant donné la nature des équilibreurs de charge manuels, il est prévu que les utilisateurs les gèrent entièrement.

IMPORTANT : Veuillez noter que l'API Anthos On-Prem ne génère ni ne met à jour les configurations ManualLB. Elle ne peut que lier une configuration préexistante à un nouveau cluster d'utilisateur VMware.

Représentation JSON
{
  "ingressHttpNodePort": integer,
  "ingressHttpsNodePort": integer,
  "controlPlaneNodePort": integer,
  "konnectivityServerNodePort": integer
}
Champs
ingressHttpNodePort

integer

NodePort pour le service d'entrée http. Le service d'entrée du cluster d'administrateur est mis en œuvre en tant que service de type NodePort (par exemple, 32527).

ingressHttpsNodePort

integer

NodePort pour le service d'entrée HTTPS. Le service d'entrée du cluster d'administrateur est mis en œuvre en tant que service de type NodePort (par exemple, 30139).

controlPlaneNodePort

integer

NodePort pour le service de plan de contrôle. Le serveur d'API Kubernetes du cluster d'administrateur est implémenté en tant que service de type NodePort (par exemple, 30968).

konnectivityServerNodePort

integer

NodePort pour le service de serveur konnectivity s'exécutant en tant que side-car dans chaque pod kube-apiserver (par exemple, 30564).

VmwareSeesawConfig

VmwareSeesawConfig représente les paramètres de configuration d'un équilibreur de charge Seesaw déjà existant.

IMPORTANT : Veuillez noter que l'API Anthos On-Prem ne générera ni ne mettra à jour les configurations Seesaw. Elle ne peut que lier une configuration préexistante à un nouveau cluster d'utilisateur.

IMPORTANT : Lorsque vous essayez de créer un cluster d'utilisateur avec un équilibreur de charge Seesaw préexistant, vous devez suivre certaines étapes préparatoires avant d'appeler la méthode d'API "vmwareClusters.create". Vous devez d'abord créer l'espace de noms du cluster d'utilisateur via kubectl. L'espace de noms devra utiliser la convention d'attribution de noms suivante : -gke-onprem-mgmt ou -gke-onprem-mgmt, selon que vous avez utilisé ou non "VmwareCluster.local_name" pour éviter les conflits. Pour plus d'informations, consultez la documentation de "VmwareCluster.local_name". Une fois l'espace de noms créé, vous devrez créer une ressource secrète via kubectl. Ce secret contiendra des copies de vos identifiants Seesaw. Le secret doit être nommé "user-cluster-creds" et contenir les identifiants SSH et de certificat de Seesaw. Les identifiants doivent être associés aux noms suivants : "seesaw-ssh-private-key", "seesaw-ssh-public-key", "seesaw-ssh-ca-key" et "seesaw-ssh-ca-cert".

Représentation JSON
{
  "group": string,
  "masterIp": string,
  "ipBlocks": [
    {
      object (VmwareIpBlock)
    }
  ],
  "enableHa": boolean,
  "vms": [
    string
  ],
  "stackdriverName": string
}
Champs
group

string

Obligatoire. En général, le nom du groupe Seesaw doit respecter le format suivant : seesaw-for-[clusterName].

masterIp

string

Obligatoire. MasterIP est l'adresse IP annoncée par le maître du groupe Seesaw.

ipBlocks[]

object (VmwareIpBlock)

Obligatoire. Blocs d'adresses IP à utiliser par l'équilibreur de charge Seesaw

enableHa

boolean

Activez deux VM d'équilibreur de charge pour obtenir un équilibreur de charge Seesaw à haute disponibilité.

vms[]

string

Noms des VM créées pour ce groupe Seesaw.

stackdriverName

string

Nom à utiliser par Stackdriver.

VmwareMetalLbConfig

Représente les paramètres de configuration de l'équilibreur de charge MetalLB.

Représentation JSON
{
  "addressPools": [
    {
      object (VmwareAddressPool)
    }
  ]
}
Champs
addressPools[]

object (VmwareAddressPool)

Obligatoire. AddressPools est une liste de pools d'adresses IP sans chevauchement utilisés par les services de type équilibreur de charge. Toutes les adresses doivent pouvoir être routées vers les nœuds d'équilibrage de charge. L'adresse IP virtuelle d'entrée doit être incluse dans les pools.

VmwareAddressPool

Représente un pool d'adresses IP utilisé par l'équilibreur de charge.

Représentation JSON
{
  "pool": string,
  "addresses": [
    string
  ],
  "avoidBuggyIps": boolean,
  "manualAssign": boolean
}
Champs
pool

string

Obligatoire. Nom du pool d'adresses.

addresses[]

string

Obligatoire. Adresses faisant partie de ce pool. Chaque adresse doit être au format CIDR (1.2.3.0/24) ou au format de plage (1.2.3.1-1.2.3.5).

avoidBuggyIps

boolean

Si la valeur est "true", évitez d'utiliser les adresses IP se terminant par .0 ou .255. Cela évite que les appareils grand public bogués suppriment par erreur le trafic IPv4 pour ces adresses IP spéciales.

manualAssign

boolean

Si la valeur est "true", les adresses IP ne sont pas attribuées automatiquement.

VmwareVCenterConfig

Représente la configuration du VMware vCenter pour le cluster d'utilisateur.

Représentation JSON
{
  "resourcePool": string,
  "datastore": string,
  "datacenter": string,
  "cluster": string,
  "folder": string,
  "caCertData": string,
  "address": string,
  "storagePolicyName": string
}
Champs
resourcePool

string

Nom du pool de ressources vCenter pour le cluster d'utilisateur.

datastore

string

Nom du datastore vCenter pour le cluster d'utilisateur.

datacenter

string

Nom du centre de données vCenter pour le cluster d'utilisateur.

cluster

string

Nom du cluster vCenter pour le cluster d'utilisateur.

folder

string

Nom du dossier vCenter pour le cluster d'utilisateur.

caCertData

string

Contient la clé publique du certificat CA vCenter pour la validation SSL.

address

string

Uniquement en sortie. Adresse IP vCenter.

storagePolicyName

string

Nom de la règle de stockage vCenter pour le cluster d'utilisateur.

VmwareDataplaneV2Config

Contient les configurations de Dataplane V2, qui est un plan de données optimisé pour la mise en réseau Kubernetes. Pour en savoir plus, consultez https://cloud.google.com/kubernetes-engine/docs/concepts/dataplane-v2.

Représentation JSON
{
  "dataplaneV2Enabled": boolean,
  "windowsDataplaneV2Enabled": boolean,
  "advancedNetworking": boolean,
  "forwardMode": string
}
Champs
dataplaneV2Enabled

boolean

Active Dataplane V2.

windowsDataplaneV2Enabled

boolean

Activez Dataplane V2 pour les clusters avec des nœuds Windows.

advancedNetworking

boolean

Activez la mise en réseau avancée, ce qui nécessite de définir dataplaneV2Enabled sur "true".

forwardMode

string

Configurez ForwardMode pour Dataplane V2.

VmwareClusterUpgradePolicy

VmwareClusterUpgradePolicy définit la stratégie de mise à niveau du cluster.

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

boolean

Indique si la mise à niveau s'applique uniquement au plan de contrôle.

Méthodes

create

Crée un cluster d'utilisateur VMware dans un projet et un emplacement donnés.

delete

Supprime un seul cluster VMware.

enroll

Enregistre un cluster d'utilisateur VMware existant et ses pools de nœuds auprès de l'API Anthos On-Prem dans un projet et un emplacement donnés.

get

Récupère les détails d'un seul cluster VMware.

list

Répertorie les clusters VMware d'un projet et d'un emplacement donnés.

patch

Mettre à jour les paramètres d'un seul cluster VMware.

queryVersionConfig

Interroge la configuration de la version du cluster d'utilisateur VMware.