Nesta página, explicamos como identificar clusters do Google Kubernetes Engine (GKE) com provisionamento insuficiente e excessivo. O GKE oferece insights e recomendações para cenários de otimização de custos, como clusters superprovisionados e inativos, e cenários de melhoria de confiabilidade, como clusters subprovisionados. O GKE oferece recomendações correspondentes para aumentar, diminuir ou excluir os clusters. Para clusters inativos, consulte Identificar clusters inativos do GKE.
Depois de verificar se os clusters identificados se beneficiariam da recomendação de escalonamento, faça a mudança recomendada para economizar custos ou aumentar a confiabilidade do cluster. Se possível, a recomendação inclui a economia ou o custo mensal projetado. Para mais informações, consulte Entender as estimativas de custo ou economia.
O GKE não fornece esses insights para clusters do Autopilot, que geram custos operacionais mínimos, porque você paga apenas pelos recursos solicitados pelas cargas de trabalho. Para mais informações, consulte Preços do Autopilot.
O GKE monitora seus clusters e fornece orientações para otimizar o uso com o Active Assist, um serviço que oferece recomendadores que geram insights e recomendações para usar recursos no Google Cloud. Para mais informações sobre como gerenciar insights e recomendações, consulte Otimizar o uso do GKE com insights e recomendações.
Receber insights e recomendações para clusters subprovisionados e superprovisionados
O GKE mostra esses insights e recomendações nos seguintes locais do console do Google Cloud:
- Página Clusters do Kubernetes, nos seguintes locais:
- Na lista de clusters do Kubernetes, na coluna Notificações dos clusters aplicáveis
- Banners de notificação na página Clusters de um cluster específico
- Hub do FinOps
As recomendações têm os seguintes títulos na página Clusters do Kubernetes:
- Clusters com provisionamento excessivo: "Diminua os recursos do cluster para reduzir custos"
- Clusters subprovisionados: "Aumente os recursos do cluster para melhorar a confiabilidade"
Também é possível receber esses insights e recomendações pela
CLI do Google Cloud ou pela API Recommender, usando os subtipos CLUSTER_UNDERPROVISIONED
e CLUSTER_OVERPROVISIONED
.
Siga as instruções para ver insights e recomendações.
Depois de identificar clusters subdimensionados ou superdimensionados, consulte as considerações ao dimensionar clusters.
Como o GKE identifica clusters com provisionamento insuficiente e provisionamento excessivo
A tabela a seguir descreve os sinais que o GKE usa para identificar clusters subprovisionados e superprovisionados que podem ser dimensionados para cima ou para baixo, além do limite de cada sinal. Além disso, esta tabela mostra a ação recomendada para esse cenário.
Subtipo | Sinal | Período de observação | Detalhes | Recomendação |
---|---|---|---|---|
CLUSTER_UNDERPROVISIONED |
O uso da CPU ou da memória é alto | Últimos 30 dias | Um cluster do GKE está com pouco provisionamento quando a média de utilização de CPU e memória é maior que 80% a cada hora nos últimos 30 dias. | Ampliar o cluster para aumentar a confiabilidade |
CLUSTER_OVERPROVISIONED |
O uso de CPU e memória é baixo | Últimos 30 dias | Um cluster do GKE é superprovisionado quando a média de utilização da CPU e da memória é de 7% a 20% a cada hora nos últimos 30 dias. | Reduzir o cluster para economizar custos |
O GKE não envia recomendações para clusters criados há menos de 30 dias.
Entender as estimativas de custo ou economia
Se possível, a recomendação do GKE inclui uma estimativa que projeta o custo ou a economia mensal se você redimensionar o cluster. Essa estimativa é derivada dos custos do cluster nos últimos 30 dias.
Os custos ou economias estimados são projeções baseadas em gastos anteriores e não são uma garantia de custos ou economias futuros.
Para conferir essas estimativas, verifique se você tem a permissão
billing.accounts.getSpendingInformation
necessária para receber informações
de gastos. Para mais detalhes, consulte Acesso ao Cloud Billing.
Para mais informações sobre o custo de todos os clusters do GKE, incluindo um detalhamento mais granular com base em namespaces e cargas de trabalho, consulte Receber insights importantes sobre gastos para a alocação de recursos do GKE e custos do cluster.
Para mais informações sobre os custos de execução de um cluster do GKE, consulte Preços do GKE.
Considerações ao ajustar clusters
Antes de seguir uma recomendação para aumentar ou diminuir o escalonamento de um cluster, considere o seguinte:
- Analise a utilização de recursos dos aplicativos em execução no cluster para verificar o desempenho deles e se eles estão usando mais ou menos CPU e memória do que o esperado. Para instruções, consulte Analisar solicitações de recurso.
- As cargas de trabalho de processamento em lote podem manter intencionalmente uma alta utilização dos recursos do cluster para eficiência de custos. Se os recursos alocados do cluster forem suficientes para os jobs em lote em execução no cluster, não será necessário aumentar o cluster com uso intenso, que foi identificado como subprovisionado.
Implementar a recomendação para ajustar o tamanho de um cluster
Leia o texto a seguir para entender como ajustar o tamanho de um cluster para corresponder melhor à utilização de recursos.
Redimensionar um cluster subprovisionado
Para implementar a recomendação de minimizar o risco de confiabilidade dimensionando corretamente um cluster com provisionamento insuficiente, aumente os recursos no cluster. Para isso, realize uma destas ações:
- Ative o escalonador automático de cluster e o provisionamento automático de nós, ou ajuste as configurações para permitir um escalonamento maior.
- Aumente o número de nós para aumentar o cluster horizontalmente. Siga as instruções para escalonar horizontalmente mudando a contagem de nós.
- Escolha um tipo de máquina maior para seus pools de nós. Siga as instruções para escalonar verticalmente alterando os atributos da máquina de nós.
- Monitore e analise o uso de recursos de CPU e memória dos aplicativos executados no cluster. Verifique se é possível reduzir o escalonamento dos aplicativos. Para instruções sobre como monitorar o uso de recursos, consulte Analisar solicitações de recurso.
Ao implementar essa recomendação, você garante que o cluster permaneça confiável porque tem a quantidade adequada de recursos para os aplicativos.
Redimensionar um cluster sobrecarregado
Para implementar a recomendação de economizar custos redimensionando um cluster superprovisionado, diminua os recursos no cluster. Ajuste as alocações de CPU e memória do cluster para atender às necessidades da carga de trabalho. Para fazer isso, siga um destes procedimentos:
- Ajuste o escalonador automático de clusters e o provisionamento automático de nós para reduzir de forma mais agressiva os recursos subutilizados.
- Reduza o cluster horizontalmente diminuindo o número de nós. Siga as instruções para escalonar horizontalmente mudando a contagem de nós.
- Escolha um tipo de máquina menor para seus pools de nós. Siga as instruções para escalonar verticalmente alterando os atributos da máquina de nós.
- Monitore e analise o uso de recursos de CPU e memória dos aplicativos executados no cluster. Verifique se é possível aumentar o escalonamento dos aplicativos. Para instruções sobre como monitorar o uso de recursos, consulte Analisar solicitações de recurso.
Ao implementar essa recomendação, você garante que não está usando mais recursos do que o necessário para executar os aplicativos do cluster.
A seguir
- Conferir as métricas de otimização relacionadas ao custo
- Como reduzir custos diminuindo os clusters do GKE fora do horário de pico
- Otimize o uso do GKE com insights e recomendações
- Práticas recomendadas para executar aplicativos econômicos do Kubernetes no GKE
- Cinco recursos do GKE para ajudar a otimizar seus clusters