REST Resource: projects.locations.attachedClusters

Recurso: AttachedCluster

Um cluster do Anthos em execução na infraestrutura do cliente.

Representação JSON
{
  "name": string,
  "description": string,
  "oidcConfig": {
    object (AttachedOidcConfig)
  },
  "platformVersion": string,
  "distribution": string,
  "clusterRegion": string,
  "fleet": {
    object (Fleet)
  },
  "state": enum (State),
  "uid": string,
  "reconciling": boolean,
  "createTime": string,
  "updateTime": string,
  "etag": string,
  "kubernetesVersion": string,
  "annotations": {
    string: string,
    ...
  },
  "workloadIdentityConfig": {
    object (WorkloadIdentityConfig)
  },
  "loggingConfig": {
    object (LoggingConfig)
  },
  "errors": [
    {
      object (AttachedClusterError)
    }
  ],
  "authorization": {
    object (AttachedClustersAuthorization)
  },
  "monitoringConfig": {
    object (MonitoringConfig)
  },
  "proxyConfig": {
    object (AttachedProxyConfig)
  },
  "binaryAuthorization": {
    object (BinaryAuthorization)
  },
  "securityPostureConfig": {
    object (SecurityPostureConfig)
  },
  "tags": {
    string: string,
    ...
  },
  "systemComponentsConfig": {
    object (SystemComponentsConfig)
  }
}
Campos
name

string

O nome deste recurso.

Os nomes dos clusters estão formatados como projects/<project-number>/locations/<region>/attachedClusters/<cluster-id>.

Consulte Nomes de recursos para ver mais detalhes sobre os nomes de recursos da Google Cloud Platform.

description

string

Opcional. Uma descrição legível deste cluster. Não pode ter mais de 255 bytes codificados em UTF-8.

oidcConfig

object (AttachedOidcConfig)

Obrigatório. Configuração do OpenID Connect (OIDC) para o cluster.

platformVersion

string

Obrigatório. A versão da plataforma para o cluster (por exemplo, 1.19.0-gke.1000).

Pode listar todas as versões suportadas numa determinada região do Google Cloud chamando locations.getAttachedServerConfig.

distribution

string

Obrigatório. A distribuição do Kubernetes do cluster anexado subjacente.

Valores suportados: ["eks", "aks", "generic"].

clusterRegion

string

Apenas saída. A região onde este cluster é executado.

Para clusters do EKS, trata-se de uma região da AWS. Para clusters do AKS, trata-se de uma região do Azure.

fleet

object (Fleet)

Obrigatório. Configuração da frota.

state

enum (State)

Apenas saída. O estado atual do cluster.

uid

string

Apenas saída. Um identificador global exclusivo do cluster.

reconciling

boolean

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

createTime

string (Timestamp format)

Apenas saída. A hora em que este cluster foi registado.

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 este cluster 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".

etag

string

Permite que os clientes façam leituras-modificações-escritas consistentes através do controlo de concorrência otimista.

Pode ser enviado em pedidos de atualização e eliminação para garantir que o cliente tem um valor atualizado antes de continuar.

kubernetesVersion

string

Apenas saída. A versão do Kubernetes do cluster.

annotations

map (key: string, value: string)

Opcional. Anotações no cluster.

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" }.

workloadIdentityConfig

object (WorkloadIdentityConfig)

Apenas saída. Definições do Workload Identity.

loggingConfig

object (LoggingConfig)

Opcional. Configuração de registo para este cluster.

errors[]

object (AttachedClusterError)

Apenas saída. Um conjunto de erros encontrados no cluster.

authorization

object (AttachedClustersAuthorization)

Opcional. Configuração relacionada com as definições de RBAC do cluster.

monitoringConfig

object (MonitoringConfig)

Opcional. Configuração de monitorização para este cluster.

proxyConfig

object (AttachedProxyConfig)

Opcional. Configuração do proxy para tráfego HTTP(S) de saída.

binaryAuthorization

object (BinaryAuthorization)

Opcional. Configuração da autorização binária para este cluster.

securityPostureConfig

object (SecurityPostureConfig)

Opcional. Configuração da postura de segurança para este cluster.

tags

map (key: string, value: string)

Opcional. Apenas entrada. Etiquete chaves e valores diretamente associados a este recurso.

