O Google Kubernetes Engine (GKE) oferece insights e recomendações para cenários de otimização de custos, como clusters superprovisionados e inativos clusters, e cenários de melhoria de confiabilidade, como clusters com provisionamento insuficiente. Este documento explica como identificar clusters do GKE com provisionamento insuficiente e excessivo. O GKE oferece recomendações correspondentes para escalonar verticalmente ou reduzir escala vertical os clusters. O GKE também oferece recomendações semelhantes de dimensionamento correto para cargas de trabalho. Para mais informações, consulte Identificar cargas de trabalho com provisionamento insuficiente e excessivo workloads.
Depois de verificar se os clusters identificados se beneficiariam da recomendação de escalonar verticalmente ou reduzir, 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 oferece esses insights para clusters do Autopilot, que geram custos operacionais mínimos porque você só paga pelos recursos que as cargas de trabalho solicitam. Para mais informações, consulte Preços do Autopilot.
O GKE monitora seus clusters e oferece 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 com provisionamento insuficiente e excessivo
O GKE mostra esses insights e recomendações nos seguintes locais do Google Cloud console depois de observar o comportamento específico discutido na seção a seguir:
Página Clusters do Kubernetes, nos seguintes locais:
- Na lista Clusters do Kubernetes, na coluna Notificações dos clusters aplicáveis
- Banners de notificação na página Clusters de um cluster específico
As recomendações têm os seguintes títulos na página Clusters do Kubernetes:
- Clusters superprovisionados: "Diminua os recursos do cluster para reduzir custos"
- Clusters com provisionamento insuficiente: "Aumente os recursos do cluster para melhorar a confiabilidade"
Também é possível receber esses insights e recomendações pela Google Cloud CLI 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 com provisionamento insuficiente ou excessivo, consulte as considerações ao dimensionar clusters.
Como o GKE identifica clusters com provisionamento insuficiente e excessivo
A tabela a seguir descreve os sinais que o GKE usa para identificar clusters com provisionamento insuficiente e excessivo que podem ser escalonados verticalmente ou reduzidos, e o limite de cada sinal. Além disso, essa tabela mostra a ação recomendada para esse cenário.
| Subtipo | Sinal | Período de observação | Detalhes | Recomendação |
|---|---|---|---|---|
CLUSTER_UNDERPROVISIONED |
O uso de CPU ou da memória é alto | Últimos 30 dias | Um cluster do GKE tem provisionamento insuficiente quando a utilização média de CPU e memória é superior a 80% durante todas as horas, nos últimos 30 dias. | Escalone verticalmente o cluster para aumentar a confiabilidade |
CLUSTER_OVERPROVISIONED |
O uso de CPU e uso da memória é baixo | Últimos 30 dias | Um cluster do GKE tem provisionamento excessivo quando a utilização média de CPU e memória fica entre 7% e 20% durante todas as horas, nos últimos 30 dias. | Reduza a escala vertical do 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ê dimensionar o cluster corretamente. Essa estimativa é derivada dos custos do cluster nos últimos 30 dias.
Todos os custos ou economias estimados são projeções com base em gastos anteriores e não são uma garantia de custo ou economia futura.
Para ver essas estimativas, verifique se você tem a permissão billing.accounts.getSpendingInformation necessária para receber informações de gastos. Para mais informações, 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 os custos de cluster.
Para mais informações sobre os custos de execução de um cluster do GKE, consulte Preços do GKE.
Considerações ao dimensionar clusters
Antes de seguir uma recomendação para escalonar verticalmente ou reduzir um cluster, considere o seguinte:
- Analise a utilização de recursos dos aplicativos em execução no cluster para saber como eles estão funcionando e se estão usando mais ou menos CPU e memória do que o esperado. Para instruções, consulte Analisar solicitações de recursos.
- As cargas de trabalho de processamento em lote podem manter intencionalmente a alta utilização dos recursos do cluster para eficiência de custos. Se os recursos de cluster alocados forem suficientes para os jobs em lote em execução no cluster, não será necessário escalonar verticalmente o cluster altamente utilizado, que foi identificado como tendo provisionamento insuficiente.
Implementar a recomendação para dimensionar um cluster corretamente
Analise o seguinte para entender como ajustar o tamanho de um cluster para corresponder melhor à utilização de recursos.
Dimensionar um cluster com provisionamento insuficiente
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, siga algumas das ações abaixo:
- Ative o escalonador automático de clusters e o provisionamento automático de nós, ou ajuste as configurações para permitir um escalonamento vertical maior.
- Escalonar verticalmente horizontalmente o cluster aumentando 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 maior para seus pools de nós. Siga as instruções para escalonar verticalmente alterando os atributos da máquina do nó.
- Monitore e analise o uso de recursos de CPU e memória de aplicativos em execução no cluster. Verifique se é possível reduzir escala vertical dos aplicativos. Para instruções sobre como monitorar o uso de recursos, consulte Analisar solicitações de recursos.
Ao implementar essa recomendação, você garante que o cluster permaneça confiável porque tem a quantidade adequada de recursos para os aplicativos.
Dimensionar um cluster superprovisionado
Para implementar a recomendação de economizar custos dimensionando corretamente 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 isso, siga algumas das ações abaixo:
- Ajuste o escalonador automático de clusters e o provisionamento automático de nós para reduzir escala vertical de forma mais agressiva dos recursos subutilizados.
- Reduzir escala vertical verticalmente do cluster 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 do nó.
- Monitore e analise o uso de recursos de CPU e memória de aplicativos em execução no cluster. Verifique se é possível escalonar verticalmente os aplicativos. Para instruções sobre como monitorar o uso de recursos, consulte Analisar solicitações de recursos.
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 métricas de otimização relacionadas a custos
- Reduzir custos diminuindo os clusters do GKE fora do horário de pico
- Otimizar 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