REST Resource: projects.locations.awsClusters

Recurso: AwsCluster

Un clúster Anthos ejecutándose en AWS.

Representación JSON
{
  "name": string,
  "description": string,
  "networking": {
    object (AwsClusterNetworking)
  },
  "awsRegion": string,
  "controlPlane": {
    object (AwsControlPlane)
  },
  "authorization": {
    object (AwsAuthorization)
  },
  "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)
  },
  "loggingConfig": {
    object (LoggingConfig)
  },
  "errors": [
    {
      object (AwsClusterError)
    }
  ],
  "monitoringConfig": {
    object (MonitoringConfig)
  },
  "binaryAuthorization": {
    object (BinaryAuthorization)
  }
}
Campos
name

string

El nombre de este recurso.

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

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

description

string

Opcional. Una descripción legible de este clúster. No puede tener más de 255 bytes codificados en UTF-8.

networking

object ( AwsClusterNetworking )

Obligatorio. Configuración de red para todo el clúster.

aws Region

string

Obligatorio. La región de AWS donde se ejecuta el clúster.

Cada región de Google Cloud admite un subconjunto de regiones de AWS cercanas. Puedes usar locations.getAwsServerConfig para obtener una lista de todas las regiones de AWS compatibles dentro de una región de Google Cloud determinada.

control Plane

object ( AwsControlPlane )

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

authorization

object ( AwsAuthorization )

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

state

enum ( State )

Solo salida. El estado actual del clúster.

endpoint

string

Solo salida. El punto final del servidor API del clúster.

uid

string

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

reconciling

boolean

Solo salida. Si se configura, hay cambios en curso en el clúster.

create Time

string ( Timestamp format)

Solo salida. Hora de creación del clúster.

Utiliza la RFC 3339, donde la salida generada siempre se normalizará en Z y usará 0, 3, 6 o 9 dígitos fraccionarios. También se aceptan desplazamientos distintos de "Z". Ejemplos: "2014-10-02T15:01:23Z" , "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30" .

update Time

string ( Timestamp format)

Solo salida. Hora de la última actualización de este clúster.

Utiliza la RFC 3339, donde la salida generada siempre se normalizará en Z y usará 0, 3, 6 o 9 dígitos fraccionarios. También se aceptan desplazamientos distintos de "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 lecturas, modificaciones y escrituras consistentes a través de un control de concurrencia optimista.

Se puede enviar en 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 está limitado a 256k. La clave puede tener dos 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, empezar y terminar con caracteres alfanuméricos, con guiones (-), guiones bajos (_), puntos (.) y caracteres alfanuméricos entre ellos.

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

workload Identity Config

object ( WorkloadIdentityConfig )

Solo salida. Configuración de identidad de la carga de trabajo.

cluster Ca Certificate

string

Solo salida. Certificado x509 codificado PEM de la raíz del clúster de confianza.

fleet

object ( Fleet )

Obligatorio. Configuración de flota.

logging Config

object ( LoggingConfig )

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

errors[]

object ( AwsClusterError )

Solo salida. Se encontró un conjunto de errores en el clúster.

monitoring Config

object ( MonitoringConfig )

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

binary Authorization

object ( BinaryAuthorization )

Opcional. Configuración de autorización binaria para este clúster.

Redes de clústeres de AWS

ClusterNetworking define la configuración de red de todo el clúster.

Los clústeres de Anthos en AWS se ejecutan en una sola VPC. Esto incluye réplicas del plano de control y nodos del grupo de nodos.

Representación JSON
{
  "vpcId": string,
  "podAddressCidrBlocks": [
    string
  ],
  "serviceAddressCidrBlocks": [
    string
  ],
  "perNodePoolSgRulesDisabled": boolean
}
Campos
vpc Id

string

Obligatorio. La VPC asociada al clúster. Todos los clústeres de componentes (es decir, el plano de control y los grupos de nodos) se ejecutan en una sola VPC.

Este campo no se puede cambiar después de su creación.

pod Address Cidr Blocks[]

string

Obligatorio. A todos los pods del clúster se les asigna una dirección IPv4 de estos rangos. Solo se admite un rango. Este campo no se puede modificar después de su creación.

service Address Cidr Blocks[]

string

Obligatorio. A todos los servicios del clúster se les asigna una dirección IPv4 de estos rangos. Solo se admite un rango. Este campo no se puede modificar después de su creación.

per Node Pool Sg Rules Disabled

boolean

Opcional. Desactive las reglas de grupo de seguridad de subred por grupo de nodos en el grupo de seguridad del plano de control. Si se establece como "true", también debe proporcionar uno o más grupos de seguridad que garanticen que los grupos de nodos puedan enviar solicitudes al plano de control en TCP/443 y TCP/8132. De lo contrario, los grupos de nodos podrían no estar disponibles.

Plano de control de AWS

ControlPlane define parámetros comunes entre los nodos del plano de control.

Representación JSON
{
  "version": string,
  "instanceType": string,
  "sshConfig": {
    object (AwsSshConfig)
  },
  "subnetIds": [
    string
  ],
  "securityGroupIds": [
    string
  ],
  "iamInstanceProfile": string,
  "rootVolume": {
    object (AwsVolumeTemplate)
  },
  "mainVolume": {
    object (AwsVolumeTemplate)
  },
  "databaseEncryption": {
    object (AwsDatabaseEncryption)
  },
  "tags": {
    string: string,
    ...
  },
  "awsServicesAuthentication": {
    object (AwsServicesAuthentication)
  },
  "proxyConfig": {
    object (AwsProxyConfig)
  },
  "configEncryption": {
    object (AwsConfigEncryption)
  },
  "instancePlacement": {
    object (AwsInstancePlacement)
  }
}
Campos
version

