REST Resource: projects.locations.vmwareClusters

Recurso: VmwareCluster

Es un recurso que representa un clúster de usuarios de VMware.

##

Representación 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
}
Campos
name

string

Inmutable. Es el nombre del recurso del clúster de usuarios de VMware.

adminClusterMembership

string

Obligatorio. El clúster de administrador al que pertenece este clúster de usuario de VMware. Este es el nombre completo del recurso de la membresía de la flota del clúster de administrador. En el futuro, es posible que se permitan referencias a otros tipos de recursos si los clústeres de administración se modelan como sus propios recursos.

description

string

Una descripción legible por humanos de este clúster de usuario de VMware.

onPremVersion

string

Obligatorio. La versión de clústeres de Anthos alojados en VMware de tu clúster de usuario.

uid

string

Solo salida. Es el identificador único del clúster de usuarios de VMware.

state

enum (State)

Solo salida. El estado actual del clúster de usuario de VMware.

endpoint

string

Solo salida. Es el nombre de DNS del servidor de API del clúster de usuarios de VMware.

reconciling

boolean

Solo salida. Si se configura, actualmente hay cambios en tránsito en el clúster de usuario de VMware.

createTime

string (Timestamp format)

Solo salida. Es la hora en la que se creó el clúster de usuarios de VMware.

Usa RFC 3339, en el que el resultado generado siempre se normalizará en Z y usará 0, 3, 6 o 9 dígitos fraccionarios. También se aceptan compensaciones distintas de "Z". Por ejemplo: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Solo salida. La hora en la que se actualizó el clúster de usuarios de VMware por última vez.

Usa RFC 3339, en el que el resultado generado siempre se normalizará en Z y usará 0, 3, 6 o 9 dígitos fraccionarios. También se aceptan compensaciones distintas de "Z". Por ejemplo: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

localName

string

Solo salida. Es el nombre del objeto del recurso personalizado OnPremUserCluster de VMware en el clúster de administrador asociado. Este campo se usa para admitir nombres en conflicto cuando se inscriben clústeres existentes en la API. Cuando se use como parte de la inscripción del clúster, este campo diferirá del ID en el nombre del recurso. En el caso de los clústeres nuevos, este campo coincidirá con el nombre del clúster que proporcionó el usuario y será visible en el último componente del nombre del recurso. No se puede modificar.

Todos los usuarios deben usar este nombre para acceder a su clúster con gkectl o kubectl y deben esperar ver el nombre local cuando vean los registros del controlador de clúster de administrador.

etag

string

El servidor calcula esta suma de comprobación según el valor de otros campos y es posible que se envíe en las solicitudes de actualización y eliminación para garantizar que el cliente tenga un valor actualizado antes de continuar. Permite a los clientes realizar operaciones de lectura, modificación y escritura coherentes a través del control de simultaneidad optimista.

annotations

map (key: string, value: string)

Anotaciones en el clúster de usuario de VMware. Este campo tiene las mismas restricciones que las anotaciones de Kubernetes. El tamaño total de todas las claves y valores combinados se limita a 256,000. La clave puede tener 2 segmentos: prefijo (opcional) y nombre (obligatorio), separados por una barra diagonal (/). El prefijo debe ser un subdominio DNS. El nombre debe tener 63 caracteres o menos, comenzar y terminar con caracteres alfanuméricos, con guiones (-), guiones bajos (_), puntos (.) y caracteres alfanuméricos en el medio.

Un objeto que contiene una lista de pares "key": value. Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

controlPlaneNode

object (VmwareControlPlaneNodeConfig)

Los nodos del plano de control del clúster de usuario de VMware deben tener 1 o 3 réplicas.

antiAffinityGroups

object (VmwareAAGConfig)

AAGConfig especifica si se deben distribuir los nodos del clúster de usuario de VMware en al menos tres hosts físicos del centro de datos.

storage

object (VmwareStorageConfig)

Configuración de almacenamiento.

networkConfig

object (VmwareNetworkConfig)

La configuración de red del clúster de usuario de VMware

loadBalancer

object (VmwareLoadBalancerConfig)

Configuración del balanceador de cargas

vcenter

object (VmwareVCenterConfig)

VmwareVCenterConfig especifica la configuración de vCenter para el clúster de usuario. Si no se especifica, se hereda del clúster de administrador.

status

object (ResourceStatus)

Solo salida. ResourceStatus que representa el estado detallado del clúster

dataplaneV2

object (VmwareDataplaneV2Config)

VmwareDataplaneV2Config especifica la configuración para Dataplane V2.

vmTrackingEnabled

boolean

Habilita el seguimiento de VM.

autoRepairConfig

object (VmwareAutoRepairConfig)

Configuración para la reparación automática.

fleet

object (Fleet)

Solo salida. Configuración de la flota para el clúster.

authorization

object (Authorization)

La política de RBAC que aplicará y administrará la API de Anthos On-Prem

deleteTime

string (Timestamp format)

Solo salida. Es la hora en la que se borró el clúster de usuarios de VMware.

Usa RFC 3339, en el que el resultado generado siempre se normalizará en Z y usará 0, 3, 6 o 9 dígitos fraccionarios. También se aceptan compensaciones distintas de "Z". Por ejemplo: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

validationCheck

object (ValidationCheck)

Solo salida. ValidationCheck representa el resultado de la tarea de verificación previa.

adminClusterName

string

Solo salida. Es el nombre del recurso del clúster de administrador de VMware que aloja este clúster de usuario.

enableControlPlaneV2

boolean

Habilita el plano de control V2. El valor predeterminado es falso.

binaryAuthorization

object (BinaryAuthorization)

Parámetros de configuración relacionados con la autorización binaria

upgradePolicy

object (VmwareClusterUpgradePolicy)

Especifica la política de actualización del clúster.

disableBundledIngress

boolean

Inhabilita el Ingress agrupado.

Estado

El estado del ciclo de vida del clúster de usuario de VMware.

Enums
STATE_UNSPECIFIED Sin establecer.
PROVISIONING El estado PROVISIONING indica que se está creando el clúster.
RUNNING El estado RUNNING indica que el clúster se creó y se puede usar por completo.
RECONCILING El estado RECONCILING indica que el clúster se está actualizando. Permanece disponible, pero es posible que el rendimiento se vea afectado.
STOPPING El estado STOPPING indica que se está borrando el clúster.
ERROR El estado ERROR indica que el clúster se encuentra en un estado con daño irrecuperable.
DEGRADED El estado DEGRADED indica que el clúster requiere una acción del usuario para restablecer la funcionalidad completa.

VmwareControlPlaneNodeConfig

Especifica la configuración del nodo del plano de control para el clúster de usuario de VMware.

Representación JSON
{
  "cpus": string,
  "memory": string,
  "replicas": string,
  "autoResizeConfig": {
    object (VmwareAutoResizeConfig)
  },
  "vsphereConfig": {
    object (VmwareControlPlaneVsphereConfig)
  }
}
Campos
cpus

string (int64 format)

Es la cantidad de CPU para cada nodo de clúster de administrador que funciona como plano de control para este clúster de usuario de VMware. (predeterminado: 4 CPUs)

memory

string (int64 format)

Los megabytes de memoria para cada nodo del clúster de administrador que funciona como plano de control para este clúster de usuarios de VMware (predeterminado: 8,192 MB de memoria).

replicas

string (int64 format)

Es la cantidad de nodos del plano de control para este clúster de usuario de VMware. (predeterminado: 1 réplica).

autoResizeConfig

object (VmwareAutoResizeConfig)

AutoResizeConfig proporciona configuraciones de cambio de tamaño automático.

vsphereConfig

object (VmwareControlPlaneVsphereConfig)

Configuración específica de Vsphere.

VmwareControlPlaneVsphereConfig

Especifica la configuración del nodo del plano de control.

Representación JSON
{
  "datastore": string,
  "storagePolicyName": string
}
Campos
datastore

string

El almacén de datos de vSphere que usa el nodo del plano de control.

storagePolicyName

string

Es la política de almacenamiento de vSphere que usa el nodo del plano de control.

VmwareStorageConfig

Especifica la configuración de implementación de componentes de CSI de vSphere en el clúster de usuarios de VMware.

Representación JSON
{
  "vsphereCsiDisabled": boolean
}
Campos
vsphereCsiDisabled

boolean

Si se implementarán o no componentes de CSI de vSphere en el clúster de usuario de VMware. Habilitados de forma predeterminada.

VmwareNetworkConfig

Especifica la configuración de red para el clúster de usuarios de VMware.

Representación 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.
}
Campos
serviceAddressCidrBlocks[]

string

Obligatorio. A todos los servicios del clúster se les asigna una dirección IPv4 RFC1918 de estos rangos. Solo se admite un rango. No se puede cambiar este campo después de crearlo.

podAddressCidrBlocks[]

string

Obligatorio. A todos los pods del clúster se les asigna una dirección IPv4 RFC1918 de estos rangos. Solo se admite un rango. No se puede cambiar este campo después de crearlo.

vcenterNetwork

string

vcenterNetwork especifica el nombre de la red de vCenter. Se hereda del clúster de administrador.

hostConfig

object (VmwareHostConfig)

Representa la configuración de red común, independientemente de la dirección IP del host.

controlPlaneV2Config

object (VmwareControlPlaneV2Config)

Configuración para el modo V2 del plano de control.

Campo de unión ip_configuration. Es el tipo de configuración de IP que usa el clúster de usuarios de VMware. ip_configuration puede ser solo uno de los siguientes:
staticIpConfig

object (VmwareStaticIpConfig)

Configuración de una IP estática.

dhcpIpConfig

object (VmwareDhcpIpConfig)

Configuración de una configuración de IP de DHCP.

VmwareControlPlaneV2Config

Especifica la configuración del plano de control V2.

Representación JSON
{
  "controlPlaneIpBlock": {
    object (VmwareIpBlock)
  }
}
Campos
controlPlaneIpBlock

object (VmwareIpBlock)

Direcciones IP estáticas para los nodos del plano de control.

VmwareLoadBalancerConfig

Especifica la configuración del balanceador de cargas local para el clúster de usuarios de VMware.

Representación 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.
}
Campos
vipConfig

object (VmwareVipConfig)

Las VIP que usa el balanceador de cargas

Campo de unión load_balancer_configuration. Es la configuración del balanceador de cargas que se usará en el clúster de usuarios. load_balancer_configuration puede ser solo uno de los siguientes:
f5Config

object (VmwareF5BigIpConfig)

Configuración para balanceadores de cargas de tipo F5 Big IP.

manualLbConfig

object (VmwareManualLbConfig)

Balanceadores de cargas configurados de forma manual

seesawConfig

object (VmwareSeesawConfig)

Solo salida. Configuración para balanceadores de cargas de tipo Seesaw.

metalLbConfig

object (VmwareMetalLbConfig)

Configuración para balanceadores de cargas escritos en MetalLB.

VmwareVipConfig

Especifica la configuración de VIP para el balanceador de cargas del clúster de usuarios de VMware.

Representación JSON
{
  "controlPlaneVip": string,
  "ingressVip": string
}
Campos
controlPlaneVip

string

La VIP que reservaste anteriormente para la API de Kubernetes de este clúster

ingressVip

string

La VIP que reservaste antes para el tráfico de entrada a este clúster.

VmwareF5BigIpConfig

Representa los parámetros de configuración de un balanceador de cargas BIG-IP de F5.

Representación JSON
{
  "address": string,
  "partition": string,
  "snatPool": string
}
Campos
address

string

La dirección IP del balanceador de cargas

partition

string

Es la partición preexistente que usará el balanceador de cargas. Por lo general, esta partición se crea para el clúster de administrador, por ejemplo: "my-f5-admin-partition".

snatPool

string

