Compartilhar via


Análise de custo do AKS (Serviço de Kubernetes do Azure)

Neste artigo, você aprenderá a habilitar a análise de custo no AKS (Serviço de Kubernetes do Azure) para exibir dados de custo detalhados dos recursos do cluster.

Sobre a análise de custo

Os clusters do AKS dependem dos recursos do Azure, como VMs (máquinas virtuais), discos virtuais, balanceadores de carga e endereços IP públicos. Vários aplicativos podem usar esses recursos. Os padrões de consumo de recursos geralmente diferem para cada aplicativo, portanto, sua contribuição para o custo total dos recursos do cluster também pode variar. Alguns aplicativos podem ter volumes em vários clusters, o que pode representar um desafio ao executar a atribuição de custos e o gerenciamento de custos.

Ao habilitar a análise de custo no cluster do AKS, você poderá exibir a alocação de custos detalhada com escopo para constructos do Kubernetes, como clusters e namespaces, e recursos da Computação, Rede e Armazenamento do Azure. O complemento foi desenvolvido com base no OpenCost, um projeto de código aberto da Cloud Native Computing Foundation Incubating para coleta de dados de uso. Os dados de uso são reconciliados com os dados da fatura do Azure para fornecer uma visão abrangente dos custos do cluster do AKS diretamente nas exibições do Gerenciamento de Custos do portal do Azure.

Para obter mais informações sobre o Gerenciamento de Custos da Microsoft, confira Iniciar a análise de custo no Azure.

Depois de habilitar o complemento de análise de custo e dar tempo para que os dados sejam coletados, você pode usar as informações em Entenda o uso e os custos do AKS para ajudar você a entender seus dados.

Pré-requisitos

  • Seu cluster deve usar a camada Standard ou Premium, e não a camada Free.
  • Para exibir as informações de análise de custo, você deve ter uma das seguintes funções na assinatura que hospeda o cluster: Owner, Contributor, Reader, Cost Management Contributor ou Cost Management Reader
  • ID de carga de trabalho do Microsoft Entra configurada em seu cluster.
  • Se estiver usando a CLI do Azure, você deve ter a versão 2.61.0 ou posterior instalada.
  • Depois de habilitar a análise de custo, você não poderá fazer downgrade do cluster para o nível Free sem desabilitar primeiro a análise de custo.
  • Acesso à API do Azure, incluindo a API do Azure Resource Manager (ARM). Para uma lista de nomes de domínio totalmente qualificados (FQDNs) necessários, consulte FQDNs necessários para Análise de Custos do AKS.

Limitações

  • As exibições de custo do Kubernetes estão disponíveis apenas para os tipos de oferta do Microsoft Azure Contrato Enterprise e Contrato de Cliente da Microsoft. Para obter mais informações, consulte Ofertas do Microsoft Azure com Suporte.
  • Atualmente, não há suporte para nós virtuais.

Habilitar a análise de custos em seu cluster do AKS

Você pode habilitar a análise de custo com o sinalizador --enable-cost-analysis durante uma das seguintes operações:

  • Criando um cluster do AKS da camada Standard ou Premium.
  • Atualizando um cluster do AKS existente da camada Standard ou Premium.
  • Atualizando um cluster Free para Standard ou Premium.
  • Atualizando um cluster Standard para Premium.
  • Downgrade de um cluster Premium para a camada Standard.

Habilitar a análise de custo em um novo cluster

Habilite a análise de custo em um novo cluster usando o comando az aks create com o sinalizador --enable-cost-analysis. O exemplo a seguir cria um novo cluster do AKS no nível Standard com a análise de custo habilitada:

az aks create --resource-group <resource-group> --name <cluster-name> --location <location> --enable-managed-identity --generate-ssh-keys --tier standard --enable-cost-analysis

Habilitar a análise de custo em um cluster existente

Habilite a análise de custo em um cluster existente usando o comando az aks update com o sinalizador --enable-cost-analysis. O exemplo a seguir atualiza um cluster do AKS existente no nível Standard para habilitar a análise de custos:

az aks update --resource-group <resource-group> --name <cluster-name> --enable-cost-analysis

Observação

Um agente é implantado no cluster quando você habilita o complemento. O agente consome uma pequena quantidade de recursos de CPU e memória.

Aviso

O uso de memória do complemento de análise de custo do AKS depende do número de contêineres implantados. Você pode aproximar o consumo de memória usando 200 MB + 0,5 MB por contêiner. O limite de memória atual está definido como 4 GB, o que dará suporte a aproximadamente 7.000 contêineres por cluster. Essas estimativas estão sujeitas a alterações.

Desabilitar a análise de custo em seu cluster do AKS

Desabilite a análise de custo usando o comando az aks update com o sinalizador --disable-cost-analysis.

az aks update --name <cluster-name> --resource-group <resource-group> --disable-cost-analysis

Observação

Se quiser fazer downgrade do cluster da camada Standard ou Premium para a camada Free enquanto a análise de custo estiver habilitada, você deverá primeiro desabilitar a análise de custo.

Exibir os dados de custo

Você pode exibir os dados de alocação de custo no portal do Azure. Para obter mais informações, confira Exibir os custos do AKS no Gerenciamento de Custos da Microsoft.

Definições de custo

Nas exibições de namespaces e ativos do Kubernetes, você poderá ver qualquer uma das seguintes cobranças:

  • Os encargos ociosos representam o custo da capacidade de recursos disponível que não é usada por nenhuma carga de trabalho.
  • Os encargos do serviço representam os encargos associados ao serviço, como SLA de tempo de atividade, Microsoft Defender para Contêineres etc.
  • Os encargos do sistema representam o custo da capacidade reservada pelo AKS em cada nó para executar os processos do sistema exigidos pelo cluster, incluindo o kubelet e o runtime do contêiner. Saiba mais.
  • Os encargos não alocados representam o custo dos recursos que não puderam ser alocados aos namespaces.

Observação

Pode levar até um dia para que os dados sejam finalizados. Após 24 horas, qualquer flutuação nos custos do dia anterior terá se estabilizado.

Solução de problemas

Se você estiver enfrentando problemas, como o pod cost-agent ficando OOMKilled ou preso em um estado Pending, confira Solucionar problemas do complemento de análise de custo do AKS.

Próximas etapas

Para obter mais informações sobre o custo no AKS, confira Entenda o uso e os custos do AKS (Serviço de Kubernetes do Azure).