Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
Esta página descreve os campos suportados no ficheiro de configuração do cluster para o Google Distributed Cloud (apenas software) em hardware não processado. Para cada campo, a tabela seguinte identifica se o campo é obrigatório. A tabela também mostra que campos são mutáveis, ou seja, que campos podem ser alterados após a criação de um cluster. Conforme indicado na tabela, alguns campos mutáveis só podem ser alterados durante uma atualização do cluster.
Gerar um modelo para o ficheiro de configuração do cluster
Pode criar um ficheiro de configuração do cluster com o comando bmctl create config. Embora alguns campos tenham valores predefinidos e outros, como
metadata.name, possam ser preenchidos automaticamente, este ficheiro de configuração no formato YAML é um
modelo para especificar informações sobre o seu cluster.
Para criar um novo ficheiro de configuração do cluster, use o seguinte comando na pasta /baremetal:
bmctlcreateconfig-cCLUSTER_NAME
Substitua CLUSTER_NAME pelo nome do cluster que quer criar. Para mais informações sobre o bmctl, consulte a ferramenta bmctl.
Para ver um exemplo do ficheiro de configuração do cluster gerado, consulte o
Exemplo de ficheiro de configuração do cluster.
Preencher o ficheiro de configuração
No ficheiro de configuração, introduza os valores dos campos conforme descrito na seguinte tabela de referência de campos antes de criar ou atualizar o cluster.
Campos de configuração do cluster
Nome do campo
Tipo do recurso
Obrigatório?
Mutável?
anthosBareMetalVersion
Obrigatório. String. A versão do cluster. Este valor é definido para a criação de clusters e as atualizações de clusters.
Mutabilidade: não é possível modificar este valor para clusters existentes.
A versão só pode ser atualizada através do
processo de atualização do cluster.
Recurso de cluster
Obrigatória
Mutável
authentication
Esta secção contém as definições necessárias para usar o OpenID Connect (OIDC).
O OIDC permite-lhe usar o seu fornecedor de identidade existente para gerir a autenticação de utilizadores e
grupos nos seus clusters.
Recurso de cluster
—
—
authentication.oidc.certificateAuthorityData
Opcional. Um certificado codificado em base64
PEM para o fornecedor OIDC. Para criar a string, codifique o certificado, incluindo os cabeçalhos, em base64. Inclua a string resultante em
certificateAuthorityData como uma única linha.
Por exemplo (amostra ajustada para caber na tabela):
Opcional. String. O ID da aplicação cliente que faz pedidos de autenticação ao fornecedor OpenID.
Recurso de cluster
Opcional
Imutável
authentication.oidc.clientSecret
Opcional. String. Segredo partilhado entre a aplicação cliente OIDC e o fornecedor OIDC.
Recurso de cluster
Opcional
Imutável
authentication.oidc.deployCloudConsoleProxy
Opcional. Booleano (true|false). Especifica se um proxy inverso
está implementado no cluster para ligar a Google Cloud consola a um
fornecedor de identidade no local que não está acessível publicamente através da
Internet. Se o seu fornecedor de identidade não estiver acessível através da Internet pública, defina este campo como true para autenticar com a consola Google Cloud . Por predefinição, este valor está definido como false.
Recurso de cluster
Opcional
Imutável
authentication.oidc.extraParams
Opcional. Lista delimitada por vírgulas. Parâmetros de chave-valor adicionais a enviar ao fornecedor do OpenID.
Recurso de cluster
Opcional
Imutável
authentication.oidc.groupPrefix
Opcional. String. Prefixo anteposto às reivindicações de grupos para evitar conflitos com nomes existentes. Por exemplo, dado um grupo dev e um prefixo
oidc:, oidc:dev.
Recurso de cluster
Opcional
Imutável
authentication.oidc.group
Opcional. String.
JWT
afirmação que o fornecedor usa para devolver os seus grupos de segurança.
Recurso de cluster
Opcional
Imutável
authentication.oidc.issuerURL
Opcional. String de URL. URL para onde são enviados os pedidos de autorização do seu OpenID, como https://example.com/adfs. O servidor da API Kubernetes usa este URL para descobrir chaves públicas para validar tokens. O URL tem de usar HTTPS.
Recurso de cluster
Opcional
Imutável
authentication.oidc.kubectlRedirectURL
Opcional. String de URL. O URL de redirecionamento que o kubectl usa para autorização. Quando ativa o OIDC, tem de especificar um valor kubectlRedirectURL.
Recurso de cluster
Opcional
Imutável
authentication.oidc.proxy
Opcional. String de URL. Servidor proxy a usar para o cluster estabelecer ligação
ao seu fornecedor OIDC, se aplicável. O valor deve incluir um nome do anfitrião/endereço IP e, opcionalmente, uma porta, um nome de utilizador e uma palavra-passe. Por exemplo: http://user:password@10.10.10.10:8888.
Recurso de cluster
Opcional
Imutável
authentication.oidc.scopes
Opcional. Lista delimitada por vírgulas. Âmbitos adicionais a enviar para o fornecedor do OpenID. O Microsoft Azure e o Okta requerem o âmbito offline_access.
Recurso de cluster
Opcional
Imutável
authentication.oidc.usernamePrefix
Opcional. String. Prefixo adicionado às reivindicações de nomes de utilizador.
Recurso de cluster
Opcional
Imutável
authentication.oidc.username
Opcional. String.
JWT
afirmação a usar como nome de utilizador. Se não for especificado, o fuso horário predefinido é sub.
Recurso de cluster
Opcional
Imutável
bypassPreflightCheck
Opcional. Booleano (true|false). Quando definido como
true, as verificações prévias internas são ignoradas quando
aplicar recursos a clusters existentes. A predefinição é false.
Mutabilidade: este valor pode ser modificado para clusters existentes
com o comando bmctl update.
Recurso de cluster
Opcional
Mutável
clusterNetwork
Esta secção contém as definições de rede do seu cluster.
Recurso de cluster
Obrigatória
Mutável
clusterNetwork.advancedNetworking
Booleano. Defina este campo como true para ativar funcionalidades de rede avançadas, como o equilíbrio de carga agrupado com BGP ou o gateway NAT de saída. Ambas as funcionalidades usam o gateway de rede para o GDC.
O gateway de rede para o GDC é o componente essencial para ativar
funcionalidades de rede avançadas no Google Distributed Cloud e no
Google Kubernetes Engine (GKE). Uma das principais vantagens do gateway de rede para o GDC é que pode alocar dinamicamente endereços IP flutuantes a partir de um conjunto de endereços que especifica num recurso personalizado.NetworkGatewayGroup
Booleano. Defina este campo como false para desativar as capacidades de entrada
incluídas no software Google Distributed Cloud. As capacidades de entrada incluídas para o seu cluster suportam apenas a entrada. Se fizer a integração com o Istio ou o Cloud Service Mesh para usufruir das vantagens adicionais de uma malha de serviços totalmente funcional, recomendamos que desative o Ingress integrado. Por predefinição, este campo está definido como true. Este campo não está presente no ficheiro de configuração do cluster gerado. Só pode desativar o Ingress integrado para clusters da versão 1.13.0 e posteriores.
Booleano. Defina este campo como true para ativar o modelo de rede de cluster
de modo simples. No modo plano, cada pod tem o seu próprio endereço IP exclusivo. Os pods podem comunicar entre si diretamente sem a necessidade de um gateway intermediário ou de tradução de endereços de rede (NAT).
flatIPv4 é false por predefinição. Só pode
ativar o modo simples durante a criação do cluster. Depois de ativar o modo simples
para o cluster, não pode desativá-lo.
Recurso de cluster
Opcional
Imutável
clusterNetwork.forwardMode
Opcional. String. Especifica o modo de rede para o equilíbrio de carga do Dataplane V2. A tradução de endereços de rede de origem (SNAT) é o modo de rede predefinido. O modo de retorno direto do servidor (DSR) supera os problemas com o balanceamento de carga SNAT. No modo DSR (forwardMode: dsr), o nó do balanceador de carga usa opções de IP para guardar o endereço de origem do cliente.
O modo de rede para o equilíbrio de carga do plano de dados V2 só pode ser configurado no momento da criação do cluster.
Obrigatório. Intervalo de endereços IPv4 no formato de blocos CIDR. Os pods especificam
os intervalos de IP a partir dos quais as redes de pods são atribuídas.
Intervalo CIDR mínimo do agrupamento: valor da máscara de
/18, que corresponde a um tamanho de 14 bits (16 384 endereços IP).
Intervalo CIDR máximo do agrupamento: valor da máscara de
/8, que corresponde a um tamanho de 24 bits (16 777 216 endereços IP).
Por exemplo:
pods:cidrBlocks:-192.168.0.0/16
Recurso de cluster
Obrigatória
Imutável
clusterNetwork.sriovOperator
Opcional. Booleano. Defina este campo como true para ativar
a rede SR-IOV para o seu cluster.
Para mais informações sobre a configuração e a utilização de redes SR-IOV,
consulte a documentação
Configure redes SR-IOV.
Recurso de cluster
Opcional
Mutável
clusterNetwork.services.cidrBlocks
Obrigatório. Intervalo de endereços IPv4 no formato de blocos CIDR. Especifique o intervalo de endereços IP a partir dos quais os endereços IP virtuais (VIP) do serviço são atribuídos. Os intervalos não podem sobrepor-se a nenhuma sub-rede acessível a partir da sua rede. Para mais informações sobre a atribuição de endereços para
internets privadas, consulte a
RFC 1918.
A partir da versão 1.15.0 do software Google Distributed Cloud para bare metal, este campo é mutável. Se necessário, pode aumentar o número de endereços IP atribuídos aos serviços depois de criar um cluster. Para mais informações, consulte o artigo
Aumente o alcance da rede de serviços.
Só pode aumentar o intervalo do CIDR do serviço IPv4. Não é possível reduzir o intervalo de
redes, o que significa que não é possível aumentar a máscara (o valor após "/").
Intervalo CIDR do serviço mínimo: valor da máscara de
/24, que corresponde a um tamanho de 8 bits (256
endereços).
Intervalo CIDR máximo do serviço: valor da máscara de
/12, que corresponde a um tamanho de 20 bits (1 048 576 endereços IP).
Por exemplo:
services:cidrBlocks:-10.96.0.0/12
Recurso de cluster
Obrigatória
Mutável
clusterOperations
Esta secção contém informações para o Cloud Logging e o Cloud Monitoring.
Recurso de cluster
Obrigatória
Mutável
clusterOperations.enableApplication
Este campo já não é usado e não tem efeito. O registo de aplicações
e a monitorização estão ativados no recurso personalizado do Stackdriver. Para
mais informações sobre como ativar o registo e a monitorização de aplicações, consulte
Ative o registo e a monitorização de aplicações.
Recurso de cluster
No-op
Mutável
clusterOperations.disableCloudAuditLogging
Booleano. Os registos de auditoria do Cloud são úteis para investigar pedidos de API suspeitos e para recolher estatísticas. Os registos de auditoria do Cloud estão ativados
(disableCloudAuditLogging: false) por predefinição. Defina como
true para desativar os registos de auditoria do Cloud.
String. Uma Google Cloud região onde quer encaminhar e armazenar
métricas de monitorização. Recomendamos que escolha uma região próxima do seu centro de dados no local. Durante a criação do cluster, este valor é usado para definir o valor clusterLocation
na especificação do recurso stackdriver.
O valor que especificar também é usado pelo Stackdriver para etiquetar métricas e registos. Estas etiquetas podem ser usadas para filtragem no explorador de métricas
e no explorador de registos.
String. O ID do projeto do Google Cloud projeto onde quer ver
registos e métricas. Durante a criação do cluster, este valor é usado para definir o valor projectID na especificação do recurso stackdriver.
Recurso de cluster
Obrigatória
Imutável
controlPlane
Esta secção contém informações acerca do plano de controlo e dos respetivos componentes.
Recurso de cluster
Obrigatória
Mutável
controlPlane.apiServerCertExtraSANs
Opcional. Uma matriz de strings (nomes de domínios e endereços IP). Um nome
alternativo do requerente (SAN) é uma funcionalidade dos certificados SSL que
lhe permite definir os nomes de domínios e os subdomínios nos quais quer que um
certificado seja válido. Num cluster para metal
desprotegido, os SANs para o certificado do servidor da API incluem os endereços IP e VIP
dos nós do plano de controlo e os nomes DNS do Kubernetes por
predefinição. Use este campo para adicionar SANs adicionais ao certificado do servidor da API para o cluster. Os nomes de domínios têm de estar em conformidade com o
RFC 1035.
Para mais informações, consulte o artigo Adicione domínios ao certificado do servidor da API.
Este campo pode ser adicionado ou alterado em qualquer altura.
Recurso de cluster
Opcional
Mutável
controlPlane.loadBalancer
Esta secção contém definições para o equilíbrio de carga do plano de controlo. Os campos
nesta secção só estão disponíveis para clusters
da versão 1.32 e superiores.
Opcional. Número inteiro. Especifica o número de mensagens ARP gratuitas (GARP) que o Keepalived envia de cada vez após um nó do plano de controlo transitar para a função de servidor principal. Este valor é mapeado para a definição vrrp_garp_master_repeat do Keepalived. O valor predefinido é 5. Para mais informações, consulte o artigo
Personalização do Keepalived.
Recurso de cluster
Opcional
Mutável
controlPlane.loadBalancer.mode
Opcional. String. Quando definida como bundled, esta definição
especifica que os equilibradores de carga do plano de controlo são executados em nós do plano de controlo. Se estiver definido e configurar um conjunto de nós do balanceador de carga com
loadBalancer.nodePoolSpec, os balanceadores de carga do plano de controlo
são executados em nós do plano de controlo e os balanceadores de carga do plano de dados
são executados no conjunto de nós do balanceador de carga. Para mais informações, consulte o artigo
Separação do
equilibrador de carga.
Se definir controlPlane.loadBalancer.mode como manual,
loadBalancer.mode também tem de ser definido como manual. Esta
definição é usada para ativar o equilíbrio de carga manual. Para mais informações, consulte o artigo
Configure o equilíbrio de carga manual.
Não tem de definir controlPlane.loadBalancer.mode
como manual para configurar o equilíbrio de carga manual.
Valores permitidos: bundled | manual
Recurso de cluster
Opcional
Imutável
controlPlane.nodePoolSpec
Esta secção especifica os endereços IP para o conjunto de nós usado pelo
plano de controlo e os respetivos componentes. A especificação do node pool do painel de controlo (como a
especificação do node pool do equilibrador de carga)
é especial. Esta especificação declara e controla recursos críticos do cluster. A origem canónica deste recurso é esta secção no ficheiro de configuração do cluster. Não modifique diretamente os recursos do conjunto de nós do plano de controlo de nível superior. Em alternativa, modifique as secções associadas no ficheiro de configuração do cluster.
Recurso de cluster
Obrigatória
Mutável
controlPlane.nodePoolSpec.nodes
Obrigatório. Uma matriz de endereços IP. Normalmente, esta matriz é um endereço IP para uma única máquina ou endereços IP para três máquinas para uma implementação de alta disponibilidade (HA).
Este campo pode ser alterado sempre que atualizar ou fizer uma atualização de um cluster.
Recurso de cluster
Obrigatória
Mutável
controlPlane.nodePoolSpec.nodes.address
Obrigatório. String (endereço IPv4). Quando especifica um conjunto de nós, usa o campo address para especificar o endereço IPv4 predefinido para acesso SSH para cada nó. O acesso SSH é necessário para operações administrativas de cluster, como instalações e atualizações. Por predefinição, este endereço IP também é usado para dados e tráfego do Kubernetes. No entanto, se especificar o endereço k8sIP para um determinado nó, o tráfego é dividido entre os dois endereços do nó, sendo o endereço k8sIP usado exclusivamente para dados e tráfego do Kubernetes.
Este campo pode ser alterado sempre que atualizar ou fizer uma atualização de um cluster.
Recurso de cluster
Obrigatória
Mutável
controlPlane.nodePoolSpec.nodes.k8sIP
Opcional. String (endereço IPv4). Quando especifica o endereço
k8sIP opcional para um nó, este é dedicado ao processamento de dados
e tráfego do Kubernetes para o nó, como pedidos e respostas para
a API Kubernetes, o kubelet e as cargas de trabalho. Quando especifica k8sIP,
o endereço IP do nó padrão nodePoolSpec.nodes.address é
usado exclusivamente para ligações SSH ao nó. Se não especificar um endereço k8sIP, o endereço IP do nó padrão processa todo o tráfego do nó.
Opcional. Número inteiro (não negativo). Especifica a quantidade máxima de pedidos de obtenção de imagens que podem ser adicionados à fila de processamento para processar picos nos pedidos. Assim que um pedido de obtenção é iniciado, pode adicionar um novo pedido à fila. O valor predefinido é 10. Este campo corresponde à opção de configuração do kubelet (v1beta1).registryBurst
O valor de registryPullQPS tem prioridade sobre esta definição. Por exemplo, com as predefinições, são permitidas rajadas de até 10 consultas simultâneas, mas têm de ser processadas à taxa predefinida de cinco consultas por segundo. Este comportamento de pico só é usado quando registryPullQPS é superior a 0.
Este campo pode ser definido sempre que criar, atualizar ou fazer uma atualização de um cluster, e a definição persiste nas atualizações de clusters. Para mais
informações, consulte o artigo
Configure as definições de obtenção de imagens do kubelet.
Opcional. Número inteiro (não negativo). Especifica a taxa de processamento de consultas para pedidos de obtenção de imagens do Artifact Registry em consultas por segundo (CPS).
Quando registryPullQPS está definido para um valor superior a 0, a taxa de consultas é restrita a esse número de consultas por segundo. Se
registryPullQPS estiver definido como 0, não existe
restrição na taxa de consultas. O valor predefinido é 5.
Este campo pode ser definido sempre que criar, atualizar ou fazer uma atualização de um cluster, e a definição persiste nas atualizações de clusters. Para mais
informações, consulte o artigo
Configure as definições de obtenção de imagens do kubelet.
Opcional. Booleano (true|false). Este campo
especifica se as obtenções do Artifact Registry são processadas em paralelo ou
uma de cada vez. O valor predefinido é true, que especifica que as obtenções são processadas uma de cada vez. Quando definido como false, o kubelet
extrai imagens em paralelo. Este campo corresponde à opção de configuração do kubelet (v1beta1).serializeImagePulls
Este campo pode ser definido sempre que criar, atualizar ou fazer uma atualização de um cluster, e a definição persiste nas atualizações de clusters. Para mais
informações, consulte o artigo
Configure as definições de obtenção de imagens do kubelet.
Recurso de cluster
Opcional
Mutável
gkeConnect
Esta secção contém informações sobre o projeto do Google Cloud que quer
usar para associar o cluster ao Google Cloud.
Recurso de cluster
Obrigatória
Imutável
gkeConnect.projectID
Obrigatório: string. O ID do Google Cloud projeto que quer
usar para associar o cluster ao Google Cloud. Isto também é conhecido como o projeto de anfitrião da frota.
Não é possível modificar este valor para clusters existentes.
Recurso de cluster
Obrigatória
Imutável
gkeConnect.location
Opcional. String. Valor predefinido: global.
A associação à frota dos seus clusters é gerida pelo serviço Fleet
(gkehub.googleapis.com) e pelo serviço Connect
(gkeconnect.googleapis.com). A associação à frota pode ser
global ou regional. Opcionalmente, pode usar gkeConnect.location
para especificar a Google Cloud região na qual os serviços Fleet e Connect
são executados, para que o tráfego seja restrito à sua região.
Para ver uma lista das regiões suportadas, consulte o artigo
Regiões suportadas para a API GKE On-Prem.
Se não for especificado, são usadas as instâncias globais dos serviços.
Tenha em conta o seguinte:
Os clusters criados em versões inferiores a 1.28 são geridos pelos serviços globais Fleet e Connect.
Os novos clusters criados com os clientes da API GKE On-Prem, como
a Google Cloud consola, a CLI Google Cloud ou o Terraform, usam a mesma
região que especificar para a API GKE On-Prem.
Para novos clusters, se incluir este campo, a região que especificar tem de ser igual à região configurada em gkeOnPremAPI.location. Se as regiões não forem as mesmas,
a criação de clusters falha.
Não é possível modificar este valor para clusters existentes.
Recurso de cluster
Opcional
Imutável
gkeOnPremAPI
Na versão 1.16 e posteriores, se a API GKE On-Prem estiver ativada no seu
Google Cloud projeto, todos os clusters no projeto são
inscritos na
API GKE On-Prem automaticamente na região configurada em
clusterOperations.location.
Se quiser inscrever todos os clusters no projeto na API GKE On-Prem, certifique-se de que executa os passos em Antes de começar para ativar e usar a API GKE On-Prem no projeto.
Se não quiser inscrever o cluster na API GKE On-Prem,
inclua esta secção e defina gkeOnPremAPI.enabled como
false.
Se não quiser inscrever nenhum cluster no projeto, desative o serviço
gkeonprem.googleapis.com (o nome do serviço para a
API GKE On-Prem) no projeto. Para ver instruções, consulte a secção
Desativar
serviços.
Se quiser inscrever todos os clusters no projeto na API GKE On-Prem, certifique-se de que executa os passos em Antes de começar para ativar e usar a API GKE On-Prem no projeto.
Se não quiser inscrever o cluster na API GKE On-Prem,
inclua esta secção e defina gkeOnPremAPI.enabled como
false.
Se não quiser inscrever nenhum cluster no projeto, desative o serviço
gkeonprem.googleapis.com (o nome do serviço para a
API GKE On-Prem) no projeto. Para ver instruções, consulte a secção
Desativar
serviços.
A inscrição do cluster de administrador ou de utilizador na API GKE On-Prem permite-lhe
usar ferramentas padrão, como a Google Cloud consola, a CLI Google Cloud,
ou o
Terraform, para ver detalhes do cluster e gerir o ciclo de vida
do cluster. Por exemplo, pode executar comandos da CLI gcloud para
obter informações sobre o seu cluster.
A API GKE On-Prem armazena metadados do estado do cluster em Google Cloud.
Estes metadados permitem que a API faça a gestão do ciclo de vida do cluster. As ferramentas padrão
usam a API GKE On-Prem e são coletivamente designadas
por clientes da API GKE On-Prem.
Se definir gkeOnPremAPI.enabled como true,
antes de criar ou atualizar o cluster com bmctl,
certifique-se de que executa os passos em
Antes
de começar para ativar e inicializar a API GKE On-Prem.
Depois de adicionar esta secção e criar ou atualizar o cluster, se
remover posteriormente a secção e atualizar o cluster, a atualização
falha.
Se preferir criar o cluster com uma ferramenta padrão
em vez de bmctl, consulte o seguinte:
Quando cria um cluster através de uma ferramenta padrão, o cluster é
inscrito automaticamente na API GKE On-Prem.
Recurso de cluster
Opcional
gkeOnPremAPI.enabled
Por predefinição, o cluster está inscrito na API GKE On-Prem se a API GKE On-Prem estiver ativada no seu projeto. Defina como false
se não quiser inscrever o cluster.
Depois de o cluster ser inscrito na API GKE On-Prem, se precisar de
anular a inscrição do cluster, faça a seguinte alteração e, em seguida, atualize
o cluster:
gkeOnPremAPI:enabled:false
Recurso de cluster
Obrigatória
Mutável
gkeOnPremAPI.location
A Google Cloud região onde a API GKE On-Prem é executada e
armazena metadados do cluster. Escolha uma das
regiões suportadas. Tem de ser uma string não vazia se
gkeOnPremAPI.enabled for true. Se
gkeOnPremAPI.enabled for false, não
inclua este campo.
Se esta secção não estiver incluída no ficheiro de configuração, este campo é definido como clusterOperations.location.
Recurso de cluster
Opcional
Imutável
kubevirt.useEmulation (descontinuado)
Descontinuado. A partir da versão 1.11.2, pode ativar ou desativar o tempo de execução da VM no GDC atualizando apenas o recurso personalizado VMRuntime.
Booleano. Determina se a emulação de software é usada para executar máquinas virtuais. Se o nó suportar a virtualização de hardware, defina
useEmulation como false para um melhor
desempenho. Se a virtualização de hardware não for suportada ou não tiver a certeza, defina-a como true.
Recurso de cluster
Opcional
Mutável
loadBalancer
Esta secção contém definições para o equilíbrio de carga do cluster.
Recurso de cluster
Obrigatória
Mutável
loadBalancer.addressPools
Objeto. O nome e uma matriz de endereços IP para o seu conjunto do balanceador de carga do cluster. A configuração do conjunto de endereços só é válida para o modo bundled LB em clusters que não sejam de administrador. Pode adicionar novos conjuntos de endereços em qualquer altura, mas não pode remover conjuntos de endereços existentes.
Pode editar um conjunto de endereços existente para alterar apenas os campos avoidBuggyIPs
e manualAssign.
Recurso de cluster
Opcional
Imutável
loadBalancer.addressPools.addresses
Matriz de intervalos de endereços IP. Especifique uma lista de intervalos de IP não sobrepostos para o equilibrador de carga do plano de dados. Todos os endereços têm de estar na mesma sub-rede que os nós do equilibrador de carga.
String. O nome que escolher para o conjunto do balanceador de carga do cluster.
Recurso de cluster
Obrigatória
Imutável
loadBalancer.addressPools.avoidBuggyIPs
Opcional. Booleano (true | false). Se true,
o conjunto omite endereços IP que terminam em .0 e .255.
Algum hardware de rede rejeita o tráfego para estes endereços especiais. Pode omitir este campo. O valor predefinido é false.
Recurso de cluster
Opcional
Mutável
loadBalancer.addressPools.manualAssign
Opcional. Booleano (true | false). Se true, os
endereços neste conjunto não são atribuídos automaticamente aos serviços
do Kubernetes. Se true, é usado um endereço IP neste conjunto apenas quando é especificado explicitamente por um serviço. Pode omitir este campo. O valor predefinido é false.
Recurso de cluster
Opcional
Mutável
loadBalancer.mode
Obrigatório. String. Especifica o modo de equilíbrio de carga. No modo bundled, o software Google Distributed Cloud instala um balanceador de carga em nós do balanceador de carga durante a criação do cluster. No modo manual, o cluster baseia-se num balanceador de carga externo configurado manualmente. Para mais informações, consulte o artigo
Vista geral dos equilibradores de carga.
Valores permitidos: bundled | manual
Recurso de cluster
Obrigatória
Imutável
loadBalancer.type
Opcional. String. Especifica o tipo de equilíbrio de carga agrupado usado,
camada 2 ou Border Gateway Protocol (BGP). Se estiver a usar o
balanceamento de carga
padrão e agrupado, defina type como layer2. Se estiver a usar o balanceamento de carga agrupado com BGP, defina type como bgp. Se não definir type, a predefinição é layer2.
Valores permitidos: layer2 | bgp
Recurso de cluster
Opcional
Imutável
loadBalancer.nodePoolSpec
Opcional. Use esta secção para configurar um node pool do equilibrador de carga. Os nós especificados fazem parte do cluster do Kubernetes e executam cargas de trabalho e balanceadores de carga normais. Se não especificar um conjunto de nós, os nós do plano de controlo são usados para o equilíbrio de carga. Esta secção
aplica-se apenas quando o modo de equilíbrio de carga está definido como bundled.
Se quiser impedir que as cargas de trabalho sejam executadas num nó no conjunto de nós do balanceador de carga, adicione a seguinte mancha ao nó:
node-role.kubernetes.io/load-balancer:NoSchedule
O software Google Distributed Cloud adiciona tolerâncias para esta falha aos
pods necessários para o equilíbrio de carga.
Recurso de cluster
Opcional
Mutável
loadBalancer.nodePoolSpec.nodes
Esta secção contém uma matriz de endereços IP para os nós no conjunto de nós do balanceador de carga.
Por predefinição, todos os nós no conjunto de nós do equilibrador de carga têm de estar na
mesma sub-rede da camada 2 que os VIPs do equilibrador de carga configurados na
loadBalancer.addressPools
secção do ficheiro de configuração. No entanto, se especificar um endereço IP do Kubernetes k8sIP para um nó, apenas esse endereço tem de estar na mesma sub-rede da camada 2 que os outros VIPs do equilibrador de carga.
Recurso de cluster
Opcional
Mutável
loadBalancer.nodePoolSpec.nodes.address
Opcional. String (endereço IPv4). Quando especifica um conjunto de nós, usa o campo address para especificar o endereço IPv4 predefinido para acesso SSH para cada nó. O acesso SSH é necessário para operações administrativas de cluster, como instalações e atualizações. Por predefinição, este endereço IP também é usado para dados e tráfego do Kubernetes. No entanto, se especificar o endereço k8sIP para um determinado nó, o tráfego é dividido entre os dois endereços do nó, sendo o endereço k8sIP usado exclusivamente para dados e tráfego do Kubernetes.
Embora os nós no conjunto de nós do equilibrador de carga possam executar cargas de trabalho,
estão separados dos nós nos conjuntos de nós de trabalho. Não pode
incluir um determinado nó do cluster em mais do que um conjunto de nós. A sobreposição de endereços IP de nós impede a criação de clusters e outras operações de clusters.
Opcional. String (endereço IPv4). Quando especifica o endereço
k8sIP opcional para um nó, este é dedicado ao processamento de dados
e tráfego do Kubernetes para o nó, como pedidos e respostas para
a API Kubernetes, o kubelet e as cargas de trabalho. Quando especifica k8sIP,
o endereço IP do nó padrão nodePoolSpec.nodes.address é
usado exclusivamente para ligações SSH ao nó. Se não especificar um endereço k8sIP, o endereço IP do nó padrão processa todo o tráfego do nó.
Opcional. Número inteiro (não negativo). Especifica o número máximo de pedidos de obtenção de imagens que podem ser adicionados à fila de processamento para processar picos nos pedidos. Assim que um pedido de obtenção é iniciado, pode adicionar um novo pedido à fila. O valor predefinido é 10. Este campo corresponde à opção de configuração do kubelet (v1beta1).registryBurst
O valor de registryPullQPS tem prioridade sobre esta definição. Por exemplo, com as predefinições, são permitidas rajadas de até 10 consultas simultâneas, mas têm de ser processadas à taxa predefinida de cinco consultas por segundo. Este comportamento de pico só é usado quando registryPullQPS é superior a 0.
Este campo pode ser definido sempre que criar, atualizar ou fazer uma atualização de um cluster, e a definição persiste nas atualizações de clusters. Para mais
informações, consulte o artigo
Configure as definições de obtenção de imagens do kubelet.
Opcional. Número inteiro (não negativo). Especifica a taxa de processamento de consultas para pedidos de obtenção de imagens do Artifact Registry em consultas por segundo (CPS).
Quando registryPullQPS está definido para um valor superior a 0, a taxa de consultas é restrita a esse número de consultas por segundo. Se
registryPullQPS estiver definido como 0, não existe
restrição na taxa de consultas. O valor predefinido é 5.
Este campo pode ser definido sempre que criar, atualizar ou fazer uma atualização de um cluster, e a definição persiste nas atualizações de clusters. Para mais
informações, consulte o artigo
Configure as definições de obtenção de imagens do kubelet.
Opcional. Booleano (true|false). Este campo
especifica se as obtenções do Artifact Registry são processadas em paralelo ou
uma de cada vez. O valor predefinido é true, que especifica que as obtenções são processadas uma de cada vez. Quando definido como false, o kubelet
extrai imagens em paralelo. Este campo corresponde à opção de configuração do kubelet (v1beta1).serializeImagePulls
Este campo pode ser definido sempre que criar, atualizar ou fazer uma atualização de um cluster, e a definição persiste nas atualizações de clusters. Para mais
informações, consulte o artigo
Configure as definições de obtenção de imagens do kubelet.
Recurso de cluster
Opcional
Mutável
loadBalancer.ports.controlPlaneLBPort
Número. A porta de destino usada para o tráfego enviado para o painel de controlo do Kubernetes (os servidores da API Kubernetes).
Recurso de cluster
Obrigatória
Imutável
loadBalancer.vips.controlPlaneVIP
Obrigatório. Especifica o endereço IP virtual (VIP) para estabelecer ligação ao
servidor da API Kubernetes. Este endereço não pode estar dentro do intervalo de
nenhum endereço IP usado para pools de endereços do equilibrador de carga,
loadBalancer.addressPools.addresses.
Recurso de cluster
Obrigatória
Imutável
loadBalancer.vips.ingressVIP
Opcional. String (endereço IPv4). O endereço IP que escolheu
para configurar no balanceador de carga para tráfego de entrada.
Recurso de cluster
Opcional
Imutável
loadBalancer.localASN
Opcional. String. Especifica o número do sistema autónomo (ASN) para o cluster que está a ser criado. Este campo é usado quando configura a solução de equilíbrio de carga agrupada que usa o protocolo de gateway de fronteira (BGP).
Para mais informações, consulte o artigo
Configure equilibradores de carga agrupados com BGP.
Recurso de cluster
Opcional
Mutável
loadBalancer.bgpPeers
Opcional. Objeto (lista de mapeamentos). Esta secção especifica um ou mais pares do protocolo de gateway de fronteira (BGP) da sua rede local (externa ao cluster). Especifica pares BGP quando configura o equilíbrio de carga do plano de controlo como parte da solução de equilíbrio de carga integrada que usa o BGP. Cada par é especificado com um mapeamento, que consiste num endereço IP, num número do sistema autónomo (ASN) e, opcionalmente, numa lista de um ou mais endereços IP para nós do plano de controlo. Não é possível atualizar a configuração de peering BGP para o equilíbrio de carga do plano de controlo após a criação do cluster.
Opcional. String. O número do sistema autónomo (ASN) da rede que contém o dispositivo de pares externo. Especifique um ASN para cada par BGP que configurar para o equilíbrio de carga do plano de controlo quando configurar a solução de equilíbrio de carga agrupada que usa o BGP.
Para mais informações, consulte o artigo
Configure equilibradores de carga agrupados com BGP.
Recurso de cluster
Opcional
Mutável
loadBalancer.bgpPeers.controlPlaneNodes
Opcional. Matriz de endereços IP (IPv4). Um ou mais endereços IP para
nós do plano de controlo que se ligam ao par BGP externo quando
configura a solução de equilíbrio de carga integrada que usa o BGP. Se não especificar nenhum nó do plano de controlo, todos os nós do plano de controlo estabelecem ligação ao par externo. Se especificar um ou mais endereços IP,
apenas os nós especificados participam em sessões de peering.
Para mais informações, consulte o artigo
Configure equilibradores de carga agrupados com BGP.
Recurso de cluster
Opcional
Mutável
maintenanceBlocks.cidrBlocks
Opcional. Um único endereço IPv4 ou um intervalo de endereços IPv4. Especifique
os endereços IP das máquinas de nós que quer colocar no
modo de manutenção. Para mais informações, consulte o artigo
Coloque os nós no
modo de manutenção.
Por exemplo:
maintenanceBlocks:cidrBlocks:-192.168.1.200# Single machine-192.168.1.100-192.168.1.109# Ten machines
Recurso de cluster
Opcional
Mutável
nodeAccess.loginUser
Opcional. String. Especifique o nome de utilizador não root que quer usar para o acesso à capacidade SUDO sem palavra-passe às máquinas de nós no seu cluster. A sua chave SSH,
sshPrivateKeyPath, tem de
funcionar para o utilizador especificado. As operações de criação e atualização de clusters verificam se é possível aceder às máquinas dos nós com o utilizador e a chave SSH especificados.
Recurso de cluster
Opcional
Mutável
osEnvironmentConfig.addPackageRepo
Opcional. Booleano (true | false). Especifica se deve ou não usar o seu próprio servidor de repositório de pacotes, em vez do repositório Docker apt predefinido. Para usar o seu próprio
repositório de pacotes, defina addPackageRepo como
false. Use esta funcionalidade para ignorar a adição de repositórios de pacotes a cada máquina sem sistema operativo na sua implementação. Para mais
informações, consulte o artigo
Use um servidor de repositório de pacotes privado.
Recurso de cluster
Opcional
Imutável
nodeConfig
Esta secção contém definições para a configuração do nó do cluster.
Recurso de cluster
Opcional
Mutável (apenas atualização)
nodeConfig.containerRuntime (descontinuado)
Descontinuado. A partir da versão 1.13.0, o Google Distributed Cloud suporta
containerd apenas como o tempo de execução do contentor. O campo
containerRuntime foi descontinuado e removido
do ficheiro de configuração do cluster gerado. Para as versões 1.13.0 e superiores do software Google Distributed Cloud, se o ficheiro de configuração do cluster contiver este campo, o valor tem de ser containerd.
Recurso de cluster
Opcional
Mutável (apenas atualização)
nodeConfig.podDensity
Esta secção especifica a configuração da densidade do pod.
Recurso de cluster
Opcional
Imutável
nodeConfig.podDensity.maxPodsPerNode
Opcional. Número inteiro. Especifica o número máximo de pods que podem ser executados num único nó. Para clusters autogeridos, os valores permitidos para
maxPodsPerNode são 32–250 para
clusters de alta disponibilidade (AA) e 64–250
para clusters sem AA. Para clusters de utilizadores, os valores permitidos para
maxPodsPerNode são 32–250.
O valor predefinido, se não for especificado, é 110. Depois de criar o cluster, não é possível atualizar este valor.
O Kubernetes atribui um
bloco CIDR (Classless Inter-Domain Routing)
a cada nó para que cada pod possa ter um endereço IP exclusivo. O tamanho
do bloco CIDR corresponde ao número máximo de pods por nó.
Para mais informações sobre a definição do número máximo de pods por nó,
consulte o artigo Redes de pods.
Recurso de cluster
Opcional
Imutável
nodeConfig.privateRegistries
Esta secção especifica uma configuração de registo privado ao nível do nó para clusters de utilizadores. Os registos privados ao nível do nó destinam-se a utilização com as suas cargas de trabalho para lhe dar mais controlo sobre as obtenções de imagens e a respetiva segurança.
Para clusters de administrador, o registo privado ao nível do nó é especificado
na secção Credentials do
ficheiro de configuração do cluster de administrador.
Quando aplicável, use esta secção para especificar o nome e o espaço de nomes do segredo que foi criado para armazenar o certificado da CA (CA de raiz do servidor) para o registo privado. Se o seu registo local não exigir um certificado TLS privado, pode omitir este bloco.
A lista seguinte mostra a fase de lançamento por versão para configurar
um registo privado ao nível do nó:
String. Este campo especifica o anfitrião e a porta de um único registo privado. Pode especificar o anfitrião com um nome de domínio ou um endereço IP. Não inclua o prefixo http nem https.
O campo host é obrigatório quando especifica um registo privado para um cluster de utilizadores.
A lista seguinte mostra a fase de lançamento por versão para configurar
um registo privado ao nível do nó:
Quando aplicável, use esta secção para especificar o nome e o espaço de nomes do segredo que foi criado para armazenar as credenciais do registo privado.
Use o bloco pullCredentialSecretRef quando configurar
um cluster de utilizadores para dar aos nós acesso a um registo privado que requer
autenticação.
A lista seguinte mostra a fase de lançamento por versão para configurar
um registo privado ao nível do nó:
Opcional. Esta secção contém definições para configurar a estratégia de atualização dos conjuntos de nós de trabalho no seu cluster. Para mais informações, consulte o artigo
Atualizações paralelas.
Recurso de cluster
Opcional
Mutável
nodePoolUpgradeStrategy.concurrentNodePools
Opcional. Booleano (0 ou 1). Predefinição: 1.
Este campo especifica se deve ou não atualizar todos os grupos de nós de trabalho
de um cluster em simultâneo. Por predefinição (1), a atualização é feita
sequencialmente, uma após a outra. Quando define concurrentNodePools
como 0, todos os conjuntos de nós de trabalho no cluster são atualizados
em paralelo.
Esta secção contém informações de configuração para verificações de
estado periódicas. No recurso Cluster, a única definição disponível para verificações de funcionamento periódicas é o campo enable. Para mais
informações, consulte
Verificações de estado periódicas.
Recurso de cluster
Opcional
Mutável
periodicHealthCheck.enable
Opcional. Booleano (true|false). Ative ou
desative as verificações de estado periódicas para o seu cluster. As verificações de
estado periódicas estão ativadas por predefinição em todos os clusters. Pode desativar
as verificações de estado periódicas de um cluster definindo o campo
periodicHealthCheck.enable como false.
Para mais informações, consulte a secção
Desative as verificações de funcionamento periódicas
Recurso de cluster
Opcional
Mutável
profile
Opcional. String. Quando profile está definido como edge
para um cluster autónomo, minimiza o consumo de recursos do
cluster. O perfil de limite está disponível apenas para clusters autónomos.
O perfil de limite tem requisitos de recursos do sistema reduzidos e é
recomendado para dispositivos de limite com restrições de recursos restritivas.
Para ver os requisitos de hardware associados ao perfil de limite, consulte os
requisitos
de recursos para clusters autónomos que usam o perfil de limite.
Recurso de cluster
Opcional
Imutável
proxy
Se a sua rede estiver protegida por um servidor proxy, preencha esta secção.
Caso contrário, remova esta secção.
Recurso de cluster
Opcional
Mutável
proxy.noProxy
String. Uma lista separada por vírgulas de endereços IP, intervalos de endereços IP,
nomes de anfitriões e nomes de domínios que não devem passar pelo servidor
proxy. Quando o cluster envia um pedido para um destes endereços,
anfitriões ou domínios, o pedido é enviado diretamente.
Recurso de cluster
Opcional
Imutável
proxy.url
String. O endereço HTTP do seu servidor proxy. Inclua o número da porta
mesmo que seja o mesmo que a porta predefinida do esquema.
Opcional. Booleano (true|false). Ative ou desative a seccomp ao nível do cluster. Quando este campo está desativado,
os contentores sem um perfil seccomp no ficheiro de configuração do cluster
são executados sem restrições. Quando este campo está ativado, esses mesmos contentores são protegidos através do perfil seccomp predefinido do tempo de execução do contentor. Esta funcionalidade está ativada por predefinição.
Após a criação do cluster, este campo só pode ser ativado/desativado durante a atualização.
Para mais informações, consulte o artigo
Use seccomp to restrict containers.
Recurso de cluster
Opcional
Mutável (apenas atualização)
clusterSecurity.enableRootlessContainers
Opcional. Booleano (true|false). Ative ou desative os contentores do sistema bare metal sem acesso root. Quando este campo está ativado, os contentores do sistema de hardware sem sistema operativo são executados como um utilizador não raiz com um ID do utilizador no intervalo de 2000 a 5000. Quando esta opção está desativada, os contentores do sistema bare metal são executados como utilizador root. Por predefinição, esta funcionalidade está ativada. A desativação desta funcionalidade é fortemente desaconselhada, uma vez que a execução de contentores como utilizador root representa um risco de segurança. Após a criação do cluster, este campo só pode ser ativado/desativado durante a atualização. Para mais informações, consulte o artigo Não execute contentores como utilizador root.
Recurso de cluster
Opcional
Mutável (apenas atualização)
clusterSecurity.authorization
Opcional. A autorização configura o acesso do utilizador ao cluster.
Recurso de cluster
Opcional
Mutável
clusterSecurity.authorization.clusterAdmin
Opcional. Especifica o administrador do cluster para este cluster.
Este campo recebe uma matriz de nomes de contas. As contas de utilizador e as contas de serviço são suportadas. Para os utilizadores, especifica os respetivos endereços de email da conta do Google Ads. Google Cloud Para contas de serviço, especifique
os endereços de email no seguinte formato:
SERVICE_ACCOUNT@PROJECT_ID.iam.gserviceaccount.com.
Por exemplo:
Quando atualizar um cluster para adicionar uma conta, certifique-se de que inclui todas as contas na lista (contas existentes e novas), uma vez que o comando de atualização substitui a lista pelo que especificar na atualização.
Este campo aplica-se apenas a clusters que podem executar cargas de trabalho. Por exemplo, não pode especificar gcpAccounts para clusters de administrador.
Recurso de cluster
Opcional
Mutável
clusterSecurity.startUIDRangeRootlessContainers
Opcional. Número inteiro. Valor predefinido: 2000. Os contentores do sistema
no software Google Distributed Cloud ajudam a instalar e gerir clusters.
Os IDs de utilizadores (UIDs) e os IDs de grupos (GIDs) usados por estes contentores podem ser controlados pelo campo startUIDRangeRootlessContainers na especificação do cluster. Os contentores do sistema usam os UIDs e os GIDs no intervalo de startUIDRangeRootlessContainers a startUIDRangeRootlessContainers + 2999, o que dá um intervalo de 2000 a 4999 por predefinição. Quando atualiza
startUIDRangeRootlessContainers, selecione um valor que garanta que
os espaços UID e GID usados pelos contentores do sistema não se sobrepõem
aos atribuídos às cargas de trabalho do utilizador. O valor de startUIDRangeRootlessContainers só pode ser alterado durante as atualizações.
Obrigatório. String. Use o campo path para especificar o caminho da máquina anfitriã onde os discos montados podem ser descobertos. É criado um PersistentVolume (PV) local para cada montagem. O caminho predefinido é
/mnt/localpv-share. Para ver instruções sobre como configurar as montagens de nós, consulte o artigo Configure as montagens de nós de LVP.
Recurso de cluster
Obrigatória
Imutável
storage
Esta secção contém definições para o armazenamento de clusters.
Recurso de cluster
Obrigatória
Imutável
storage.lvpNodeMounts
Esta secção especifica a configuração (caminho) para volumes persistentes locais suportados por discos montados. Tem de formatar e montar estes discos
manualmente. Pode realizar esta tarefa antes ou depois da criação do cluster. Para
mais informações, consulte
montagens de nós
LVP.
Recurso de cluster
Obrigatória
Imutável
storage.lvpShare
Esta secção especifica a configuração para volumes persistentes locais
com base em subdiretórios num sistema de ficheiros partilhado. Estas subdiretorias são criadas automaticamente durante a criação do cluster.
Para mais informações, consulte o artigo sobre a
partilha de LVP.
Recurso de cluster
Obrigatória
Imutável
storage.lvpShare.path
Obrigatório. String. Use o campo path para especificar o caminho da máquina anfitriã onde é possível criar subdiretórios. É criado um PersistentVolume (PV) local para cada subdiretório. Para ver
instruções sobre como configurar a partilha de LVP, consulte
Configurar
uma partilha de LVP.
Recurso de cluster
Obrigatória
Imutável
storage.lvpShare.numPVUnderSharedPath
Obrigatório. String. Especifique o número de subdiretórios a criar em
lvpShare.path. O valor predefinido é 5. Para ver
instruções sobre como configurar a partilha de LVP, consulte
Configurar
uma partilha de LVP.
Recurso de cluster
Obrigatória
Imutável
storage.lvpShare.storageClassName
Obrigatório. String. Especifique a StorageClass a usar para criar volumes persistentes. A StorageClass é criada durante a criação do cluster. O valor predefinido é local-shared. Para ver instruções sobre como
configurar a partilha de LVP, consulte
Configurar
uma partilha de LVP.
Recurso de cluster
Opcional
Imutável
type
Obrigatório. String. Especifica o tipo de cluster. O modelo de implementação padrão consiste num único cluster de administrador e um ou mais clusters de utilizador, que são geridos pelo cluster de administrador.
O software Google Distributed Cloud suporta os seguintes tipos de clusters:
Admin: cluster usado para gerir clusters de utilizadores.
Utilizador: cluster usado para executar cargas de trabalho.
Híbrido: um único cluster para o administrador e as cargas de trabalho, que também pode gerir clusters de utilizadores.
Autónomo: cluster único que se pode administrar a si próprio e que também pode executar cargas de trabalho, mas não pode criar nem gerir outros clusters de utilizadores.
O tipo de cluster é especificado na criação do cluster e não pode ser alterado para atualizações ou upgrades. Para mais informações sobre como criar um cluster, consulte o artigo Criar clusters: vista geral.
Valores permitidos: admin | user | hybrid | standalone
Não é possível modificar este valor para clusters existentes.
Opcional. Use esta secção para especificar o modo de funcionamento da
escala automática vertical de pods. Esta funcionalidade está disponível na
pré-visualização para a versão 1.33
e clusters posteriores.
Por exemplo:
apiVersion:baremetal.cluster.gke.io/v1kind:Clustermetadata:name:cluster1namespace:cluster-cluster1annotations:preview.baremetal.cluster.gke.io/vertical-pod-autoscaler:enablespec:# ... other cluster spec fieldsverticalPodAutoscaling:# Set to true for automated updatesenableUpdater:true# Set to true to reduce recommender memory usageenableMemorySaver:true
Pode atualizar o cluster em qualquer altura para ativar, desativar ou configurar o escalamento automático vertical de pods. Para mais informações sobre como
ativar e usar a escala automática vertical de pods, consulte
Configure a escala automática
vertical de pods.
Opcional. Booleano (true|false). Ative ou
desative o modo de poupança de memória para a escala automática vertical de pods. O modo de poupança de memória
reduz a quantidade de memória do componente de recomendação
de escala automática vertical de pods. Quando define enableMemorySaver como
true, o recomendador apenas acompanha e calcula
agregações para agrupamentos que tenham um recurso
personalizado VerticalPodAutoscaler correspondente. O modo de poupança de memória
está desativado (false) por predefinição.
Opcional. Booleano (true|false). Especifique o modo de aplicação das recomendações de recursos de pods:
No modo de recomendação (enableUpdater: false),
a escala automática vertical de pods analisa a utilização de recursos e publica
valores recomendados para pedidos e limites de CPU e memória na
secção de estado dos recursos personalizados VerticalPodAutoscaler
que cria. No modo de recomendação, para implementar as definições de recursos recomendadas, tem de editar os recursos manualmente.
No modo de atualização automática (enableUpdater: true),
a escala automática vertical de pods analisa a utilização de recursos e publica
valores recomendados para pedidos e limites de CPU e memória na
secção de estado dos recursos personalizados VerticalPodAutoscaler que criar. Em seguida, a escala automática vertical de pods aplica automaticamente as recomendações.
Por predefinição, a escala automática vertical de pods é executada no modo de recomendação
(enableUpdater: false).
A escala automática vertical de pods está disponível para
pré-visualização para clusters da versão 1.33
e posteriores. Pode atualizar o cluster em qualquer altura para especificar o modo de aplicação das recomendações de recursos de pods. Para mais informações, consulte o artigo
Compreenda os
modos de escalabilidade automática de pods verticais.
Recurso de cluster
Opcional
Mutável
name
Obrigatório. String. Normalmente, o nome do espaço de nomes usa um padrão de
cluster-CLUSTER_NAME, mas o prefixo
cluster- não é estritamente necessário desde
o lançamento do software Google Distributed Cloud 1.7.2.
Não é possível modificar este valor para clusters existentes.
Recurso de espaço de nomes
Obrigatória
Imutável
clusterName
String. Obrigatório. O nome do cluster ao qual está a adicionar o grupo de nós. Crie o recurso do node pool no mesmo espaço de nomes que o cluster associado e referencie o nome do cluster neste campo. Para
mais informações, consulte
Adicione e remova
pools de nós num cluster.
Opcional. Número inteiro (não negativo). Especifica a quantidade máxima de pedidos de obtenção de imagens que podem ser adicionados à fila de processamento para processar picos nos pedidos. Assim que um pedido de obtenção é iniciado, pode adicionar um novo pedido à fila. O valor predefinido é 10. Este campo corresponde à opção de configuração do kubelet (v1beta1).registryBurst
O valor de registryPullQPS tem prioridade sobre esta definição. Por exemplo, com as predefinições, são permitidas rajadas de até 10 consultas simultâneas, mas têm de ser processadas à taxa predefinida de cinco consultas por segundo. Este comportamento de pico só é usado quando registryPullQPS é superior a 0.
Este campo pode ser definido sempre que criar, atualizar ou fazer uma atualização de um cluster, e a definição persiste nas atualizações de clusters. Para mais
informações, consulte o artigo
Configure as definições de obtenção de imagens do kubelet.
Recurso NodePool
Opcional
Mutável
kubeletConfig.registryPullQPS
Opcional. Número inteiro (não negativo). Especifica a taxa de processamento de consultas para pedidos de obtenção de imagens do Artifact Registry em consultas por segundo (CPS).
Quando registryPullQPS está definido para um valor superior a 0, a taxa de consultas é restrita a esse número de consultas por segundo. Se
registryPullQPS estiver definido como 0, não existe
restrição na taxa de consultas. O valor predefinido é 5.
Este campo pode ser definido sempre que criar, atualizar ou fazer uma atualização de um cluster, e a definição persiste nas atualizações de clusters. Para mais
informações, consulte o artigo
Configure as definições de obtenção de imagens do kubelet.
Recurso NodePool
Opcional
Mutável
kubeletConfig.serializeImagePulls
Opcional. Booleano (true|false). Este campo
especifica se as obtenções do Artifact Registry são processadas em paralelo ou
uma de cada vez. O valor predefinido é true, que especifica que as obtenções são processadas uma de cada vez. Quando definido como false, o kubelet
extrai imagens em paralelo. Este campo corresponde à opção de configuração do kubelet (v1beta1).serializeImagePulls
Este campo pode ser definido sempre que criar, atualizar ou fazer uma atualização de um cluster, e a definição persiste nas atualizações de clusters. Para mais
informações, consulte o artigo
Configure as definições de obtenção de imagens do kubelet.
Recurso NodePool
Opcional
Mutável
taints
Opcional. Objeto. Uma restrição de nó permite-lhe marcar um nó para que o programador evite ou impeça a sua utilização para determinados pods. Uma restrição
consiste num par de chave-valor e num efeito associado. Os valores key e value são strings que usa para identificar a contaminação, e o valor effect especifica como os pods são processados para o nó. O objeto taints pode ter
várias contaminações.
O campo effect pode assumir um dos seguintes valores:
NoSchedule: nenhum pod consegue agendar no nó, a menos que tenha uma tolerância correspondente.
PreferNoSchedule - o sistema evita colocar um pod que não tolera a falha no nó, mas não é obrigatório.
NoExecute - os pods que não toleram a falha são removidos imediatamente e os pods que toleram a falha nunca são removidos.
Para o software Google Distributed Cloud, as manchas são reconciliadas com os
nós do conjunto de nós, a menos que a anotação baremetal.cluster.gke.io/label-taint-no-sync
seja aplicada ao cluster. Para mais informações sobre
contaminações, consulte
Contaminações e tolerâncias.
Por exemplo:
taints:-key:statusvalue:testpooleffect:NoSchedule
Recurso NodePool
Opcional
Mutável
labels
Opcional. Mapeamento (pares de chave-valor).
As etiquetas são reconciliadas com os nós do node pool, a menos que a anotação baremetal.cluster.gke.io/label-taint-no-sync seja aplicada ao cluster. Para mais informações sobre etiquetas, consulte o artigo
Etiquetas e seletores.
Recurso NodePool
Opcional
Mutável
upgradeStrategy
Opcional. Esta secção contém definições para configurar a estratégia de atualização para os nós num conjunto de nós de trabalho. Para mais informações, consulte o artigo
Atualizações paralelas.
Nota: não adicione esta secção para pools de nós do plano de controlo ou do balanceador de carga.
Recurso NodePool
Opcional
Mutável
upgradeStrategy.parallelUpgrade
Opcional. Esta secção contém definições para configurar atualizações de nós paralelos para um conjunto de nós de trabalho. Numa atualização de cluster predefinida típica, cada nó do cluster é atualizado sequencialmente, um após o outro. Pode
configurar pools de nós de trabalho para que vários nós sejam atualizados em paralelo
quando atualiza o cluster. A atualização de nós em paralelo acelera significativamente as atualizações de clusters, especialmente para clusters com centenas de nós.
Para um conjunto de nós de trabalho, pode especificar o número de nós a atualizar
em simultâneo e pode definir um limite mínimo para o número de
nós capazes de executar cargas de trabalho durante o processo de atualização.
Opcional. Número inteiro (positivo). Predefinição: 1. Máximo: 15.
Por predefinição (1), os nós são atualizados sequencialmente,
um após o outro. Quando define concurrentNodes para um número superior a 1, este campo especifica o número de nós a atualizar em paralelo. Tenha em atenção as seguintes restrições para concurrentNodes:
O valor não pode exceder o menor de 50% do número de nós no conjunto de nós ou o número fixo 15. Por exemplo, se o seu conjunto de nós tiver 20 nós, não pode especificar um valor superior a 10. Se o seu conjunto de nós tiver 100 nós, 15 é o valor máximo que pode especificar.
Quando usa este campo juntamente com o campo minimumAvailableNodes, os respetivos valores combinados não podem exceder o número total de nós
no conjunto de nós. Por exemplo, se o seu conjunto de nós tiver 20 nós e
minimumAvailableNodes estiver definido como 18,
concurrentNodes não pode exceder 2.
As atualizações paralelas não respeitam o orçamento de interrupção de pods (PDB).
Se as suas cargas de trabalho forem sensíveis a interrupções, recomendamos que
especifique minimumAvailableNodes para garantir que uma determinada quantidade
de nós permanece disponível para executar cargas de trabalho durante o
processo de atualização. Para mais informações, consulte o artigo
Atualizações paralelas.
Opcional. Número inteiro (não negativo). Predefinição: depende de concurrentNodes. Para mais detalhes sobre os valores predefinidos de minimumAvailableNodes, consulte
Predefinições de atualização paralela. O minimumAvailableNodes permite-lhe especificar
a quantidade de nós no conjunto de nós que tem de permanecer disponível
durante o processo de atualização. Um nó é considerado indisponível quando está a ser atualizado ativamente. Um nó também é considerado indisponível quando qualquer uma das seguintes condições for verdadeira:
O nó está no modo de manutenção
O nó está a ser reconciliado
O nó está parado a meio de uma atualização
Quando usa este campo juntamente com o campo concurrentNodes, os respetivos valores combinados não podem exceder o número total de nós no
conjunto de nós. Por exemplo, se o seu conjunto de nós tiver 20 nós e concurrentNodes estiver definido como 10, minimumAvailableNodes não pode exceder 10.
Um valor elevado para minimumAvailableNodes minimiza os problemas de capacidade para agendar pods e, por conseguinte, ajuda a proteger as cargas de trabalho durante uma atualização do cluster. No entanto, um valor elevado para minimumAvailableNodes
aumenta o risco de uma atualização ficar bloqueada à espera que os nós
fiquem disponíveis. Para mais informações, consulte o artigo
Atualizações paralelas.
Recurso NodePool
Opcional
Mutável
privateRegistries
Opcional. Use esta secção para especificar um registo privado a usar para imagens de carga de trabalho. Este método de configuração do registo privado na secção de credenciais do ficheiro de configuração do cluster destina-se a clusters híbridos ou autónomos que tenham apenas pools de nós de trabalho.
String. Este campo especifica o anfitrião e a porta de um único registo privado. Pode especificar o anfitrião com um nome de domínio ou um endereço IP. Não inclua o prefixo http nem https.
O campo host é obrigatório quando especifica um registo privado para um cluster híbrido ou autónomo.
Por exemplo:
-host:10.200.0.2:5007
Credenciais
Opcional
Mutável
privateRegistries.caCertPath
Opcional. String. Caminho do ficheiro de certificado da CA (CA raiz do servidor) se o servidor de registo usar um certificado TLS privado. Se o seu registo local
não exigir um certificado TLS privado, pode omitir este campo.
Credenciais
Opcional
Mutável
privateRegistries.pullCredentialConfigPath
Opcional. String. Caminho do ficheiro de configuração da CLI do Docker, config.json. O Docker guarda as definições de autenticação no ficheiro de configuração. Este campo aplica-se
apenas à utilização de registos privados ao nível do nó.
Use o campo pullCredentialConfigPath quando
configurar um cluster híbrido ou autónomo para dar aos nós acesso a um registo
privado que requer autenticação.
Credenciais
Opcional
Mutável
registryMirrors
Opcional. Use esta secção para especificar um espelho do registo a usar para instalar clusters, em vez do Artifact Registry (gcr.io). Para mais informações sobre a utilização de um espelho do registo, consulte o artigo Use um espelho do registo para imagens de contentores.
String. O ponto final da replicação, que consiste no endereço IP e no número da porta do servidor de registo. Opcionalmente, pode usar o seu próprio espaço de nomes
no servidor de registo em vez do espaço de nomes raiz. Sem um espaço de nomes, o formato do ponto final é REGISTRY_IP:PORT. Quando usa um espaço de nomes, o formato do ponto final é REGISTRY_IP:PORT/v2/NAMESPACE.
O elemento /v2 é obrigatório quando especifica um espaço de nomes.
O campo endpoint é obrigatório quando especifica um
espelho do registo. Pode especificar vários espelhos e pontos finais.
Opcional. String. Caminho do ficheiro de certificado da CA (CA raiz do servidor) se o servidor de registo usar um certificado TLS privado. Se o seu registo local
não exigir um certificado TLS privado, pode omitir este campo.
Espelho do registo
Opcional
Mutável
registryMirrors.pullCredentialConfigPath
Opcional. String. Caminho do
ficheiro de configuração da CLI do Docker, config.json. O Docker guarda as definições de autenticação no ficheiro de configuração. Este campo aplica-se apenas à utilização de espelhos de registo. Se o seu servidor de registo não exigir um ficheiro de configuração do Docker para autenticação, pode omitir este campo.
Opcional. Uma matriz de nomes de domínio para anfitriões que são replicados localmente
para a replicação do registo fornecida (endpoint). Quando o
tempo de execução do contentor encontra pedidos de obtenção de imagens de um
anfitrião especificado, verifica primeiro a replicação do registo local. Para mais informações, consulte o artigo
Crie clusters a partir da replicação do registo.
O ficheiro de configuração do cluster gerado pelo bmctl
inclui campos para especificar caminhos para ficheiros de credenciais e chaves no
sistema de ficheiros local. Estas credenciais e chaves são necessárias para associar os seus clusters entre si e ao seu projeto do Google Cloud .
String. O caminho para uma chave de conta de serviço que tenha as autorizações do IAM necessárias para aceder aos recursos do Artifact Registry.
Credenciais
Opcional
Mutável
sshPrivateKeyPath
String. O caminho para a chave privada de SSH. O SSH é necessário para o acesso ao nó.
Credenciais
Opcional
Mutável
gkeConnectAgentServiceAccountKeyPath
String. O caminho para a chave da conta de serviço do agente.
O Google Distributed Cloud usa esta conta de serviço para manter uma ligação entre os seus clusters no local e o Google Cloud.
String. O caminho para a chave da conta de serviço de registo.
O Google Distributed Cloud usa esta conta de serviço para registar os seus clusters de utilizadores no Google Cloud.
String. O caminho para a chave da conta de serviço de operações.
O Google Distributed Cloud usa a conta de serviço de operações para
fazer a autenticação no Google Cloud Observability para aceder à
API Logging e à API Monitoring. Com a exceção dos clusters de utilizadores, a chave da conta de serviço de operações é obrigatória. Os clusters de utilizadores usam as credenciais especificadas para o
cluster de gestão (administrador ou híbrido).
Não pode desativar o Cloud Logging e o Cloud Monitoring para os seus clusters.
Para ver instruções sobre a configuração desta conta de serviço, consulte o artigo
Configure contas de serviço.
Credenciais
Obrigatória
Mutável
ipv4
Define a configuração para o intervalo CIDR IPv4. Tem de fornecer, pelo menos, um dos campos ipv4 ou ipv6 para o recurso ClusterCidrConfig.
Recurso ClusterCIDRConfig
Opcional
Imutável
ipv4.cidr
String. Define o bloco CIDR do nó IPv4. Os nós só podem ter um alcance de cada família. Este bloco CIDR tem de corresponder ao CIDR do pod descrito no recurso Cluster.
Por exemplo:
ipv4:cidr:"10.1.0.0/16"
Recurso ClusterCIDRConfig
Obrigatória
Imutável
ipv4.perNodeMaskSize
Número inteiro. Define o tamanho da máscara para o bloco CIDR IPv4 do nó. Por exemplo, o valor 24 é traduzido para netmask /24. Certifique-se de que a máscara de sub-rede do bloco CIDR do nó é superior à quantidade máxima de pods que o kubelet pode agendar, que é definida na flag --max-pods do kubelet.
Recurso ClusterCIDRConfig
Obrigatória
Imutável
ipv6
Define a configuração para o intervalo CIDR IPv6. Tem de fornecer, pelo menos, um dos campos ipv4 ou ipv6 para o recurso ClusterCidrConfig.
Recurso ClusterCIDRConfig
Opcional
Imutável
ipv6.cidr
String. Define o bloco CIDR do nó IPv6. Os nós só podem ter um alcance de cada família.
Por exemplo:
ipv6:cidr:"2620:0:1000:2631:3:10:3:0/112"
Recurso ClusterCIDRConfig
Obrigatória
Imutável
ipv6.perNodeMaskSize
Número inteiro. Define o tamanho da máscara para o bloco CIDR IPv6 do nó. Por exemplo, o valor 120 é traduzido para netmask /120. Certifique-se de que a máscara de sub-rede do bloco CIDR do nó é superior à quantidade máxima de pods que o kubelet pode agendar, que é definida na flag --max-pods do kubelet.
Recurso ClusterCIDRConfig
Obrigatória
Imutável
nodeSelector.matchLabels
Define a que nós a configuração CIDR é aplicável. Um seletor de nós vazio funciona como uma predefinição que se aplica a todos os nós.
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Informações incorretas ou exemplo de código","incorrectInformationOrSampleCode","thumb-down"],["Não contém as informações/amostras de que eu preciso","missingTheInformationSamplesINeed","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 2025-09-19 UTC."],[],[],null,[]]