El nombre del grupo. Solo es necesario si usas SNAT.

VmwareManualLbConfig

Representa los parámetros de configuración de un balanceador de cargas manual ya existente. Dada la naturaleza de los balanceadores de cargas manuales, se espera que los usuarios administren por completo dicho balanceador.

IMPORTANTE: Ten en cuenta que la API de Anthos On-Prem no generará ni actualizará configuraciones de ManualLB, solo puede vincular una configuración preexistente a un nuevo clúster de usuario de VMware.

Representación JSON
{
  "ingressHttpNodePort": integer,
  "ingressHttpsNodePort": integer,
  "controlPlaneNodePort": integer,
  "konnectivityServerNodePort": integer
}
Campos
ingressHttpNodePort

integer

NodePort para el HTTP del servicio de entrada El servicio de entrada en el clúster de administrador se implementa como un Service de tipo NodePort (p. ej., 32527).

ingressHttpsNodePort

integer

Es el NodePort para el HTTPS del servicio de entrada. El servicio de entrada en el clúster de administrador se implementa como un Service de tipo NodePort (p. ej., 30139).

controlPlaneNodePort

integer

NodePort para el servicio de plano de control El servidor de la API de Kubernetes en el clúster de administrador se implementa como un Service de tipo NodePort (p. ej., 30968).

konnectivityServerNodePort

integer

NodePort para el servicio de servidor de conectividad que se ejecuta como un contenedor secundario en cada pod de kube-apiserver (p. ej., 30564).

VmwareSeesawConfig

VmwareSeesawConfig representa los parámetros de configuración de un balanceador de cargas de Seesaw ya existente.

IMPORTANTE: Ten en cuenta que la API de Anthos On-Prem no generará ni actualizará configuraciones de Seesaw, solo puede vincular una configuración preexistente a un clúster de usuario nuevo.

IMPORTANTE: Cuando intentes crear un clúster de usuarios con un balanceador de cargas Seesaw preexistente, deberás seguir algunos pasos de preparación antes de llamar al método de la API "vmwareClusters.create". Primero, deberás crear el espacio de nombres del clúster de usuario a través de kubectl. El espacio de nombres deberá usar la siguiente convención de nombres : -gke-onprem-mgmt o -gke-onprem-mgmt, según si usaste "VmwareCluster.local_name" para desambiguar las colisiones. Para obtener más información, consulta la documentación de "VmwareCluster.local_name". Una vez que se cree el espacio de nombres, deberás crear un recurso secreto a través de kubectl. Este secreto contendrá copias de tus credenciales de Seesaw. El Secreto debe llamarse "user-cluster-creds" y contener las credenciales de SSH y Cert de Seesaw. Las credenciales deben tener los siguientes nombres: "seesaw-ssh-private-key", "seesaw-ssh-public-key", "seesaw-ssh-ca-key" y "seesaw-ssh-ca-cert".

Representación JSON
{
  "group": string,
  "masterIp": string,
  "ipBlocks": [
    {
      object (VmwareIpBlock)
    }
  ],
  "enableHa": boolean,
  "vms": [
    string
  ],
  "stackdriverName": string
}
Campos
group

string

Obligatorio. En general, se debe usar el siguiente formato para el nombre del grupo de Seesaw: seesaw-for-[clusterName].

masterIp

string

Obligatorio. MasterIP es la IP que anuncia el elemento principal del grupo de Seesaw.

ipBlocks[]

object (VmwareIpBlock)

Obligatorio. Los bloques de IP que usará el balanceador de cargas de Seesaw

enableHa

boolean

Habilita dos VMs de balanceador de cargas para lograr un balanceador de cargas de Seesaw con alta disponibilidad.

vms[]

string

Son los nombres de las VMs creadas para este grupo de Seesaw.

stackdriverName

string

Es el nombre que usará Stackdriver.

VmwareMetalLbConfig

Representa los parámetros de configuración del balanceador de cargas MetalLB.

Representación JSON
{
  "addressPools": [
    {
      object (VmwareAddressPool)
    }
  ]
}
Campos
addressPools[]

