REST Resource: projects.locations.azureClusters

Recurso: AzureCluster

Un clúster de Anthos que se ejecuta en Azure.

Representación JSON
{
  "name": string,
  "description": string,
  "azureRegion": string,
  "resourceGroupId": string,
  "azureClient": string,
  "networking": {
    object (AzureClusterNetworking)
  },
  "controlPlane": {
    object (AzureControlPlane)
  },
  "authorization": {
    object (AzureAuthorization)
  },
  "azureServicesAuthentication": {
    object (AzureServicesAuthentication)
  },
  "state": enum (State),
  "endpoint": string,
  "uid": string,
  "reconciling": boolean,
  "createTime": string,
  "updateTime": string,
  "etag": string,
  "annotations": {
    string: string,
    ...
  },
  "workloadIdentityConfig": {
    object (WorkloadIdentityConfig)
  },
  "clusterCaCertificate": string,
  "fleet": {
    object (Fleet)
  },
  "managedResources": {
    object (AzureClusterResources)
  },
  "loggingConfig": {
    object (LoggingConfig)
  },
  "errors": [
    {
      object (AzureClusterError)
    }
  ],
  "monitoringConfig": {
    object (MonitoringConfig)
  }
}
Campos
name

string

El nombre de este recurso.

Los nombres de los clústeres tienen el formato projects/<project-number>/locations/<region>/azureClusters/<cluster-id>.

Consulte Nombres de recursos para obtener más detalles sobre los nombres de recursos de Google Cloud Platform.

description

string

Opcional. Una descripción legible por humanos de este clúster. No puedes tener más de 255 bytes con codificación UTF-8.

azureRegion

string

Obligatorio. La región de AWS en la que se ejecuta el clúster

Cada región de Google Cloud admite un subconjunto de regiones de Azure cercanas. Puedes llamar a locations.getAzureServerConfig para obtener una lista de todas las regiones de Azure compatibles dentro de una región de Google Cloud determinada.

resourceGroupId

string

Obligatorio. Es el ID de ARM del grupo de recursos en el que se implementan los recursos del clúster. Por ejemplo: /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>

azureClient

string

Opcional. Nombre de la AzureClient que contiene la configuración de autenticación para saber cómo se conecta la API de Multi-Cloud de Anthos a las APIs de Azure.

Se debe proporcionar azureClient o azureServicesAuthentication.

El recurso AzureClient debe residir en el mismo proyecto y región de Google Cloud Platform que el AzureCluster.

Los nombres AzureClient tienen el formato projects/<project-number>/locations/<region>/azureClients/<client-id>.

Consulta Nombres de recursos para obtener más detalles sobre los nombres de recursos de Google Cloud.

networking

object (AzureClusterNetworking)

Obligatorio. Configuración de herramientas de redes de todo el clúster.

controlPlane

object (AzureControlPlane)

Obligatorio. Configuración relacionada con el plano de control del clúster.

authorization

object (AzureAuthorization)

Obligatorio. Configuración relacionada con la configuración de RBAC del clúster.

azureServicesAuthentication

object (AzureServicesAuthentication)

Opcional. Configuración de autenticación para la administración de recursos de Azure.

Se debe proporcionar azureClient o azureServicesAuthentication.

state

enum (State)

Solo salida. El estado actual del clúster.

endpoint

string

Solo salida. El extremo del servidor de API del clúster.

uid

string

Solo salida. Un identificador global único para el clúster.

reconciling

boolean

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

createTime

string (Timestamp format)

Solo salida. El momento en el que se creó este clúster.

Usa el formato RFC 3339, en el que el resultado generado siempre estará normalizada a Z y usa 0, 3, 6 o 9 dígitos fraccionarios. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: "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ó este clúster por última vez.

Usa el formato RFC 3339, en el que el resultado generado siempre estará normalizada a Z y usa 0, 3, 6 o 9 dígitos fraccionarios. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

etag

string

Permite a los clientes realizar operaciones de lectura, modificación y escritura coherentes a través del control de simultaneidad optimista.

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.

annotations

map (key: string, value: string)

