REST Resource: projects.locations.vmwareAdminClusters

Recurso: VmwareAdminCluster

Recurso que representa um cluster de administrador do VMware.

Representação JSON
{
  "name": string,
  "description": string,
  "uid": string,
  "etag": string,
  "createTime": string,
  "updateTime": string,
  "annotations": {
    string: string,
    ...
  },
  "state": enum (State),
  "endpoint": string,
  "reconciling": boolean,
  "localName": string,
  "bootstrapClusterMembership": string,
  "onPremVersion": string,
  "fleet": {
    object (Fleet)
  },
  "imageType": string,
  "vcenter": {
    object (VmwareAdminVCenterConfig)
  },
  "networkConfig": {
    object (VmwareAdminNetworkConfig)
  },
  "loadBalancer": {
    object (VmwareAdminLoadBalancerConfig)
  },
  "controlPlaneNode": {
    object (VmwareAdminControlPlaneNodeConfig)
  },
  "addonNode": {
    object (VmwareAdminAddonNodeConfig)
  },
  "antiAffinityGroups": {
    object (VmwareAAGConfig)
  },
  "autoRepairConfig": {
    object (VmwareAutoRepairConfig)
  },
  "status": {
    object (ResourceStatus)
  },
  "platformConfig": {
    object (VmwarePlatformConfig)
  },
  "preparedSecrets": {
    object (VmwareAdminPreparedSecretsConfig)
  },
  "authorization": {
    object (VmwareAdminAuthorizationConfig)
  },
  "validationCheck": {
    object (ValidationCheck)
  },
  "privateRegistryConfig": {
    object (VmwareAdminPrivateRegistryConfig)
  },
  "enableAdvancedCluster": boolean
}
Campos
name

string

Imutável. O nome do recurso do cluster de administrador do VMware.

description

string

Uma descrição legível deste cluster de administrador do VMware.

uid

string

Apenas saída. O identificador exclusivo do cluster de administrador do VMware.

etag

string

Esta soma de verificação é calculada pelo servidor com base no valor de outros campos e pode ser enviada em pedidos de atualização e eliminação para garantir que o cliente tem um valor atualizado antes de continuar. Permite que os clientes façam leituras-modificações-escritas consistentes através do controlo de concorrência otimista.

createTime

string (Timestamp format)

Apenas saída. A hora em que o cluster de administrador do VMware foi criado.

Usa RFC 3339, em que o resultado gerado é sempre normalizado em Z e usa 0, 3, 6 ou 9 dígitos fracionários. Também são aceites desvios diferentes de "Z". Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Apenas saída. A hora em que o cluster de administrador do VMware foi atualizado pela última vez.

Usa RFC 3339, em que o resultado gerado é sempre normalizado em Z e usa 0, 3, 6 ou 9 dígitos fracionários. Também são aceites desvios diferentes de "Z". Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

annotations

map (key: string, value: string)

Anotações no cluster de administrador do VMware. Este campo tem as mesmas restrições que as anotações do Kubernetes. O tamanho total de todas as chaves e valores combinados está limitado a 256 KB. A chave pode ter 2 segmentos: prefixo (opcional) e nome (obrigatório), separados por uma barra (/). O prefixo tem de ser um subdomínio DNS. O nome tem de ter 63 carateres ou menos, começar e terminar com carateres alfanuméricos, com traços (-), sublinhados (_), pontos (.) e carateres alfanuméricos entre eles.

Um objeto que contém uma lista de pares "key": value. Exemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

state

enum (State)

Apenas saída. O estado atual do cluster de administrador do VMware.

endpoint

string

Apenas saída. O nome DNS do servidor API do cluster de administração do VMware.

reconciling

boolean

Apenas saída. Se estiver definido, existem atualmente alterações em curso no cluster de administrador do VMware.

localName

string

Apenas saída. O nome do objeto do recurso personalizado VMware OnPremAdminCluster. Este campo é usado para suportar nomes em conflito quando inscreve clusters existentes na API. Quando usado como parte da inscrição no cluster, este campo difere do ID no nome do recurso. Para novos clusters, este campo vai corresponder ao nome do cluster fornecido pelo utilizador e vai estar visível no último componente do nome do recurso. Não é modificável.