object (VmwareAddressPool)

Obligatorio. AddressPools es una lista de grupos de IP no superpuestos que usan los servicios de tipo de balanceador de cargas. Todas las direcciones deben poder enrutarse a los nodos del balanceador de cargas. Se debe incluir IngressVIP en los grupos.

VmwareAddressPool

Representa un grupo de IP que usa el balanceador de cargas.

Representación JSON
{
  "pool": string,
  "addresses": [
    string
  ],
  "avoidBuggyIps": boolean,
  "manualAssign": boolean
}
Campos
pool

string

Obligatorio. Es el nombre del grupo de direcciones.

addresses[]

string

Obligatorio. Las direcciones que forman parte de este grupo. Cada dirección debe estar en formato CIDR (1.2.3.0/24) o de rango (1.2.3.1-1.2.3.5).

avoidBuggyIps

boolean

Si es verdadero, evita usar IPs que terminen en .0 o .255. Esto evita que los dispositivos de consumo con errores descarten por error el tráfico IPv4 para esas direcciones IP especiales.

manualAssign

boolean

Si es verdadero, evita que se asignen direcciones IP automáticamente.

VmwareVCenterConfig

Representa la configuración de VMware vCenter para el clúster de usuarios.

Representación JSON
{
  "resourcePool": string,
  "datastore": string,
  "datacenter": string,
  "cluster": string,
  "folder": string,
  "caCertData": string,
  "address": string,
  "storagePolicyName": string
}
Campos
resourcePool

string

Es el nombre del grupo de recursos de vCenter para el clúster de usuario.

datastore

string

Es el nombre del almacén de datos de vCenter para el clúster de usuarios.

datacenter

string

Es el nombre del centro de datos de vCenter para el clúster de usuario.

cluster

string

Es el nombre del clúster de vCenter para el clúster de usuarios.

folder

string

Es el nombre de la carpeta de vCenter para el clúster de usuario.

caCertData

string

Contiene la clave pública del certificado de la AC de vCenter para la verificación de SSL.

address

string

Solo salida. La dirección IP de vCenter

storagePolicyName

string

Es el nombre de la política de almacenamiento de vCenter para el clúster de usuario.

VmwareDataplaneV2Config

Contiene parámetros de configuración para Dataplane V2, que es un plano de datos optimizado para las herramientas de redes de Kubernetes. Para obtener más información, consulta: https://cloud.google.com/kubernetes-engine/docs/concepts/dataplane-v2

Representación JSON
{
  "dataplaneV2Enabled": boolean,
  "windowsDataplaneV2Enabled": boolean,
  "advancedNetworking": boolean,
  "forwardMode": string
}
Campos
dataplaneV2Enabled

boolean

Habilita Dataplane V2.

windowsDataplaneV2Enabled

boolean

Habilita Dataplane V2 para clústeres con nodos de Windows.

advancedNetworking

boolean

Habilita las herramientas de redes avanzadas, lo que requiere que dataplaneV2Enabled se establezca como verdadero.

forwardMode

string

Configura ForwardMode para Dataplane v2.

VmwareClusterUpgradePolicy

VmwareClusterUpgradePolicy define la política de actualización del clúster.

Representación JSON
{
  "controlPlaneOnly": boolean
}
Campos
controlPlaneOnly

boolean

Controla si la actualización se aplica solo al plano de control.

Métodos

create

Crea un nuevo clúster de usuarios de VMware en un proyecto y una ubicación determinados.

delete

Borra un solo clúster de VMware.

enroll

Inscribe un clúster de usuario de VMware existente y sus grupos de nodos en la API de Anthos On-Prem dentro de un proyecto y una ubicación determinados.

get

Obtiene los detalles de un solo clúster de VMware.

list

Muestra una lista de clústeres de VMware en una ubicación y un proyecto determinados.

patch

Actualiza los parámetros de un solo clúster de VMware.

queryVersionConfig

Consulta la configuración de la versión del clúster de usuario de VMware.