Opcional. Anotaciones en el clúster.

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 256k. Las claves pueden tener 2 segmentos: prefijo (opcional) y nombre (obligatorio), separados por una barra (/). 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" }.

workloadIdentityConfig

object (WorkloadIdentityConfig)

Solo salida. Configuración de Workload Identity.

clusterCaCertificate

string

Solo salida. Certificado x509 con codificación PEM de la raíz de confianza del clúster.

fleet

object (Fleet)

Obligatorio. Configuración de la flota.

managedResources

object (AzureClusterResources)

Solo salida. Son los recursos de Azure administrados para este clúster.

loggingConfig

object (LoggingConfig)

Opcional. Configuración de registro para este clúster.

errors[]

object (AzureClusterError)

Solo salida. Un conjunto de errores encontrados en el clúster.

monitoringConfig

object (MonitoringConfig)

Opcional. Configuración de supervisión para este clúster.

AzureClusterNetworking

ClusterNetworking contiene la configuración de herramientas de redes de todo el clúster.

Representación JSON
{
  "virtualNetworkId": string,
  "podAddressCidrBlocks": [
    string
  ],
  "serviceAddressCidrBlocks": [
    string
  ],
  "serviceLoadBalancerSubnetId": string
}
Campos
virtualNetworkId

string

Obligatorio. Es el ID de Azure Resource Manager (ARM) de la VNet asociada con tu clúster.

Todos los componentes del clúster (es decir, el plano de control y los grupos de nodos) se ejecutan en una sola VNet.

Ejemplo: /subscriptions/<subscription-id>/resourceGroups/<resource-group-id>/providers/Microsoft.Network/virtualNetworks/<vnet-id>

No se puede cambiar este campo después de crearlo.

podAddressCidrBlocks[]

string

Obligatorio. Es el rango de direcciones IP de los Pods en este clúster, en notación CIDR (p.ej., 10.96.0.0/14).

A todos los pods del clúster se les asigna una dirección IPv4 única de estos rangos. Solo se admite un rango.

No se puede cambiar este campo después de crearlo.

serviceAddressCidrBlocks[]

string

Obligatorio. Es el rango de direcciones IP para los servicios en este clúster, en notación CIDR (p.ej., 10.96.0.0/14).

A todos los servicios del clúster se les asigna una dirección IPv4 única de estos rangos. Solo se admite un rango.

Este campo no se puede cambiar después de crear un clúster.

serviceLoadBalancerSubnetId

string

Opcional. El ID de ARM de la subred en la que se implementan los balanceadores de cargas de tipo servicio privado de Kubernetes. Cuando no se especifica, el valor predeterminado es AzureControlPlane.subnet_id.

Ejemplo: "/subscriptions/d00494d6-6f3c-4280-bbb2-899e163d1d30/resourceGroups/anthos_cluster_gkeust4/providers/Microsoft.Network/virtualNetworks/gke-vnet-gkeust4/subnets/subnetid456"

AzureControlPlane

AzureControlPlane representa las configuraciones del plano de control.

Representación JSON
{
  "version": string,
  "subnetId": string,
  "vmSize": string,
  "sshConfig": {
    object (AzureSshConfig)
  },
  "rootVolume": {
    object (AzureDiskTemplate)
  },
  "mainVolume": {
    object (AzureDiskTemplate)
  },
  "databaseEncryption": {
    object (AzureDatabaseEncryption)
  },
  "proxyConfig": {
    object (AzureProxyConfig)
  },
  "configEncryption": {
    object (AzureConfigEncryption)
  },
  "tags": {
    string: string,
    ...
  },
  "replicaPlacements": [
    {
      object (ReplicaPlacement)
    }
  ],
  "endpointSubnetId": string
}
Campos
version

string

Obligatorio. Es la versión de Kubernetes que se ejecutará en las réplicas del plano de control (p.ej., 1.19.10-gke.1000).

Puedes enumerar todas las versiones compatibles en una región de Google Cloud determinada por medio de una llamada a locations.getAzureServerConfig.

subnetId

string