A chave da etiqueta tem de ser especificada no formato <tag namespace>/<tag key name>,, em que o espaço de nomes da etiqueta é o ID da organização ou o nome do projeto no qual a chave da etiqueta está definida. O diminutivo de uma chave ou um valor de etiqueta pode ter um comprimento máximo de 256 carateres. O conjunto de carateres permitido para o nome abreviado inclui carateres Unicode codificados em UTF-8, exceto aspas simples ('), aspas duplas ("), barras invertidas (\) e barras (/).

Consulte Etiquetas para ver mais detalhes sobre as etiquetas da Google Cloud Platform.

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

systemComponentsConfig

object (SystemComponentsConfig)

Opcional. Configurações do Kubernetes para componentes instalados automaticamente no cluster.

AttachedOidcConfig

Informações de descoberta do OIDC do cluster de destino.

Os tokens de conta de serviço do Kubernetes (KSA) são tokens JWT assinados pelo servidor da API do cluster. Estes campos indicam como os serviços da Google Cloud Platform validam os tokens KSA para permitir que as cargas de trabalho do sistema (como o GKE Connect e os agentes de telemetria) façam a autenticação novamente na Google Cloud Platform.

São suportados clusters com URLs de emissor públicos e privados. Os clusters com emissores públicos só precisam de especificar o campo issuerUrl, enquanto os clusters com emissores privados têm de fornecer issuerUrl e oidc_jwks.

Representação JSON
{
  "issuerUrl": string,
  "jwks": string
}
Campos
issuerUrl

string

Um URI do emissor do símbolo da Web JSON (JWT). issuer tem de começar com https://.

jwks

string (bytes format)

Opcional. Chaves de validação OIDC no formato JWKS (RFC 7517). Contém uma lista de chaves de validação OIDC que podem ser usadas para validar JWTs OIDC.

Este campo é obrigatório para o cluster que não tem um ponto final de descoberta disponível publicamente. Quando fornecido, é usado diretamente para validar o JWT OIDC afirmado pelo IDP.

Uma string codificada em Base64.

Estado

O estado do ciclo de vida do cluster.

Enumerações
STATE_UNSPECIFIED Não definido.
PROVISIONING O estado PROVISIONING indica que o cluster está a ser registado.
RUNNING O estado RUNNING indica que o cluster foi registado e está totalmente utilizável.
RECONCILING O estado RECONCILING indica que está a ser feito algum trabalho ativamente no cluster, como a atualização de componentes de software.
STOPPING O estado STOPPING indica que o cluster está a ser anulado.
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.

AttachedClusterError

AttachedClusterError descreve os erros encontrados em clusters anexados.

Representação JSON
{
  "message": string
}
Campos
message

string

Descrição do erro de fácil compreensão.

AttachedClustersAuthorization

Configuração relacionada com as definições de RBAC do cluster.

Representação JSON
{
  "adminUsers": [
    {
      object (AttachedClusterUser)
    }
  ],
  "adminGroups": [
    {
      object (AttachedClusterGroup)
    }
  ]
}
Campos
adminUsers[]

object (AttachedClusterUser)

Opcional. Utilizadores que podem realizar operações como administrador do cluster. É criada uma ClusterRoleBinding gerida para conceder a cluster-admin ClusterRole aos utilizadores. Podem ser indicados até dez utilizadores administradores.

Para mais informações sobre o RBAC, consulte https://kubernetes.io/docs/reference/access-authn-authz/rbac/#user-facing-roles

adminGroups[]

object (AttachedClusterGroup)

Opcional. Grupos de utilizadores que podem realizar operações como administrador do cluster. É criada uma ClusterRoleBinding gerida para conceder a ClusterRole cluster-admin aos grupos. Podem ser fornecidos até dez grupos de administradores.

Para mais informações sobre o RBAC, consulte https://kubernetes.io/docs/reference/access-authn-authz/rbac/#user-facing-roles

AttachedClusterUser

Identidades de um assunto do tipo utilizador para clusters anexados.

Representação JSON
{
  "username": string
}
Campos
username

string

Obrigatório. O nome do utilizador, por exemplo, my-gcp-id@gmail.com.

AttachedClusterGroup

Identidades de um assunto do tipo grupo para clusters anexados.

Representação JSON
{
  "group": string
}
Campos
group

string

Obrigatório. O nome do grupo, por exemplo, my-group@domain.com.

AttachedProxyConfig

Detalhes de uma configuração de proxy.

Representação JSON
{
  "kubernetesSecret": {
    object (KubernetesSecret)
  }
}
Campos
kubernetesSecret

object (KubernetesSecret)

O recurso Kubernetes Secret que contém a configuração do proxy HTTP(S). O segredo tem de ser uma configuração de proxy codificada em JSON, conforme descrito em https://cloud.google.com/kubernetes-engine/multi-cloud/docs/attached/eks/how-to/use-a-proxy#configure-proxy-support para clusters do EKS e https://cloud.google.com/kubernetes-engine/multi-cloud/docs/attached/aks/how-to/use-a-proxy#configure-proxy-support para clusters do AKS.

KubernetesSecret

Informações sobre um Secret do Kubernetes

Representação JSON
{
  "name": string,
  "namespace": string
}
Campos
name

string

Nome do segredo do Kubernetes.

namespace

string

Espaço de nomes no qual o segredo do Kubernetes está armazenado.

SecurityPostureConfig

SecurityPostureConfig define as flags necessárias para ativar/desativar funcionalidades para a API Security Posture.

Representação JSON
{
  "vulnerabilityMode": enum (VulnerabilityMode)
}
Campos
vulnerabilityMode

enum (VulnerabilityMode)

Define o modo a usar para a análise de vulnerabilidades.

VulnerabilityMode

VulnerabilityMode define o modo de ativação para a análise de vulnerabilidades.

Enumerações
VULNERABILITY_MODE_UNSPECIFIED O valor predefinido não foi especificado.
VULNERABILITY_DISABLED Desativa a análise de vulnerabilidades no cluster.
VULNERABILITY_ENTERPRISE Aplica a vulnerabilidade da postura de segurança a funcionalidades ao nível da empresa do cluster.

SystemComponentsConfig

SystemComponentsConfig define os campos para personalizar as configurações dos componentes instalados automaticamente.

Representação JSON
{
  "tolerations": [
    {
      object (Toleration)
    }
  ],
  "labels": [
    {
      object (Label)
    }
  ]
}
Campos
tolerations[]

object (Toleration)

Define tolerâncias personalizadas para pods criados por componentes instalados automaticamente.

labels[]

object (Label)

Define etiquetas personalizadas para pods criados por componentes instalados automaticamente.

Tolerância

A tolerância define os campos para tolerâncias para pods criados por componentes instalados automaticamente.

Representação JSON
{
  "key": string,
  "value": string,
  "keyOperator": enum (KeyOperator),
  "effect": enum (Effect)
}
Campos
key

string

Key é a chave de rejeição à qual a tolerância se aplica.

value

string

O valor é o valor de contaminação ao qual a tolerância se aplica.

keyOperator

enum (KeyOperator)

KeyOperator representa a relação de uma chave com o valor, por exemplo, "Exist".

effect

enum (Effect)

O efeito indica o efeito de contaminação a corresponder, por exemplo, "NoSchedule"

KeyOperator

KeyOperator representa a relação de uma chave com o valor, por exemplo, "Igual".

Enumerações
KEY_OPERATOR_UNSPECIFIED O operador não está especificado.
KEY_OPERATOR_EQUAL O operador é mapeado para "Igual a".
KEY_OPERATOR_EXISTS O operador é mapeado para "Existe".

Efeito

O efeito indica o efeito de contaminação a corresponder, por exemplo, "NoSchedule".

Enumerações
EFFECT_UNSPECIFIED O efeito não está especificado.
EFFECT_NO_SCHEDULE O efeito é mapeado para "NoSchedule".
EFFECT_PREFER_NO_SCHEDULE O efeito é mapeado para "PreferNoSchedule".
EFFECT_NO_EXECUTE O efeito é mapeado para "NoExecute".

Etiqueta

A etiqueta define os campos adicionais para etiquetas de pods criados por componentes instalados automaticamente.

Representação JSON
{
  "key": string,
  "value": string
}
Campos
key

string

Esta é a chave da etiqueta.

value

string

Este é o valor da etiqueta.

Métodos

create

Cria um novo recurso AttachedCluster num determinado projeto e região da Google Cloud Platform.

delete

Elimina um recurso AttachedCluster específico.

generateAttachedClusterAgentToken

Gera um token de acesso para um agente de cluster.

get

Descreve um recurso AttachedCluster específico.

import

A importação cria um novo recurso AttachedCluster importando um recurso de associação de frota existente.

list

Lista todos os recursos do AttachedCluster num determinado projeto e região do Google Cloud.

patch

Atualiza um AttachedCluster.