string

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

Puede enumerar todas las versiones compatibles en una región determinada de Google Cloud llamando locations.getAwsServerConfig .

instance Type

string

Opcional. El tipo de instancia de AWS.

Cuando no se especifica, se utiliza un valor predeterminado basado en la versión del clúster.

ssh Config

object ( AwsSshConfig )

Opcional. Configuración de SSH para saber cómo acceder a las máquinas del plano de control subyacente.

subnet Ids[]

string

Obligatorio. La lista de subredes donde se ejecutarán las réplicas del plano de control. Se aprovisionará una réplica en cada subred y se pueden proporcionar hasta tres valores. Cada subred debe estar en una zona de disponibilidad (AZ) de AWS diferente.

security Group Ids[]

string

Opcional. Los ID de los grupos de seguridad adicionales que se añadirán a las réplicas del plano de control. La API de Anthos Multi-Cloud creará y administrará automáticamente los grupos de seguridad con las reglas mínimas necesarias para un clúster en funcionamiento.

iam Instance Profile

string

Obligatorio. El nombre o ARN del perfil de instancia de AWS IAM que se asignará a cada réplica del plano de control.

root Volume

object ( AwsVolumeTemplate )

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

Los volúmenes se aprovisionarán en la zona de disponibilidad asociada con la subred correspondiente.

Cuando no se especifica, el valor predeterminado es 32 GiB con el tipo de volumen GP2.

main Volume

object ( AwsVolumeTemplate )

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.

Los volúmenes se aprovisionarán en la zona de disponibilidad asociada con la subred correspondiente.

Cuando no se especifica, el valor predeterminado es 8 GiB con el tipo de volumen GP2.

database Encryption

object ( AwsDatabaseEncryption )

Obligatorio. El ARN de la clave AWS KMS utilizada para cifrar los secretos del clúster.

tags

map (key: string, value: string)

Opcional. Un conjunto de etiquetas de recursos de AWS para propagarse a todos los recursos administrados subyacentes de AWS.

Especifique un máximo de 50 pares de caracteres alfanuméricos, espacios y símbolos (.+-=_:@/). Las claves pueden tener hasta 127 caracteres Unicode. Los valores pueden tener hasta 255 caracteres Unicode.

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

aws Services Authentication

object ( AwsServicesAuthentication )

Obligatorio. Configuración de autenticación para la gestión de recursos de AWS.

proxy Config

object ( AwsProxyConfig )

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

config Encryption

object ( AwsConfigEncryption )

Obligatorio. Configurar el cifrado para los datos del usuario.

instance Placement

object ( AwsInstancePlacement )

Opcional. La ubicación que se usará en las instancias del plano de control. Si no se especifica, se usará la tenencia predeterminada de la VPC.

Cifrado de bases de datos de AWS

Configuración relacionada con el cifrado de secretos de la capa de aplicación.

Representación JSON
{
  "kmsKeyArn": string
}
Campos
kms Key Arn

string

Obligatorio. El ARN de la clave AWS KMS utilizada para cifrar los secretos del clúster.

Autenticación de servicios de AWS

Configuración de autenticación para la gestión de recursos de AWS.

Representación JSON
{
  "roleArn": string,
  "roleSessionName": string
}
Campos
role Arn

string

Obligatorio. El nombre de recurso de Amazon (ARN) del rol que asumirá la API de Anthos Multi-Cloud al administrar los recursos de AWS en su cuenta.

role Session Name

string

Opcional. Un identificador para la sesión de rol asumida.

Cuando no se especifica, el valor predeterminado es multicloud-service-agent .

Autorización de AWS

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

Representación JSON
{
  "adminUsers": [
    {
      object (AwsClusterUser)
    }
  ],
  "adminGroups": [
    {
      object (AwsClusterGroup)
    }
  ]
}
Campos
admin Users[]

object ( AwsClusterUser )

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

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

admin Groups[]

object ( AwsClusterGroup )

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

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

Usuario de AWS Cluster

Identidades de un sujeto de tipo usuario para clústeres de AWS.

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

string

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

Grupo de clústeres de AWS

Identidades de un sujeto de tipo grupo para clústeres de AWS.

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

string

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

Estado

El estado del ciclo de vida del clúster.

Enumeraciones
STATE_UNSPECIFIED No establecido.
PROVISIONING El estado PROVISIONING indica que se está creando el clúster.
RUNNING El estado EN EJECUCIÓN indica que el clúster se ha creado y es completamente utilizable.
RECONCILING El estado RECONCILING indica que se está realizando algún trabajo de forma activa en el clúster, como la actualización de las réplicas del plano de control.
STOPPING El estado DETENCIÓN indica que se está eliminando el clúster.
ERROR El estado ERROR indica que el clúster se encuentra en un estado dañado e irrecuperable.
DEGRADED El estado DEGRADADO indica que el clúster requiere la acción del usuario para restaurar la funcionalidad completa.

Error de clúster de AWS

AwsClusterError describe los errores encontrados en los clústeres de AWS.

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

string

Descripción del error, entendible para los humanos.

Métodos

create

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

delete

Elimina un recurso AwsCluster específico.

generate Aws Access Token

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

generate Aws Cluster Agent Token

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

get

Describe un recurso AwsCluster específico.

get Jwks

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

list

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

patch

Actualiza un AwsCluster .