Nesta página, listamos os problemas conhecidos do GKE. Esta página é destinada a administradores e arquitetos que gerenciam o ciclo de vida da infraestrutura de tecnologia subjacente e respondem a alertas e páginas quando os objetivos de nível de serviço (SLOs) não são atendidos ou os aplicativos falham.
Nesta página, listamos os problemas conhecidos de todas as versões compatíveis e das duas versões secundárias que precedem imediatamente a versão mais antiga em suporte estendido. Depois que uma versão chega ao fim do suporte estendido, todos os problemas N-2 são removidos. Por exemplo, quando a versão 1.30 chega ao fim do suporte estendido, os problemas conhecidos específicos das versões 1.28 e anteriores são removidos.
Se você faz parte do Google Developer Program, salve esta página para receber notificações quando uma nota da versão relacionada a ela for publicada. Para saber mais, consulte Páginas salvas.
Para filtrar os problemas conhecidos por uma versão ou categoria do produto, selecione os filtros nos menus suspensos a seguir.
Selecione sua versão do GKE:
Selecione a categoria do seu problema:
Ou pesquise seu problema:
| Categoria | Versões identificadas | Versões corrigidas | Problema e solução alternativa |
|---|---|---|---|
| Operação |
|
|
As solicitações HTTP POST de tokens do servidor de metadados falham com um erro 400 Bad Request
As cargas de trabalho que usam a Federação de Identidade da Carga de Trabalho para GKE
para autenticar APIs do Google Cloud solicitando tokens de acesso da conta de serviço ou tokens de identidade
do servidor de metadados do GKE (como
Esse problema ocorre quando um aplicativo, uma biblioteca de cliente ou um gateway de API envia uma solicitação HTTP Para corrigir o problema, faça upgrade para a versão de patch mais recente na versão secundária de qualquer canal de lançamento. Alternativa:
Para resolver esse problema, configure o aplicativo, a biblioteca de cliente ou o gateway de API
para usar o método curl -H "Metadata-Flavor: Google" "http://metadata.google.internal/computeMetadata/v1/instance/service-accounts/default/token"
Se a carga de trabalho usar um SDK ou gateway de terceiros (como o MuleSoft Flex Gateway, o IBM App Connect
ou scripts HTTP personalizados) que, por padrão, envia solicitações |
| Upgrades e atualizações |
|
A definir |
Pods não programados e cota esgotada durante upgrades secundários em duas etapas para o plano de controle.
Durante os upgrades de versão secundária em duas etapas para planos de controle em clusters do Autopilot que usam
pods de duração estendida, novos
pools de nós podem ser provisionados usando a versão anterior do nó. O escalonador automático de cluster avalia os nós recém-provisionados em relação à versão atualizada do plano de controle, detecta uma incompatibilidade de versão e aplica a restrição Esse comportamento impede a programação de pods e aciona um loop de escalonamento infinito. Em vez de escalonar verticalmente um pool de nós atual, o provisionamento automático de nós cria um novo pool de nó único em cada iteração de escalonamento vertical para acomodar as cargas de trabalho pendentes. Esse loop gera centenas de pools de nós vazios separados que podem esgotar as cotas regionais de grupos gerenciados de instâncias. Alternativa: Para resolver o loop de escalonamento, conclua manualmente o upgrade do plano de controle executando o seguinte comando: Como alternativa, aplique a seguinte tolerância às cargas de trabalho afetadas para que elas possam ser programadas nos nós de versão anterior: |
| Operação | 1.37.0-gke.2941000 e mais recente | 1.37.1-gke.1131000 |
Os nós que montam volumes NFS acumulam entradas de montagem e param de criar contêineresEm nós que executam versões afetadas, a montagem de um volume NFS deixa entradas extras na tabela de montagem do nó. Além disso, quando um pod que usa um volume NFS é encerrado, as tentativas de desmontagem falham, fazendo com que o Quando a tabela de montagem atinge o limite do kernel, o ambiente de execução do contêiner não pode mais criar contêineres nesse nó. O nó para de executar novos pods, pode informar um status Nos eventos do pod e nos registros MountVolume.SetUp failed for volume "VOLUME_NAME" : mount failed: exit status 1 mount: /etc: mount(2) system call failed: No space left on device Esse problema afeta os pools de nós que montam volumes NFS com o driver NFS integrado do Kubernetes. Os nós que não usam o driver NFS em árvore para montar volumes NFS não são afetados. Alternativa: Para recuperar um nó afetado, reinicie ou recrie-o. As entradas de montagem extras existem apenas no estado de execução do nó, então são apagadas quando o nó é reiniciado. Os pods que ficarem presos no estado kubectl delete pod POD_NAME --namespace NAMESPACE --force --grace-period=0 Para evitar que o problema se repita em clusters Standard, faça downgrade dos pools de nós que montam volumes NFS para uma versão 1.36. Defina uma exclusão de manutenção para que o GKE não faça o upgrade automático dos pools de nós para uma versão afetada. Se um cluster do Autopilot executar uma versão afetada, use uma das seguintes opções:
|
| Upgrades | 1.34.9-gke.1065000 e mais recentes, 1.35.6-gke.1049000 e mais recentes e todas as versões de patch 1.36 | 1.34.10-gke.1328000 e mais recentes, 1.35.8-gke.1026000 e mais recentes, 1.36.4-gke.1058000 e mais recentes (ainda não há correção disponível para 1.37) |
Falhas na carga de trabalho da GPU A4X Max (GB300)A criação ou o upgrade de pools de nós A4X Max ( Solução: Faça upgrade de cada cluster e pool de nós afetado para uma versão corrigida. O GKE impede a criação de pools de nós A4X Max com versões afetadas e não faz upgrade automático dos pools de nós para as versões afetadas. O GKE não impede upgrades manuais para as versões afetadas. No entanto, para evitar as falhas, recomendamos não fazer upgrade para as versões afetadas. Alternativa: Se não for possível fazer upgrade, exclua todos os pools de nós do A4X Max que estão executando versões afetadas e recrie os pools de nós usando uma versão anterior não afetada. Como a capacidade máxima do A4X precisa ser obtida por uma reserva, você não vai perder capacidade ao excluir os pools de nós. |
| Operação | Versões 1.33 anteriores à 1.33.5-gke.2469000 e versões 1.34 anteriores à 1.34.1-gke.2037001 | 1.33.5-gke.2469000 e mais recente, 1.34.1-gke.2037001 e mais recente, 1.35 e mais recente |
Nós de GPU ou TPU travados com taints de encerramento de nó iminente após a manutenção do hostEm clusters do GKE com nós de acelerador (GPU ou TPU) que executam versões afetadas, os nós podem ficar presos com as restrições Alternativa: Para resolver o estado de bloqueio, remova manualmente os rótulos de manutenção ativa gerenciada do GKE e as restrições dos nós afetados. Se você remover apenas as restrições, o controlador de manutenção do GKE as reaplicará automaticamente. Para limpar os rótulos e as restrições, execute os seguintes comandos: kubectl label nodes NODE_NAME cloud.google.com/active-node-maintenance- kubectl label nodes NODE_NAME cloud.google.com/scheduled-maintenance-time- kubectl label nodes NODE_NAME cloud.google.com/scheduled-maintenance-time-latest- kubectl taint nodes NODE_NAME cloud.google.com/impending-node-termination- kubectl taint nodes NODE_NAME cloud.google.com/maintenance-window-started- Substitua |
| Operação |
|
1.34.1-gke.1829001 e mais recentes |
Falhas de admissão de pods para cargas de trabalho da TPU v7 devido à geração de relatórios com uma contagem incorreta de chips.O GKE anuncia incorretamente oito chips de TPU alocáveis para aceleradores de TPU v7 (tpu7x) com uma topologia 2x2x1, que fisicamente contém apenas quatro chips. Essa incompatibilidade de relatórios impede a programação de pods para cargas de trabalho da TPU v7. A arquitetura de chiplet duplo da TPU v7 não é processada corretamente em versões anteriores, o que resulta em falhas de admissão de pods. Dependendo dos recursos de TPU solicitados, os seguintes erros ocorrem:
Alternativa: Para resolver esse problema, faça upgrade do cluster do GKE para a versão 1.34.1-gke.1829001 ou mais recente. |
| Operação | 1.35.3-gke.1234000 e mais recente | A definir |
O cliente do Lustre não usa NICs secundárias em nós com várias NICsEm nós do GKE com várias placas de rede (NICs), o driver CSI do Managed Lustre é ativado por padrão para usar todas as NICs disponíveis para agregar largura de banda, distribuindo o tráfego de armazenamento TCP entre as interfaces de rede. No entanto, devido a um problema conhecido, os clientes do Lustre a partir da versão Alternativa: Se as cargas de trabalho exigirem agregação de largura de banda de várias NICs para o Managed Lustre, faça downgrade dos pools de nós para uma versão do GKE anterior à 1.35.3-gke.1234000, como 1.35.2-gke.1842000. |
| Operação | 1.35 e mais recentes | A definir |
Tempo limite de conexão ou conexão recusada para fluxos redirecionados ao servidor de metadados do GKENo GKE versão 1.35 e mais recentes, as cargas de trabalho que usam a Identidade da carga de trabalho para autenticação nas APIs do Google Cloud podem apresentar tempos limite de conectividade temporários ou conexões recusadas com o servidor de metadados do GKE imediatamente após a inicialização do nó. Alternativa: Para recomendações e soluções alternativas, consulte Resolver erros de tempo limite na inicialização do pod. |
| Operação | 1.33.8-gke.1026000 e mais recente | 1.35.1 e mais recentes |
O shim do gVisor não faz a limpeza e registra o erro
|
| Operação | 1.35.0-gke.2232000 e mais recente | 1.35.3-gke.1.35.3-gke.1290000 e mais recentes |
Os volumes dinâmicos usam o tipo de disco padrão como substitutoAs cargas de trabalho que usam volumes dinâmicos no GKE versão 1.35.0-gke.2232000 ou mais recente podem não ser programadas ou anexadas. Esse problema também pode fazer com que os volumes sejam provisionados usando o Isso ocorre porque o servidor de nós do PDCSI não consegue preencher o objeto Alternativa: Faça upgrade para a versão 1.35.3-gke.1290000 ou mais recente. |
| Upgrades e atualizações |
|
|
Problemas de inicialização de pods durante upgrades para o GKE 1.35 em clusters do GKE Dataplane V2Clusters que fazem upgrade do plano de controle para a versão 1.35.0-gke.2232000 e posteriores do GKE de versões
anetd.
As novas cargas de trabalho não serão iniciadas durante o lançamento do
Isso ocorre porque o GKE usa o operador identity-management-mode, que exige que todos os agentes e o operador tenham uma visualização sincronizada de rótulos relevantes para a identidade. A partir do GKE 1.35.0-gke.2232000, os rótulos Alternativa:
|
| Upgrades e atualizações |
|
|
Atrasos no agendamento de pods em novos nós com a política de rede do Calico ativada
Em clusters do GKE com a política de rede do Calico ativada, uma regressão
nas versões afetadas pode causar atrasos significativos na programação de pods em nós novos ou recriados.
Esses atrasos podem fazer com que os nós permaneçam no estado O problema é causado pelo script de inicialização do Calico CNI, que formata incorretamente o URL do servidor da API Kubernetes para endereços IPv4, colocando-os entre colchetes ([]). Essa abordagem causa um erro de análise de URL ao criar novas sandbox de pods, visível nos registros do kubelet:
Alternativa: A versão do componente do Calico é determinada pela versão do plano de controle do cluster. Para mitigar esse problema, faça upgrade do plano de controle do cluster para uma das versões corrigidas. Depois de fazer upgrade do plano de controle, recrie os nós nos pools de nós para garantir que eles usem o formato correto de URL do servidor de API Kubernetes. Para isso, faça um upgrade no local do pool de nós para a mesma versão ou uma mais recente ou recrie manualmente os pools de nós. |
| Desempenho |
|
|
O desempenho da rede de uso geral cai nos tipos de máquina de GPU das séries A e G4Os clusters do GKE com nós de GPU da série A e G4 mostram desempenho degradado para redes de uso geral no GKE 1.32.8-gke.1134000 e versões mais recentes do GKE 1.32, e no GKE 1.33.3-gke.1392000 e versões mais recentes. A degradação de desempenho em redes de uso geral afeta os tipos de máquina GPU, incluindo as séries de máquinas A3, A4, A4X e G4. O GPUDirect-TCPXO no A3 Mega e o GPUDirect-RDMA no A3 Ultra, A4 e A4X não são afetados. Isso ocorre porque o script no nível do nó ( Alternativa: Faça upgrade de cada pool de nós afetado para uma versão corrigida. |
| Desempenho |
|
|
O desempenho do GPUDirect-TCPX cai no A3 HighOs clusters do GKE com nós A3 High ( Isso ocorre porque o script no nível do nó ( Alternativa: Para pools de nós do GKE 1.32, faça upgrade das versões do pool de nós do GKE para 1.32.11-gke.1075000 ou mais recente. Para pools de nós do GKE 1.33 e mais recentes, faça upgrade das versões para 1.33.5-gke.2392000 ou mais recente.1392000. Para pools de nós do GKE 1.34, consulte O GPUDirect-TCPX não está disponível com A3 High para o GKE versão 1.34 e mais recente. |
| Upgrades | 1,35 |
1.35.0-gke.2232000 e mais recente. |
Duplicação de identidade do Cilium em clusters do GKE Dataplane V2Os clusters do GKE que executam a versão 1.35 com o GKE Dataplane V2 ativado podem ter um aumento no número de recursos personalizados Em clusters regionais e zonais, a programação de uma nova carga de trabalho pode causar duplicação temporária da identidade do Cilium. Essa duplicação ocorre porque os pods recebem uma identidade no momento da criação com base nos rótulos iniciais e outra identidade depois que os rótulos de topologia são adicionados quando o pod é programado para um nó. Em clusters regionais, o número de identidades também pode aumentar em um fator proporcional ao número de zonas abrangidas pelo cluster. Impacto: Se o número total de identidades exceder 65.535, talvez não seja possível programar novas cargas de trabalho. Alternativa: Para limitar o número total de identidades, evite adicionar rótulos com um grande número de valores exclusivos aos pods. Para mais informações, consulte a seguinte documentação do Cilium: Os upgrades manuais precisam ser feitos a partir das versões 1.34.3-gke.1208000 e posteriores. Se você iniciar o upgrade de uma versão anterior à 1.34.3-gke.1208000, poderá ter problemas temporários com a programação de pods durante o processo de upgrade. |
| Upgrades |
|
Você também precisa usar o instalador do GPUDirect-TCPX versão 3.1.9 ou mais recente e o sidecar versão 2.0.12 ou mais recente. As versões do instalador e do arquivo secundário têm um mapeamento de um para um e precisam corresponder. Por exemplo, a versão 3.1.12 do instalador do GPUDirect-TCPX corresponde à versão 2.0.15 do arquivo secundário. Para mais informações sobre as versões do instalador e do arquivo secundário, consulte as Notas da versão do GPUDirect-TCPX. |
O GPUDirect-TCPX não está disponível com A3 High para versões específicas do GKEOs clusters do GKE com nós A3 High ( Outros tipos de máquina de GPU A3 High ( Solução: Faça upgrade para patches de versão fixa do GKE para resolver esse problema. Para detalhes sobre como configurar e fazer upgrade de pools de nós com o GPUDirect-TCPX, consulte Maximizar a largura de banda da rede de GPU em clusters Standard ou Maximizar a largura de banda da rede de GPU em clusters do Autopilot. Ao executar testes do NCCL em versões fixas, você pode encontrar os seguintes avisos, que não afetam o desempenho nem a funcionalidade:
|
| Operação | Todas as versões anteriores a 1.34.0-gke.2285000 | 1.34.0-gke.2285000 e mais recente |
Capacidade mínima de instâncias atualizadaA capacidade mínima das instâncias do Managed Lustre foi atualizada para 9.000 GiB. Clusters que executam versões anteriores a 1.34.0-gke.2285000 não podem criar instâncias com essa capacidade mínima usando o driver CSI do Managed Lustre. Alternativa: Faça upgrade da versão do cluster para 1.34.0-gke.2285000 ou mais recente para ativar a criação de instâncias do Managed Lustre com a capacidade mínima de 9.000 GiB. |
| Operação | Todas as versões | A definir |
UIGoogle Cloud fica não editável durante o reparo automático de nósQuando um nó do GKE está passando por um reparo automático, o pool de nós não pode ser editado pelo console do Google Cloud devido a uma operação em andamento. Alternativa: Ainda é possível editar a configuração do pool de nós usando os comandos da CLI gcloud. |
| Operação | Versões 1.33 anteriores à 1.33.4-gke.1036000 | 1.33.4-gke.1036000 e mais recente |
Nível de desempenho incorreto para instâncias do Lustre provisionadas dinamicamenteAo provisionar dinamicamente uma instância do Lustre, a criação da instância falha com um erro Alternativa: Faça upgrade do cluster do GKE para a versão 1.33.4-gke.1036000 ou mais recente. Se você estiver usando o canal estável, talvez uma versão mais recente ainda não esteja disponível. Nesse caso, é possível selecionar manualmente uma versão dos canais Regular ou Canal rápido que inclua a correção. |
| Operação |
|
1.33.3-gke.1266000 e mais recentes |
Erro de entrada/saída ao renomear ou mover arquivos usando o driver CSI do Cloud Storage FUSEAo usar uma versão afetada do driver CSI do Cloud Storage FUSE, renomear ou mover arquivos em buckets do Cloud Storage pode falhar com um erro de E/S. Alternativa: Adicione temporariamente uma definição de imagem sidecar específica ao manifesto do pod. Na seção # Add the following block to use the fixed sidecar image - name: gke-gcsfuse-sidecar image: gcr.io/gke-release/gcs-fuse-csi-driver-sidecar-mounter:v1.8.9-gke.2 Para mais informações, consulte o manifesto do pod em Configurar uma imagem particular para o contêiner secundário. Depois de fazer upgrade do cluster para uma versão corrigida do GKE ou posterior, remova todo o bloco |
| Geração de registros e monitoramento | Todas as versões | A definir |
Condição de disputa em DaemonSets
|
| Upgrades | 1,33 | 1.33.2-gke.1043000 |
Limite de arquivos abertos reduzido com o containerd 2.0Para pools de nós que executam a versão 1.33 do GKE, que usa o containerd 2.0, o limite flexível padrão para arquivos abertos ( Essa é uma mudança no próprio containerd (consulte containerd PR #8924, em inglês), em que As cargas de trabalho que esperam um limite flexível padrão mais alto (por exemplo, aquelas que dependem implicitamente do padrão mais alto anterior) podem apresentar falhas, como erros Solução: Faça upgrade de uma versão de patch anterior da 1.33 para a 1.33.2-gke.1043000 ou posterior. Alternativa: Aumente o limite de arquivos abertos para suas cargas de trabalho usando um dos seguintes métodos:
|
| Upgrades | 1.31.5-gke.1169000, 1.32.1-gke.1376000 | 1.31.7-gke.1164000, 1.32.3-gke.1512000 |
Status inválido "storedVersions" da CRD para CRDs gerenciadosAlgumas CRDs gerenciadas pelo GKE podem ter um campo Esse problema afeta clusters que são:
Alternativa: A solução recomendada é adiar os upgrades do cluster até que o problema seja resolvido. Como alternativa, se você souber que o cluster contém versões não compatíveis de
objetos CRD, adicione essas versões ao campo |
| Operação, geração de registros e monitoramento | 1.32.2-gke.1652000, 1.31.6-gke.1221000, 1.30.10-gke.1227000 |
|
Métricas ausentes ou escalonador automático de cargas de trabalho não escalonandoTalvez você observe lacunas nos dados de métricas nas versões afetadas depois que o tamanho do cluster aumentar em mais de cinco nós. Esse problema também pode afetar as operações de escalonamento automático. Esse problema afeta apenas os clusters atualizados para as versões afetadas. Os clusters recém-criados devem funcionar conforme o esperado. Alternativa: Se você for afetado, faça downgrade de uma versão de patch ou upgrade para as versões corrigidas mais recentes. |
| Operação |
Limites de tamanho e anexos do Google Cloud HyperdiskNormalmente, um pod que não pode ser programado devido aos limites de anexação de volume de um nó aciona o provisionamento automático de um novo nó. Quando as cargas de trabalho que usam um produto do Hyperdisk são programadas para um nó que executa uma VM C3, o provisionamento automático de nós não ocorre, e o pod é programado no nó que já está cheio. A carga de trabalho é programada no nó, apesar da falta de uma conexão de disco disponível. A carga de trabalho também não é iniciada devido a um erro como este: AttachVolume.Attach failed for volume "[VOLUME NAME]" : rpc error: code = InvalidArgument desc = Failed to Attach: failed when waiting for zonal op: rpc error: code = InvalidArgument desc = operation operation-[OPERATION NUMBERS] failed (UNSUPPORTED_OPERATION): Maximum hyperdisk-balanced disks count should be less than or equal to [16], Requested : [17] O problema está presente em todos os produtos do Hyperdisk em máquinas C3. Os limites de anexação do Hyperdisk variam de acordo com o número de vCPUs da VM e o produto do Hyperdisk. Para mais informações, consulte Limites de desempenho do Hyperdisk. Alternativa: Os produtos do Google Cloud Hyperdisk acionam o provisionamento automático em outros formatos de VM. Recomendamos um formato que seja compatível apenas com o Google Cloud Hyperdisk. |
||
| Operação | 1.32.3-gke.1927000, 1.32.3-gke.1785000, 1.32.3-gke.1717000, 1.32.3-gke.1440000, 1.32.3-gke.1170000, 1.32.3-gke.1250000, 1.32.3-gke.1671000, 1.32.3-gke.1596000, 1.32.3-gke.1298000 |
gke-metadata-server é OOMKilled em nós de TPU/GPUEm nós de TPU (por exemplo, Alternativa: Se você observar eventos |
|
| Operação |
|
|
Os redimensionamentos de volume podem ficar travados devido ao status NodePendingResize pendente em PVCs.Os clusters na versão 1.32 que têm nós nas versões 1.31 ou anteriores não vão atualizar o status do PersistentVolumeClaim durante o redimensionamento. Esse status incorreto impede que as operações de redimensionamento subsequentes comecem, impedindo efetivamente novos redimensionamentos. Um PVC nesse estado tem um campo Se um PVC foi criado enquanto o cluster estava em uma versão afetada, esse problema pode persistir após o upgrade do cluster para uma versão fixa conhecida. Nesse cenário, o PVC precisa ser corrigido para remover o campo Alternativa: PVCs presos devido a um status pendente podem ser corrigidos para remover esse status. Use um comando de patch como o seguinte para remover o status de pendente: kubectl patch pvc $PVC_NAME --subresource='status' --type='merge' -p '{"status":{"allocatedResourceStatuses":null}}'kubectl patch pvc $PVC_NAME --subresource='status' --type='merge' -p '{"status":{"allocatedResources":null}}' |
| Operação |
|
|
O driver PDCSI pode registrar em excessoOs clusters do GKE em versões específicas do 1.32 podem emitir mensagens de registro excessivas do driver PDCSI. Esse excesso de registros consumiria a cota da API Cloud Logging Write. Alternativa: Para reduzir esse registro excessivo, adicione um filtro de exclusão. Para impedir que as mensagens de registro sejam ingeridas no Cloud Logging, use a seguinte consulta:
resource.type="k8s_container"
resource.labels.container_name="gce-pd-driver"
(sourceLocation.file="cache.go" OR "Cannot process volume group")
|
| Operações |
|
|
Os pods que tentarem montar volumes permanentes NFS em nós do COS que antes tinham uma montagem somente leitura (RO, na sigla em inglês) só serão montados no modo RO.Para o GKE versão 1.27 e mais recentes, os volumes NFS que usam o driver CSI em árvore do Kubernetes só podem montar volumes permanentes no modo RO após uma montagem RO anterior no mesmo nó. Alternativa: Fazer downgrade dos pools de nós para uma versão anterior às afetadas. |
| Operações |
|
Os pods que tentarem montar volumes permanentes do NFS em nós do Ubuntu não poderão ser executados.Para o GKE versão 1.32 e posterior, os volumes NFS que usam o driver CSI em árvore do Kubernetes não poderão montar volumes permanentes em nós do Ubuntu. Quando isso acontece, as seguintes mensagens de erro podem aparecer: "MountVolume.SetUp failed for volume 'nfs-storage' : mount failed: exit status 1" Output: Mount failed: mount failed: exit status 127 "Output: chroot: failed to run command 'mount': No such file or directory failed to run command mount on Ubuntu nodes" Além de ver essas mensagens de erro, os pods que usam esses volumes não poderão ser criados. Alternativa: Faça downgrade dos pools de nós para a versão 1.31. |
|
| Operação | >= 1.28.15-gke.1436000, < 1.28.15-gke.1668000, >= 1.29.12-gke.1040000, < 1.29.13-gke.1028000, >= 1.30.8-gke.1053000, < 1.30.8-gke.1287000, >= 1.31.4-gke.1057000, < 1.31.6-gke.1020000, >= 1.32.0-gke.1281000, < 1.32.1-gke.1369000 |
|
Os pods que usam syscalls relacionadas a io_uring podem ficar presos no estado "Terminating"
Os pods que usam syscalls relacionados a io_uring podem entrar no estado D (suspensão do disco), também chamado de TASK_UNINTERRUPTIBLE, devido a um bug no kernel do Linux. Os processos no estado D não podem ser ativados por indicadores, incluindo
Quando um pod é afetado por esse problema conhecido, os contêineres dele podem não ser encerrados normalmente. Nos registros do containerd, talvez você veja mensagens repetidas como esta:
ou
Esses sintomas indicam processos dentro do contêiner que estão travados em uma suspensão ininterrupta (estado D), o que impede o encerramento adequado do pod.
As cargas de trabalho que usam io_uring direta ou indiretamente por meio de um ambiente de execução de linguagem, como o NodeJS, podem ser afetadas por esse problema conhecido. As cargas de trabalho afetadas têm um processo no estado D (suspensão do disco) no arquivo Alternativa: Faça upgrade dos nós do cluster para uma versão corrigida ou mais recente. |
| Operação | 1.28, 1.29, 1.30, 1.31 |
|
As cargas de trabalho que usam o streaming de imagens falham com erros de autenticaçãoUm bug no recurso de streaming de imagens pode causar falhas nas cargas de trabalho quando um conjunto de condições específicas é atendido enquanto o contêiner lê arquivos. As mensagens de erro relacionadas a falhas de autenticação podem estar visíveis no registro do gcfsd.
Para verificar se você foi afetado, pesquise os registros com esta consulta de pesquisa:
A presença desses erros indica que os nós foram afetados. Se você for afetado por esse problema, faça upgrade dos pools de nós para uma versão do GKE com patch. |
| Operação |
|
|
Aumento das taxas de remoção de pods nas versões 1.30 e 1.31 do GKE
Algumas versões do GKE 1.30 e do GKE 1.31 que usam o COS 113 e o COS 117, respectivamente, têm kernels criados
com a opção
A opção de configuração Nem sempre é possível ver uma taxa de remoção de pods incomum porque esse problema depende do padrão de uso da memória da carga de trabalho. Há um risco maior de o kubelet desalojar pods para cargas de trabalho que não definiram um limite de memória no campo de recursos. Isso ocorre porque as cargas de trabalho podem solicitar mais memória do que o kubelet informa como disponível. Se você notar um uso da memória maior de um aplicativo após o upgrade para as versões do GKE mencionadas sem outras mudanças, talvez você seja afetado pela opção do kernel.
Para verificar se há taxas incomuns de remoção de pods, analise as seguintes métricas com o
Metrics Explorer:
Use as seguintes consultas do PromQL. Substitua os valores de
max by (pod_name)(max_over_time(kubernetes_io:container_memory_used_bytes{monitored_resource="k8s_container",memory_type="non-evictable",cluster_name="REPLACE_cluster_name",namespace_name="REPLACE_namespace",metadata_system_top_level_controller_type="REPLACE_controller_type",metadata_system_top_level_controller_name="REPLACE_controller_name"}[${__interval}]))
sum by (pod_name)(avg_over_time(kubernetes_io:container_memory_request_bytes{monitored_resource="k8s_container",cluster_name="REPLACE_cluster_name",namespace_name="REPLACE_namespace",metadata_system_top_level_controller_type="REPLACE_controller_type",metadata_system_top_level_controller_name="REPLACE_controller_name"}[${__interval}]))
Se você notar picos incomuns no uso da memória que ultrapassam a memória solicitada, a carga de trabalho pode estar sendo removida com mais frequência. AlternativaSe não for possível fazer upgrade para as versões corrigidas e se você estiver executando em um ambiente do GKE em que é possível implantar pods privilegiados, desative a opção de LRU de várias gerações usando um DaemonSet.
Depois que o DaemonSet estiver em execução em todos os pools de nós selecionados, a mudança entrará em vigor imediatamente, e o cálculo do uso da memória do kubelet voltará ao normal. |
| Operação | 1.28, 1.29, 1.30, 1.31 |
|
Pods travados no status de encerramentoUm bug no ambiente de execução do contêiner (containerd) pode fazer com que os pods e contêineres fiquem travados no status de encerramento com erros semelhantes aos seguintes: OCI runtime exec failed: exec failed: cannot exec in a stopped container: unknown
Se você for afetado por esse problema, faça upgrade dos nós para uma versão do GKE com uma versão corrigida do containerd. |
| Operação |
|
|
O streaming de imagens falha devido a links simbólicosUm bug no recurso de streaming de imagens pode impedir que os contêineres sejam iniciados. Os contêineres executados em um nó com o streaming de imagens ativado em versões específicas do GKE podem não ser criados com o seguinte erro: "CreateContainer in sandbox from runtime service failed" err="rpc error: code = Unknown desc = failed to create containerd container: failed to mount [PATH]: too many levels of symbolic links"
Alternativa: Para resolver esse problema, faça upgrade dos pools de nós para uma versão corrigida (1.35.6-gke.1005000 ou posterior, ou 1.36.0-gke.2459000 ou posterior). Se não for possível fazer upgrade, verifique se há camadas vazias ou duplicadas. Se não for possível remover camadas vazias ou duplicadas, desative o streaming de imagens. |
| Operação | 1.27,1.28,1.29 |
|
Falha no streaming de imagens devido à falta de arquivosUm bug no recurso de streaming de imagens pode causar falhas nos contêineres devido à ausência de um ou mais arquivos. Os contêineres executados em um nó com o streaming de imagens ativado nas seguintes versões podem não iniciar ou apresentar erros informando que determinados arquivos não existem. Veja alguns exemplos desses erros:
Se você for afetado por esse problema, desative o streaming de imagens. |
| Rede,upgrades e atualizações | 1.28 |
Erro de configuração de TLS do gatewayIdentificamos um problema ao configurar o TLS para gateways em clusters que executam a versão 1.28.4-gke.1083000 do GKE. Isso afeta as configurações de TLS que usam um SSLCertificate ou um CertificateMap. Se você estiver fazendo upgrade de um cluster com gateways, as atualizações feitas no gateway vão falhar. Para novos gateways, os balanceadores de carga não serão provisionados. Esse problema será corrigido em uma versão de patch futura do GKE 1.28. |
|
| Upgrades e atualizações | 1,27 | 1.27.8 ou mais recente |
Problema no plug-in do dispositivo de GPU
Os clusters que executam GPUs e são atualizados da versão 1.26 para uma versão de patch 1.27
anterior à 1.27.8 podem ter problemas com os plug-ins de dispositivo de GPU
dos nós (
|
| Operação | 1.27,1.28 |
|
O escalonamento automático de todas as cargas de trabalho é interrompido.
O HorizontalPodAutoscaler (HPA) e o VerticalPodAutoscaler (VPA) podem
interromper o escalonamento automático de todas as cargas de trabalho em um cluster se ele contiver objetos
HPA Alternativa:
Corrija os objetos HPA
Para mais detalhes sobre como configurar objetos HPA |
| Operação | 1.28,1.29 |
|
Falha na implantação da Detecção de Ameaças em ContêinerA implantação da Detecção de Ameaças em Contêiner pode falhar em clusters do Autopilot que executam as seguintes versões do GKE:
|
| Rede, upgrades | 1.27, 1.28, 1.29, 1.30 |
|
Problemas de conectividade para pods
|
| Rede | 1.31, 1.32 |
|
Tráfego UDP interrompido entre pods executados no mesmo nóClusters com visibilidade intranós ativada podem ter tráfego UDP corrompido entre pods executados no mesmo nó. O problema é acionado quando o nó do cluster do GKE é atualizado para uma das seguintes versões do GKE ou criado com uma delas:
O caminho afetado é o tráfego UDP entre pods no mesmo nó por meio de Hostport ou Serviço. Resolução Faça upgrade do cluster para uma das seguintes versões corrigidas:
|
| Operação | 1.29,1.30,1.31 |
|
Operador do Ray e criptografia de banco de dados do Cloud KMS incompatíveisAlgumas versões do operador do Ray são incompatíveis com a criptografia de banco de dados do Cloud KMS. Alternativas: Faça upgrade do plano de controle do cluster para uma versão corrigida ou mais recente. |
| Upgrades e atualizações | 1.30, 1.31 |
|
Pod do gerenciador de manutenção de GPU travado no estado CrashLoopBackOffCom esse problema, os pods gpu-maintenance-handler ficam presos em um estado "CrashLoopBackOff" nos respectivos nós. Esse estado impede que o rótulo "manutenção futura" seja aplicado aos nós do GKE, o que pode afetar os processos de drenagem de nós e remoção de pods para cargas de trabalho.
"Node upcoming maintenance label not applied due to error: Node "gke-yyy-yyy" is invalid: metadata.labels: Invalid value: "-62135596800": a valid label must be an empty string or consist of alphanumeric characters, '-','' or '.', and must start and end with an alphanumeric character (e.g.'MyValue', or 'my_value', or '12345', regex used for validation is '(([A-Za-z0-9][-A-Za-z0-9.]*)?[A-Za-z0-9])?')"
Se você for afetado por esse problema, faça upgrade do plano de controle para uma versão do GKE que inclua a correção. |
| Operação | 1.33.1-gke.1522000 e mais recente | 1.33.4-gke.1142000 e mais recente |
Falha ao iniciar pods em nós com o streaming de imagens ativado
Em nós com o streaming de imagens ativado, as cargas de trabalho podem não ser iniciadas
com a seguinte assinatura de erro:
Os registros de porta serial de um nó afetado também contêm a seguinte assinatura de erro:
A presença dessas duas assinaturas de erro indica um impasse em um dos componentes de streaming de imagens. Esse deadlock impede que os pods sejam iniciados. Mitigação: Reinicie o nó para uma mitigação rápida. O nó reiniciado ainda pode encontrar o impasse novamente. Para uma mitigação mais robusta, desative o streaming de imagens no pool de nós executando o seguinte: gcloud container node-pools update NODE_POOL_NAME --cluster CLUSTER_NAME --no-enable-image-streaming |
| Operação |
|
|
As ComputeClasses personalizadas com
|
A seguir
Se você não encontrar uma solução para seu problema na documentação, consulte Receber suporte para mais ajuda, incluindo conselhos sobre os seguintes tópicos:
- Abrir um caso de suporte entrando em contato com o Cloud Customer Care.
- Receber suporte da comunidade
fazendo perguntas no StackOverflow
e usando a tag
google-kubernetes-enginepara pesquisar problemas semelhantes. Você também pode participar do canal do Slack#kubernetes-enginepara receber mais suporte da comunidade. - Abrir problemas ou solicitações de recursos usando o Issue Tracker público.