Opcional. Es el ID de ARM de la subred predeterminada para el plano de control. Las VMs del plano de control se implementan en esta subred, a menos que se especifique AzureControlPlane.replica_placements. Esta subred también se usará como predeterminada para AzureControlPlane.endpoint_subnet_id si no se especifica AzureControlPlane.endpoint_subnet_id. Del mismo modo, se usará como valor predeterminado para AzureClusterNetworking.service_load_balancer_subnet_id.

Ejemplo: /subscriptions/<subscription-id>/resourceGroups/<resource-group-id>/providers/Microsoft.Network/virtualNetworks/<vnet-id>/subnets/default.

vmSize

string

Opcional. El nombre del tamaño de la VM de Azure. Ejemplo: Standard_DS2_v2.

Para conocer los tamaños de VM disponibles, consulta https://docs.microsoft.com/en-us/azure/virtual-machines/vm-naming-conventions.

Cuando no se especifica, el valor predeterminado es Standard_DS2_v2.

sshConfig

object (AzureSshConfig)

Obligatorio. Configuración SSH sobre cómo acceder a las máquinas del plano de control subyacentes.

rootVolume

object (AzureDiskTemplate)

Opcional. Configuración relacionada con el volumen raíz aprovisionado para cada réplica del plano de control.

Cuando no se especifica, el valor predeterminado es n Azure Disk de 32 GiB.

mainVolume

object (AzureDiskTemplate)

Opcional. Configuración relacionada con el volumen principal aprovisionado para cada réplica del plano de control. El volumen principal se encarga de almacenar todo el estado de etcd del clúster.

Cuando no se especifica, el valor predeterminado es un disco de Azure de 8 GiB.

databaseEncryption

object (AzureDatabaseEncryption)

Opcional. Configuración relacionada con la encriptación de Secrets de la capa de aplicación.

proxyConfig

object (AzureProxyConfig)

Opcional. Configuración de proxy para el tráfico HTTP(S) saliente.

configEncryption

object (AzureConfigEncryption)

Opcional. Configuración relacionada con la encriptación de configuración de VM.

tags

map (key: string, value: string)

Opcional. Es un conjunto de etiquetas que se aplicarán a todos los recursos subyacentes de Azure del plano de control.

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

replicaPlacements[]

object (ReplicaPlacement)

Opcional. Es la configuración para colocar las réplicas del plano de control.

Se pueden especificar hasta tres instancias de ubicación de réplicas. Si se establece replicaPlacements, las instancias de ubicación de réplicas se aplicarán a las tres réplicas del plano de control de la manera más uniforme posible.

endpointSubnetId

string

Opcional. Es el ID de ARM de la subred en la que se implementa el balanceador de cargas del plano de control. Cuando no se especifica, el valor predeterminado es AzureControlPlane.subnet_id.

Ejemplo: "/subscriptions/d00494d6-6f3c-4280-bbb2-899e163d1d30/resourceGroups/anthos_cluster_gkeust4/providers/Microsoft.Network/virtualNetworks/gke-vnet-gkeust4/subnets/subnetid123"

AzureDatabaseEncryption

Configuración relacionada con la encriptación de Secrets de la capa de aplicación.

Los clústeres de Anthos en Azure encriptan tus datos de Kubernetes en reposo en etcd mediante Azure Key Vault.

Representación JSON
{
  "keyId": string
}
Campos
keyId

string

Obligatorio. Es el ID de ARM de la clave de Azure Key Vault para encriptar o desencriptar datos.

Por ejemplo, /subscriptions/<subscription-id>/resourceGroups/<resource-group-id>/providers/Microsoft.KeyVault/vaults/<key-vault-id>/keys/<key-name> Encryption siempre tomará la versión más reciente de la clave, por lo que no se admite una versión específica.

ReplicaPlacement

Es la configuración para la colocación de una réplica del plano de control.

Representación JSON
{
  "subnetId": string,
  "azureAvailabilityZone": string
}
Campos
subnetId

string

Obligatorio. Para una réplica determinada, es el ID de ARM de la subred en la que se implementa la VM del plano de control. Asegúrate de que sea una subred en la red virtual en la configuración del clúster.

