Solução de problemas de escalonabilidade no GKE

O uso excessivo do banco de dados etcd pode causar instabilidade no cluster e escassez de recursos, impedindo que os clusters do Google Kubernetes Engine (GKE) sejam escalonados de maneira eficaz.

Use este documento para saber como identificar clusters em que o uso do etcd está chegando ao limite e encontrar recomendações para liberar espaço, ajudando a garantir que o cluster permaneça estável.

Essas informações são importantes para administradores e operadores da plataforma responsáveis por manter a integridade e a escalonabilidade dos clusters do GKE. Para mais informações sobre as funções comuns e tarefas de exemplo que mencionamos no conteúdo do Google Cloud , consulte Funções e tarefas de usuário comuns do GKE.

Este documento aborda a solução de problemas de estabilidade do cluster relacionados ao uso elevado do etcd. Se você tiver um problema de escalonabilidade diferente, um dos seguintes documentos poderá ajudar:

Identificar clusters em que o uso do etcd está chegando no limite

O GKE fornece insights e recomendações para o cenário em que o uso do etcd está se aproximando do limite. Você pode encontrar esses insights e recomendações das seguintes maneiras:

  • Use o console do Google Cloud . Acesse a página Clusters do Kubernetes. Na coluna Notificações de clusters específicos, verifique a recomendação Libere espaço para reduzir o risco de instabilidade do cluster.
  • Use a CLI gcloud ou a API Recommender especificando o subtipo ETCD_DB_USAGE_APPROACHING_LIMIT do recomendador.

    Para consultar essa recomendação, execute o seguinte comando:

    gcloud recommender recommendations list \
        --recommender=google.container.DiagnosisRecommender \
        --location=LOCATION \
        --project=PROJECT_ID \
        --format=yaml \
        --filter="recommenderSubtype:ETCD_DB_USAGE_APPROACHING_LIMIT"
    

Para implementar essa recomendação, remova todos os dados desnecessários do etcd para liberar espaço. Isso pode envolver a exclusão de recursos antigos ou a remoção de objetos grandes do etcd. Para mais informações, consulte Planejar para grandes clusters do GKE.

Identificar clusters em que o uso de armazenamento por tipo de objeto está se aproximando do limite

O GKE fornece insights e recomendações para o cenário em que o tamanho total dos objetos etcd por tipo está se aproximando do limite. Você pode encontrar esses insights e recomendações das seguintes maneiras:

  • Use o console do Google Cloud . Acesse a página Clusters do Kubernetes. Na coluna Notificações de clusters específicos, verifique a recomendação Reduzir o tamanho dos tipos de recursos.
  • Use a CLI gcloud ou a API Recommender especificando o subtipo APISERVER_RESOURCE_TYPE_SIZE_EXCEEDS_LIMIT do recomendador.

    Para consultar essa recomendação, execute o seguinte comando:

    gcloud recommender recommendations list \
        --recommender=google.container.DiagnosisRecommender \
        --location=LOCATION \
        --project=PROJECT_ID \
        --format=yaml \
        --filter="recommenderSubtype:APISERVER_RESOURCE_TYPE_SIZE_EXCEEDS_LIMIT"
    

    Para decidir quais objetos remover, use o kubectl para listá-los. Por exemplo, se os ConfigMaps estiverem se aproximando do limite de armazenamento, o comando a seguir vai gerar todos os ConfigMaps em todos os namespaces, ajudando você a identificar candidatos para exclusão:

    kubectl get configmaps --all-namespaces > new_file.txt
    

Para implementar essa recomendação e liberar espaço, remova do armazenamento todos os objetos desnecessários dos tipos especificados. Esse processo pode envolver a exclusão de recursos antigos ou a remoção de objetos grandes do armazenamento. Para mais informações, consulte Planejar para grandes clusters do GKE.

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: