O Google Kubernetes Engine (GKE) fornece insights e recomendações para cenários de otimização de custos, como clusters superprovisionados e clusters inativos, e cenários de melhoria de confiabilidade, como clusters subprovisionados. Neste documento, explicamos como identificar clusters do GKE com provisionamento insuficiente e excessivo. O GKE fornece recomendações correspondentes para escalonar verticalmente ou reduzir escala vertical vertical dos clusters. O GKE também oferece recomendações de dimensionamento semelhantes para cargas de trabalho. Para mais informações, consulte Identificar cargas de trabalho subprovisionadas e superprovisionadas.
Depois de verificar se os clusters identificados se beneficiariam da recomendação de escalonar verticalmente ou horizontal, 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 Noções básicas sobre 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 fornece recomendadores que geram insights gerados 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 no console do Google Cloud 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 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
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 os clusters subprovisionados ou superprovisionados, consulte as considerações ao redimensionar clusters.
Como o GKE identifica clusters com provisionamento insuficiente e excessivo
A tabela a seguir descreve os indicadores que o GKE usa para identificar clusters subprovisionados e superprovisionados que podem ser escalonados verticalmente ou horizontalmente, além do limite de cada indicador. Além disso, essa tabela mostra a ação que recomendamos que você realize nesse cenário.
| Subtipo | Sinal | Período de observação | Detalhes | Recomendação |
|---|---|---|---|---|
CLUSTER_UNDERPROVISIONED |
O uso de CPU ou uso da memória está alto | Últimos 30 dias | Um cluster do GKE está subprovisionado quando a utilização média de CPU e uso da memória é superior a 80% em todas as horas nos últimos 30 dias. | Escalonar 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 é provisionado em excesso quando o uso médio de CPU e memória fica entre 7% e 20% a cada hora, nos últimos 30 dias. | Reduzir 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ê 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 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 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 redimensionar clusters
Antes de seguir uma recomendação para escalonar verticalmente ou diminuir a escala vertical de um cluster, considere o seguinte:
- Analise a utilização de recursos dos aplicativos em execução no cluster para ver como eles estão se saindo 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 uma alta utilização de recursos do cluster para reduzir 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 subprovisionado.
Implementar a recomendação para redimensionar um cluster
Leia as informações a seguir para entender como ajustar o tamanho de um cluster para melhorar a utilização de recursos.
Redimensionar um cluster com provisionamento insuficiente
Para implementar a recomendação de minimizar o risco de confiabilidade redimensionando um cluster subprovisionado, aumente os recursos dele. Para fazer isso, realize algumas das seguintes ações:
- Ative o escalonador automático de clusters e o provisionamento automático de nós ou ajuste as configurações para permitir um escalonamento 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 os 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 dos aplicativos que são executados 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 ele tem a quantidade adequada de recursos para os aplicativos.
Redimensionar um cluster superprovisionado
Para implementar a recomendação de economizar custos ao redimensionar um cluster com provisionamento excessivo, reduza os recursos dele. Ajuste as alocações de CPU e memória do cluster de acordo com as necessidades da carga de trabalho. Para isso, realize algumas das seguintes ações:
- Ajuste o escalonador automático de clusters e o provisionamento automático de nós para reduzir de forma mais agressiva a escala vertical de recursos subutilizados.
- Reduzir escala vertical horizontalmente o 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 os 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 dos aplicativos que são executados 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
- Ver 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 você a otimizar seus clusters