azureAvailabilityZone

string

Obligatorio. Zona de disponibilidad de Azure en la que se aprovisionarán la VM del plano de control y el disco de ETCD para una réplica determinada.

AzureAuthorization

Configuración relacionada con la configuración de RBAC del clúster.

Representación JSON
{
  "adminUsers": [
    {
      object (AzureClusterUser)
    }
  ],
  "adminGroups": [
    {
      object (AzureClusterGroup)
    }
  ]
}
Campos
adminUsers[]

object (AzureClusterUser)

Opcional. Usuarios que pueden realizar operaciones como administrador del clúster. Se creará un ClusterRoleBinding administrado para otorgarles a los usuarios el ClusterRole cluster-admin. Se pueden proporcionar hasta diez usuarios administradores.

Para obtener más información sobre RBAC, consulta https://kubernetes.io/docs/reference/access-authn-authz/rbac/#user-facing-roles

adminGroups[]

object (AzureClusterGroup)

Opcional. Grupos de usuarios que pueden realizar operaciones como administrador del clúster. Se creará un ClusterRoleBinding administrado para otorgarles a los grupos el ClusterRole cluster-admin. Se pueden proporcionar hasta diez grupos de usuarios administradores.

Para obtener más información sobre RBAC, consulta https://kubernetes.io/docs/reference/access-authn-authz/rbac/#user-facing-roles

AzureClusterUser

Son las identidades de un sujeto de tipo usuario para los clústeres de Azure.

Representación JSON
{
  "username": string
}
Campos
username

string

Obligatorio. Es el nombre del usuario, p. ej., my-gcp-id@gmail.com.

AzureClusterGroup

Son las identidades de un sujeto de tipo grupo para los clústeres de Azure.

Representación JSON
{
  "group": string
}
Campos
group

string

Obligatorio. El nombre del grupo, p. ej., my-group@domain.com.

AzureServicesAuthentication

Es la configuración de autenticación para la administración de recursos de Azure.

Representación JSON
{
  "tenantId": string,
  "applicationId": string
}
Campos
tenantId

string

Obligatorio. El ID de usuario de Azure Active Directory.

applicationId

string

Obligatorio. El ID de aplicación de Azure Active Directory.

Estado

El estado del ciclo de vida del clúster.

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 hay trabajo en curso de forma activa en el clúster, como una actualización de las réplicas del plano de control.
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 DEGRADADO indica que el clúster requiere una acción del usuario para restablecer la funcionalidad completa.

AzureClusterResources

Son los recursos de Azure administrados para el clúster.

Los valores podrían cambiar y estar vacíos, según el estado del clúster.

Representación JSON
{
  "networkSecurityGroupId": string,
  "controlPlaneApplicationSecurityGroupId": string
}
Campos
networkSecurityGroupId

string

Solo salida. Es el ID de ARM del grupo de seguridad de red del clúster.

controlPlaneApplicationSecurityGroupId

string

Solo salida. El ID de ARM del grupo de seguridad de aplicación del plano de control.

AzureClusterError

AzureClusterError describe los errores encontrados en los clústeres de Azure.

Representación JSON
{
  "message": string
}
Campos
message

string

Descripción sencilla del error.

Métodos

create
(deprecated)

Crea un recurso AzureCluster nuevo en un proyecto y una región de Google Cloud Platform determinados.

delete
(deprecated)

Borra un recurso AzureCluster específico.

generateAzureAccessToken
(deprecated)

Genera un token de acceso de corta duración para autenticarse en un recurso AzureCluster determinado.

generateAzureClusterAgentToken
(deprecated)

Genera un token de acceso para un agente de clúster.

get
(deprecated)

Describe un recurso AzureCluster específico.

getJwks
(deprecated)

Obtiene el componente público de las claves de firma del clúster en formato de clave JSON web.

list
(deprecated)

Enumera todos los recursos AzureCluster en un proyecto y una región de Google Cloud determinados.

patch
(deprecated)

Actualiza un AzureCluster.