Todos os utilizadores devem usar este nome para aceder ao respetivo cluster através de gkectl ou kubectl e devem esperar ver o nome local quando visualizam os registos do controlador do cluster de administrador.

bootstrapClusterMembership

string

O cluster de arranque ao qual este cluster de administrador do VMware pertence.

onPremVersion

string

A versão do Anthos clusters on VMware para o cluster de administrador.

fleet

object (Fleet)

Apenas saída. Configuração da frota para o cluster.

imageType

string

O tipo de imagem do SO para o cluster de administrador do VMware.

vcenter

object (VmwareAdminVCenterConfig)

A configuração do VCenter do cluster de administração do VMware.

networkConfig

object (VmwareAdminNetworkConfig)

A configuração de rede do cluster de administrador do VMware.

loadBalancer

object (VmwareAdminLoadBalancerConfig)

A configuração do balanceador de carga do cluster de administrador do VMware.

controlPlaneNode

object (VmwareAdminControlPlaneNodeConfig)

A configuração do nó do plano de controlo do cluster de administrador do VMware.

addonNode

object (VmwareAdminAddonNodeConfig)

A configuração do nó do suplemento do cluster de administrador do VMware.

antiAffinityGroups

object (VmwareAAGConfig)

A configuração do grupo de antiafinidade do cluster de administrador do VMware.

autoRepairConfig

object (VmwareAutoRepairConfig)

A configuração de reparação automática do cluster de administrador do VMware.

status

object (ResourceStatus)

Apenas saída. ResourceStatus que representa o estado detalhado do cluster.

platformConfig

object (VmwarePlatformConfig)

A configuração da plataforma VMware.

preparedSecrets

object (VmwareAdminPreparedSecretsConfig)

Apenas saída. O cluster de administrador do VMware preparou a configuração de segredos. Deve ser sempre ativada pela API Central, em vez de permitir que os utilizadores a definam.

authorization

object (VmwareAdminAuthorizationConfig)

A configuração de autorização do cluster de administrador do VMware.

validationCheck

object (ValidationCheck)

Apenas saída. ValidationCheck representa o resultado da tarefa de verificação prévia.

privateRegistryConfig

object (VmwareAdminPrivateRegistryConfig)

Configuração para o registo.

enableAdvancedCluster

boolean

Ative o cluster avançado.

Estado

O estado do ciclo de vida do cluster de administrador do VMware.

Enumerações
STATE_UNSPECIFIED Não definido.
PROVISIONING O estado PROVISIONING indica que o cluster está a ser criado.
RUNNING O estado RUNNING indica que o cluster foi criado e está totalmente utilizável.
RECONCILING O estado RECONCILING indica que o cluster está a ser atualizado. Continua disponível, mas potencialmente com um desempenho inferior.
STOPPING O estado STOPPING indica que o cluster está a ser eliminado.
ERROR O estado ERROR indica que o cluster está num estado danificado irrecuperável.
DEGRADED O estado DEGRADED indica que o cluster requer a ação do utilizador para restaurar a funcionalidade completa.

VmwareAdminVCenterConfig

VmwareAdminVCenterConfig contém a configuração do VCenter para o cluster de administrador do VMware.

Representação JSON
{
  "resourcePool": string,
  "datastore": string,
  "datacenter": string,
  "cluster": string,
  "folder": string,
  "caCertData": string,
  "address": string,
  "dataDisk": string,
  "storagePolicyName": string
}
Campos
resourcePool

string

O nome do conjunto de recursos do vCenter para o cluster de administrador.

datastore

string

O nome do banco de dados do vCenter para o cluster de administrador.

datacenter

string

O nome do centro de dados do vCenter para o cluster de administrador.

cluster

string

O nome do cluster do vCenter para o cluster de administrador.

folder

string

O nome da pasta do vCenter para o cluster de administrador.

caCertData

string

Contém a chave pública do certificado da AC do vCenter para validação SSL.

address

string

O endereço IP do vCenter.

dataDisk

string

O nome do disco da máquina virtual (VMDK) para o cluster de administrador.

storagePolicyName

string

O nome da política de armazenamento do vCenter para o cluster de utilizadores.

VmwareAdminNetworkConfig

VmwareAdminNetworkConfig contém a configuração de rede para o cluster de administração do VMware.

Representação JSON
{
  "serviceAddressCidrBlocks": [
    string
  ],
  "podAddressCidrBlocks": [
    string
  ],
  "vcenterNetwork": string,
  "hostConfig": {
    object (VmwareHostConfig)
  },
  "haControlPlaneConfig": {
    object (VmwareAdminHAControlPlaneConfig)
  },

  // 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

Obrigatório. Todos os serviços no cluster têm um endereço IPv4 RFC1918 atribuído a partir destes intervalos. Só é suportado um intervalo. Não é possível alterar este campo após a criação.

podAddressCidrBlocks[]

string

Obrigatório. Todos os pods no cluster têm um endereço IPv4 RFC1918 atribuído a partir destes intervalos. Só é suportado um intervalo. Não é possível alterar este campo após a criação.

vcenterNetwork

string

vcenterNetwork especifica o nome da rede do vCenter.

hostConfig

object (VmwareHostConfig)

Representa as definições de rede comuns, independentemente do endereço IP do anfitrião.

haControlPlaneConfig

object (VmwareAdminHAControlPlaneConfig)

Configuração do plano de controlo do cluster de administrador de HA.

Campo de união ip_configuration. O tipo de configuração de IP usado pelo cluster de administrador do VMware. ip_configuration só pode ser uma das seguintes opções:
staticIpConfig

object (VmwareStaticIpConfig)

Definições de configuração para uma configuração de IP estático.

dhcpIpConfig

object (VmwareDhcpIpConfig)

Definições de configuração para uma configuração de IP de DHCP.

VmwareAdminHAControlPlaneConfig

Especifica a configuração do plano de controlo do administrador de HA.

Representação JSON
{
  "controlPlaneIpBlock": {
    object (VmwareIpBlock)
  }
}
Campos
controlPlaneIpBlock

object (VmwareIpBlock)

Endereços IP estáticos para os nós do plano de controlo de administração.

VmwareAdminLoadBalancerConfig

VmwareAdminLoadBalancerConfig contém a configuração do equilibrador de carga para o cluster de administração do VMware.

Representação JSON
{
  "vipConfig": {
    object (VmwareAdminVipConfig)
  },

  // Union field load_balancer_configuration can be only one of the following:
  "f5Config": {
    object (VmwareAdminF5BigIpConfig)
  },
  "manualLbConfig": {
    object (VmwareAdminManualLbConfig)
  },
  "metalLbConfig": {
    object (VmwareAdminMetalLbConfig)
  },
  "seesawConfig": {
    object (VmwareAdminSeesawConfig)
  }
  // End of list of possible types for union field load_balancer_configuration.
}
Campos
vipConfig

object (VmwareAdminVipConfig)

Os IPs virtuais usados pelo balanceador de carga.

Campo de união load_balancer_configuration. A configuração do equilibrador de carga a ser usada no cluster de administração do VMware. load_balancer_configuration só pode ser uma das seguintes opções:
f5Config

object (VmwareAdminF5BigIpConfig)

Configuração para equilibradores de carga introduzidos do F5 Big IP.

manualLbConfig

object (VmwareAdminManualLbConfig)

Balanceadores de carga configurados manualmente.

metalLbConfig

object (VmwareAdminMetalLbConfig)

Balanceadores de carga do MetalLB.

seesawConfig

object (VmwareAdminSeesawConfig)

Apenas saída. Configuração para equilibradores de carga introduzidos no Seesaw.

VmwareAdminVipConfig

VmwareAdminVipConfig para configurações do equilibrador de carga do VMware.

Representação JSON
{
  "controlPlaneVip": string,
  "addonsVip": string
}
Campos
controlPlaneVip

string

O VIP que reservou anteriormente para a API Kubernetes do cluster de administrador.

addonsVip

string

O VIP para configurar o balanceador de carga para suplementos.

VmwareAdminF5BigIpConfig

VmwareAdminF5BigIpConfig representa os parâmetros de configuração de um equilibrador de carga F5 BIG-IP.

Representação JSON
{
  "address": string,
  "partition": string,
  "snatPool": string
}
Campos
address

string

O endereço IP do equilibrador de carga.

partition

string

A partição preexistente a ser usada pelo balanceador de carga. Normalmente, esta partição é criada para o cluster de administração, por exemplo: "my-f5-admin-partition".

snatPool

string

O nome do conjunto. Só é necessário se usar SNAT.

VmwareAdminManualLbConfig

Representação JSON
{
  "ingressHttpNodePort": integer,
  "ingressHttpsNodePort": integer,
  "controlPlaneNodePort": integer,
  "konnectivityServerNodePort": integer,
  "addonsNodePort": integer
}
Campos
ingressHttpNodePort

integer

NodePort para o http do serviço de entrada O serviço de entrada no cluster de administrador é implementado como um serviço do tipo NodePort (por exemplo, 32527).

ingressHttpsNodePort

integer

NodePort para o HTTPS do serviço de entrada. O serviço de entrada no cluster de administrador é implementado como um serviço do tipo NodePort (por exemplo, 30139).

controlPlaneNodePort

integer

NodePort para o serviço do plano de controlo. O servidor da API Kubernetes no cluster de administrador é implementado como um serviço do tipo NodePort (por exemplo, 30968).

konnectivityServerNodePort

integer

NodePort para o serviço do servidor de conetividade em execução como um sidecar em cada pod kube-apiserver (por exemplo, 30564).

addonsNodePort

integer

NodePort para o servidor de suplementos no cluster de administração.

VmwareAdminMetalLbConfig

VmwareAdminMetalLbConfig representa os parâmetros de configuração de um equilibrador de carga do MetalLB. Para clusters de administração, atualmente não são necessárias configurações.

Representação JSON
{
  "enabled": boolean
}
Campos
enabled

boolean

Se o MetalLB está ativado.

VmwareAdminSeesawConfig

VmwareSeesawConfig representa os parâmetros de configuração de um balanceador de carga do Seesaw já existente.

IMPORTANTE: tenha em atenção que a API Anthos On-Prem não gera nem atualiza as configurações do Seesaw. Só pode associar uma configuração pré-existente a um novo cluster de utilizadores.

IMPORTANTE: quando tentar criar um cluster de utilizadores com um equilibrador de carga do Seesaw pré-existente, tem de seguir alguns passos de preparação antes de chamar o método da API "vmwareClusters.create". Primeiro, tem de criar o espaço de nomes do cluster de utilizadores através do kubectl. O espaço de nomes tem de usar a seguinte convenção de nomenclatura : -gke-onprem-mgmt ou -gke-onprem-mgmt, consoante tenha usado "VmwareCluster.local_name" para desambiguar colisões. Para mais contexto, consulte a documentação de "VmwareCluster.local_name". Depois de criar o espaço de nomes, tem de criar um recurso secreto através do kubectl. Este segredo vai conter cópias das suas credenciais do Seesaw. O segredo tem de se chamar "user-cluster-creds" e conter as credenciais de SSH e de certificado do Seesaw. As credenciais têm de ser introduzidas com os seguintes nomes: "seesaw-ssh-private-key", "seesaw-ssh-public-key", "seesaw-ssh-ca-key", "seesaw-ssh-ca-cert".

Representação JSON
{
  "group": string,
  "masterIp": string,
  "ipBlocks": [
    {
      object (VmwareIpBlock)
    }
  ],
  "enableHa": boolean,
  "vms": [
    string
  ],
  "stackdriverName": string
}
Campos
group

string

Em geral, deve usar o seguinte formato para o nome do grupo Seesaw: seesaw-for-[clusterName].

masterIp

string

O MasterIP é o IP anunciado pelo mestre do grupo Seesaw.

ipBlocks[]

object (VmwareIpBlock)

Os blocos de IP a serem usados pelo balanceador de carga do Seesaw

enableHa

boolean

Ative duas VMs do balanceador de carga para alcançar um balanceador de carga do Seesaw de alta disponibilidade.

vms[]

string

Nomes das VMs criadas para este grupo do Seesaw.

stackdriverName

string

Nome a ser usado pelo Stackdriver.

VmwareAdminControlPlaneNodeConfig

VmwareAdminControlPlaneNodeConfig contém a configuração do nó do plano de controlo para o cluster de administrador do VMware.

Representação JSON
{
  "cpus": string,
  "memory": string,
  "replicas": string
}
Campos
cpus

string (int64 format)

O número de vCPUs para o nó do plano de controlo do cluster de administrador.

memory

string (int64 format)

O número de mebibytes de memória para o nó do plano de controlo do cluster de administrador.

replicas

string (int64 format)

O número de nós do plano de controlo para este cluster de administrador do VMware. (predefinição: 1 réplica).

VmwareAdminAddonNodeConfig

VmwareAdminAddonNodeConfig contém configurações de nós de suplementos para o cluster de administrador do VMware.

Representação JSON
{
  "autoResizeConfig": {
    object (VmwareAutoResizeConfig)
  }
}
Campos
autoResizeConfig

object (VmwareAutoResizeConfig)

A configuração VmwareAutoResizeConfig especifica a configuração de redimensionamento automático.

VmwarePlatformConfig

VmwarePlatformConfig representa a configuração para a plataforma VMware.

Representação JSON
{
  "requiredPlatformVersion": string,
  "platformVersion": string,
  "bundles": [
    {
      object (VmwareBundleConfig)
    }
  ],
  "status": {
    object (ResourceStatus)
  }
}
Campos
requiredPlatformVersion

string

Apenas entrada. A versão da plataforma necessária, por exemplo, 1.13.1. Se a versão atual da plataforma for inferior à versão de destino, a versão da plataforma é atualizada para a versão de destino. Se a versão de destino não estiver instalada na plataforma (versões do pacote), transfira o pacote da versão de destino.

platformVersion

string

Apenas saída. A versão da plataforma, por exemplo, 1.13.2.

bundles[]

object (VmwareBundleConfig)

Apenas saída. A lista de pacotes instalados no cluster de administração.

status

object (ResourceStatus)

Apenas saída. Estado do recurso para a plataforma.

VmwareBundleConfig

VmwareBundleConfig representa a configuração do pacote.

Representação JSON
{
  "version": string,
  "status": {
    object (ResourceStatus)
  }
}
Campos
version

string

A versão do pacote.

status

object (ResourceStatus)

Apenas saída. Estado do recurso para o pacote.

VmwareAdminPreparedSecretsConfig

VmwareAdminPreparedSecretsConfig representa a configuração para segredos preparados do cluster de administrador.

Representação JSON
{
  "enabled": boolean
}
Campos
enabled

boolean

Se os segredos preparados estão ativados.

VmwareAdminAuthorizationConfig

VmwareAdminAuthorizationConfig representa a configuração para a autorização do cluster de administrador.

Representação JSON
{
  "viewerUsers": [
    {
      object (ClusterUser)
    }
  ]
}
Campos
viewerUsers[]

object (ClusterUser)

Para clusters de administrador do VMware, os utilizadores recebem a função cluster-viewer no cluster.

VmwareAdminPrivateRegistryConfig

VmwareAdminPrivateRegistryConfig representa a configuração do registo do cluster de administrador.

Representação JSON
{
  "address": string,
  "caCert": string
}
Campos
address

string

A morada de registo.

caCert

string

Quando o tempo de execução do contentor extrai uma imagem do registo privado, o registo tem de comprovar a sua identidade apresentando um certificado. O certificado do registo é assinado por uma autoridade de certificação (AC). O tempo de execução do contentor usa o certificado da AC para validar o certificado do registo.

Métodos

create

Cria um novo cluster de administrador do VMware num determinado projeto e localização.

enroll

Inscreve um cluster de administrador do VMware existente na API Anthos On-Prem num determinado projeto e localização.

get

Obtém detalhes de um único cluster de administrador do VMware.

list

Apresenta os clusters de administrador do VMware num determinado projeto e localização.

patch

Atualiza os parâmetros de um único cluster de administrador do VMware.