Otimização de custos no Azure Monitor

A otimização de custos refere-se a formas de reduzir despesas desnecessárias e melhorar a eficiência operacional. Você pode reduzir significativamente seu custo para o Azure Monitor entendendo suas diferentes opções de configuração e oportunidades para reduzir a quantidade de dados que ele coleta. Antes de usar este artigo, você deve ver o custo e o uso do Azure Monitor para entender as diferentes maneiras pelas quais o Monitor do Azure cobra e como exibir sua fatura mensal.

Este artigo descreve a otimização de custos para o Azure Monitor como parte do Azure Well-Architected Framework. O Well-Architected Framework do Azure é um conjunto de filosofias de orientação que podem ser usadas para melhorar a qualidade de uma carga de trabalho. A estrutura consiste em cinco pilares de excelência arquitetônica:

  • Fiabilidade
  • Segurança
  • Otimização de Custos
  • Excelência Operacional
  • Eficiência de Desempenho

Registos do Azure Monitor

Lista de verificação de estruturação

  • Determine se deseja combinar seus dados operacionais e seus dados de segurança no mesmo espaço de trabalho do Log Analytics.
  • Configure a camada de preços para a quantidade de dados que cada espaço de trabalho do Log Analytics normalmente coleta.
  • Configure a retenção e o arquivamento de dados.
  • Configure tabelas usadas para depuração, solução de problemas e auditoria como Logs Básicos.
  • Limite a coleta de dados de fontes de dados para o espaço de trabalho.
  • Analise regularmente os dados recolhidos para identificar tendências e anomalias.
  • Crie um alerta quando a coleta de dados for alta.
  • Considere um limite diário como uma medida preventiva para garantir que você não exceda um orçamento específico.
  • Configure alertas nas recomendações de custo do Azure Advisor para espaços de trabalho do Log Analytics.

Recomendações de configuração

Recomendação Benefício
Determine se deseja combinar seus dados operacionais e seus dados de segurança no mesmo espaço de trabalho do Log Analytics. Como todos os dados em um espaço de trabalho do Log Analytics estão sujeitos aos preços do Microsoft Sentinel se o Sentinel estiver habilitado, pode haver implicações de custo na combinação desses dados. Consulte Projetar uma estratégia de espaço de trabalho do Log Analytics para obter detalhes sobre como tomar essa decisão para seu ambiente, equilibrando-a com critérios em outros pilares.
Configure a camada de preços para a quantidade de dados que cada espaço de trabalho do Log Analytics normalmente coleta. Por padrão, os espaços de trabalho do Log Analytics usarão preços pré-pagos sem volume mínimo de dados. Se você coletar dados suficientes, poderá diminuir significativamente seu custo usando uma camada de compromisso, que permite que você se comprometa com um mínimo diário de dados coletados em troca de uma taxa mais baixa. Se você coletar dados suficientes entre espaços de trabalho em uma única região, poderá vinculá-los a um cluster dedicado e combinar o volume coletado usando preços de cluster.

Consulte Logs do Azure Monitor, cálculos de custo e opções para obter detalhes sobre camadas de compromisso e orientação sobre como determinar qual é mais apropriado para seu nível de uso. Consulte Utilização e custos estimados para ver os custos estimados para a sua utilização em diferentes níveis de preços.
Configure a retenção de dados interativa e de longo prazo. Há uma cobrança para reter dados em um espaço de trabalho do Log Analytics além do padrão de 31 dias (90 dias se o Sentinel estiver habilitado no espaço de trabalho e 90 dias para dados do Application Insights). Considere seus requisitos específicos para ter dados prontamente disponíveis para consultas de log. Você pode reduzir significativamente seu custo configurando a retenção de longo prazo, o que permite reter dados por até doze anos e ainda acessá-los ocasionalmente usando trabalhos de pesquisa ou restaurando um conjunto de dados para o espaço de trabalho.
Configure tabelas usadas para depuração, solução de problemas e auditoria como Logs Básicos. As tabelas em um espaço de trabalho do Log Analytics configurado para Logs Básicos têm um custo de ingestão mais baixo em troca de recursos limitados e uma cobrança por consultas de log. Se você consultar essas tabelas com pouca frequência e não usá-las para alertas, esse custo de consulta poderá ser mais do que compensado pelo custo de ingestão reduzido.
Limite a coleta de dados de fontes de dados para o espaço de trabalho. O principal fator para o custo do Azure Monitor é a quantidade de dados que você coleta em seu espaço de trabalho do Log Analytics, portanto, você deve garantir que não colete mais dados necessários para avaliar a integridade e o desempenho de seus serviços e aplicativos. Consulte Projetar uma arquitetura de espaço de trabalho do Log Analytics para obter detalhes sobre como tomar essa decisão para seu ambiente, equilibrando-a com critérios em outros pilares.

Compensação: Pode haver uma compensação entre o custo e seus requisitos de monitoramento. Por exemplo, você pode ser capaz de detetar um problema de desempenho mais rapidamente com uma alta taxa de amostragem, mas talvez queira uma taxa de amostragem mais baixa para economizar custos. A maioria dos ambientes tem várias fontes de dados com diferentes tipos de coleta, portanto, você precisa equilibrar seus requisitos específicos com suas metas de custo para cada um. Consulte Otimização de custos no Azure Monitor para obter recomendações sobre como configurar a coleta para diferentes fontes de dados.
Analise regularmente os dados recolhidos para identificar tendências e anomalias. Use as informações do espaço de trabalho do Log Analytics para revisar periodicamente a quantidade de dados coletados em seu espaço de trabalho. Além de ajudá-lo a entender a quantidade de dados coletados por diferentes fontes, ele identificará anomalias e tendências ascendentes na coleta de dados que podem resultar em custo excessivo. Analise ainda mais a coleta de dados usando métodos no espaço de trabalho Analisar uso no Log Analytics para determinar se há configuração adicional que possa diminuir ainda mais seu uso. Isso é particularmente importante quando você adiciona um novo conjunto de fontes de dados, como um novo conjunto de máquinas virtuais ou integra um novo serviço.
Crie um alerta quando a coleta de dados for alta. Para evitar faturas inesperadas, deve ser notificado proativamente sempre que tiver uma utilização excessiva. A notificação permite-lhe resolver quaisquer anomalias potenciais antes do final do seu período de faturação.
Considere um limite diário como uma medida preventiva para garantir que você não exceda um orçamento específico. Um limite diário desativa a coleta de dados em um espaço de trabalho do Log Analytics pelo resto do dia após o limite configurado ser atingido. Isso não deve ser usado como um método para reduzir custos, conforme descrito em Quando usar uma tampa diária.

Se você definir um limite diário, além de criar um alerta quando o limite for atingido, certifique-se de criar também uma regra de alerta para ser notificado quando alguma porcentagem for atingida (90%, por exemplo). Isso lhe dá a oportunidade de investigar e abordar a causa do aumento de dados antes que o limite interrompa a coleta de dados.
Configure alertas nas recomendações de custo do Azure Advisor para espaços de trabalho do Log Analytics. As recomendações do Azure Advisor para espaços de trabalho do Log Analytics alertam proativamente quando há uma oportunidade de otimizar seus custos. Crie alertas do Azure Advisor para estas recomendações de custo:
  • Considere configurar o plano de logs básicos econômico em tabelas selecionadas - Identificamos a ingestão de mais de 1 GB por mês para tabelas qualificadas para o plano de dados de log básico de baixo custo. O plano de log básico oferece recursos de consulta para depuração e solução de problemas a um custo mais baixo.
  • Considere alterar o nível de preço- Com base no seu volume de uso atual, investigue a alteração do nível de preços (Compromisso) para receber um desconto e reduzir custos.
  • Considere remover tabelas restauradas não utilizadas - Você tem uma ou mais tabelas com dados restaurados ativos em seu espaço de trabalho. Se você não estiver mais usando dados restaurados, exclua a tabela para evitar cobranças desnecessárias.
  • Dados de anomalia de ingestão foram detetados - Identificamos uma taxa de ingestão muito maior na última semana, com base na sua ingestão nas três semanas anteriores. Tome nota desta alteração e da alteração esperada nos seus custos.
Você também pode exibir as recomendações geradas automaticamente selecionando Recomendações de visão geral>ou Recomendações do Consultor no menu de recursos do espaço de trabalho do Log Analytics.

Recursos do Azure

Lista de verificação de estruturação

  • Colete apenas dados de log de recursos críticos dos recursos do Azure.

Recomendações de configuração

Recomendação Benefício
Colete apenas dados de log de recursos críticos dos recursos do Azure. Quando você cria configurações de diagnóstico para enviar logs de recursos para seus recursos do Azure para um banco de dados do Log Analytics, especifique apenas as categorias necessárias. Como as configurações de diagnóstico não permitem filtragem granular de logs de recursos, você pode usar uma transformação de espaço de trabalho para filtrar dados desnecessários para os recursos que usam uma tabela suportada. Consulte Configurações de diagnóstico no Azure Monitor para obter detalhes sobre como definir configurações de diagnóstico e usar transformações para filtrar seus dados.

Alertas

Lista de verificação de estruturação

  • Os alertas de registo de atividades, os alertas de estado de funcionamento do serviço e os alertas de estado de funcionamento dos recursos são gratuitos.
  • Ao usar alertas de pesquisa de log, minimize a frequência do alerta de pesquisa de log.
  • Ao usar alertas métricos, minimize o número de recursos que estão sendo monitorados.

Recomendações de configuração

Recomendação Benefício
Lembre-se de que os alertas de registro de atividades, alertas de integridade do serviço e alertas de integridade de recursos são gratuitos. Os alertas de atividade do Azure Monitor, os alertas de integridade do serviço e os alertas de integridade de recursos são gratuitos. Se o que você deseja monitorar pode ser alcançado com esses tipos de alerta, use-os.
Ao usar alertas de pesquisa de log, minimize a frequência do alerta de pesquisa de log. Ao configurar alertas de pesquisa de log, lembre-se de que quanto mais frequente for a avaliação da regra, maior será o custo. Configure suas regras de acordo.
Ao usar alertas métricos, minimize o número de recursos que estão sendo monitorados. Alguns tipos de recursos oferecem suporte a regras de alerta de métricas que podem monitorar vários recursos do mesmo tipo. Para esses tipos de recursos, lembre-se de que a regra pode se tornar cara se monitorar muitos recursos. Para reduzir custos, você pode reduzir o escopo da regra de alerta de métrica ou usar regras de alerta de pesquisa de log, que são menos dispendiosas para monitorar um grande número de recursos.

Máquinas virtuais

Lista de verificação de estruturação

  • Migre do agente do Log Analytics para o agente do Azure Monitor para filtragem granular de dados.
  • Filtre os dados que você não precisa dos agentes.
  • Determine se você usará informações de VM e quais dados coletar.
  • Reduza a frequência de sondagem dos contadores de desempenho.
  • Certifique-se de que as VMs não estão enviando dados duplicados.
  • Use as informações do espaço de trabalho do Log Analytics para analisar custos faturáveis e identificar oportunidades de economia de custos.
  • Migre seu ambiente SCOM para a Instância Gerenciada SCOM do Azure Monitor.

Recomendações de configuração

Recomendação Description
Migre do agente do Log Analytics para o agente do Azure Monitor para filtragem granular de dados. Se você ainda tiver VMs com o agente do Log Analytics, migre-as para o agente do Azure Monitor para aproveitar a melhor filtragem de dados e usar configurações exclusivas com diferentes conjuntos de VMs. A configuração para coleta de dados pelo agente do Log Analytics é feita no espaço de trabalho, para que todos os agentes recebam a mesma configuração. As regras de coleta de dados usadas pelo agente do Azure Monitor podem ser ajustadas aos requisitos específicos de monitoramento de diferentes conjuntos de VMs. O agente do Azure Monitor também permite que você use transformações para filtrar os dados que estão sendo coletados.
Filtre os dados que você não precisa dos agentes. Reduza os custos de ingestão de dados filtrando dados que você não usa para alertas ou análises. Consulte Monitorar máquinas virtuais com o Azure Monitor: coletar dados para obter orientação sobre dados a serem coletados para diferentes cenários de monitoramento e Controlar custos para obter orientações específicas sobre filtragem de dados para reduzir seus custos.
Determine quais dados coletar com insights de VM. O VM insights é um ótimo recurso para começar rapidamente a monitorar suas VMs e fornece recursos poderosos, como visualizações de mapa e tendência de desempenho. Se você não usar o recurso Mapa ou os dados que ele coleta, desative a coleta de processos e dados de dependência em sua configuração de insights de VM para economizar nos custos de ingestão de dados.
Reduza a frequência de sondagem dos contadores de desempenho. Se você estiver usando uma regra de coleta de dados para enviar dados de desempenho para seu espaço de trabalho do Log Analytics, poderá reduzir a frequência de sondagem para reduzir a quantidade de dados coletados.
Certifique-se de que as VMs não estão enviando dados duplicados. Se você tiver vários agentes domésticos ou criar regras de coleta de dados semelhantes, certifique-se de que está enviando dados exclusivos para cada espaço de trabalho. Consulte Analisar o uso no espaço de trabalho do Log Analytics para obter orientações sobre como analisar os dados coletados para garantir que você não esteja coletando dados duplicados. Se você estiver migrando entre agentes, continue a usar o agente do Log Analytics até migrar para o agente do Azure Monitor em vez de usar ambos juntos, a menos que você possa garantir que cada um esteja coletando dados exclusivos.
Use as informações do espaço de trabalho do Log Analytics para analisar custos faturáveis e identificar oportunidades de economia de custos. As informações do espaço de trabalho do Log Analytics mostram os dados faturáveis coletados em cada tabela e de cada VM. Use essas informações para identificar suas principais máquinas e tabelas, pois elas representam sua melhor oportunidade de reduzir custos filtrando dados. Use essa perceção e consultas de log no espaço de trabalho Analisar uso no Log Analytics para analisar melhor os efeitos das alterações de configuração.
Migre seu ambiente SCOM para a Instância Gerenciada SCOM do Azure Monitor. Migre seu ambiente SCOM existente para a Instância Gerenciada SCOM do Azure Monitor para dar suporte a quaisquer pacotes de gerenciamento que não possam ser substituídos pelo Azure Monitor. A instância gerenciada SCOM remove a necessidade de manter servidores de gerenciamento locais e servidores de banco de dados, reduzindo o custo geral para manter sua infraestrutura SCOM.

Contentores

Lista de verificação de estruturação

  • Habilite a coleta de métricas por meio do serviço gerenciado do Azure Monitor para Prometheus.
  • Configure a coleção de agentes para modificar a coleta de dados no Container insights.
  • Modifique as configurações para a coleta de dados métricos por Container insights.
  • Desative a coleta de dados métricos do Container insights se você não usar a experiência do Container insights no portal do Azure.
  • Se você não consultar a tabela de logs de contêiner regularmente ou usá-la para alertas, configure-a como logs básicos.
  • Limite a coleta de logs de recursos de que você não precisa.
  • Use o log específico de recursos para logs de recursos AKS e configure tabelas como logs básicos.
  • Use o OpenCost para coletar detalhes sobre seus custos do Kubernetes.

Recomendações de configuração

Recomendação Benefício
Habilite a coleta de métricas por meio do serviço gerenciado do Azure Monitor para Prometheus. Certifique-se de não enviar também métricas do Prometheus para um espaço de trabalho do Log Analytics. Você pode usar o serviço gerenciado do Azure Monitor para Prometheus para raspar métricas do Prometheus do seu cluster habilitando o Managed Prometheus. Observe que você pode configurar o Container insights para coletar métricas do Prometheus em seu espaço de trabalho do Log Analytics, no entanto, isso não é recomendado, pois isso é redundante com os dados no Managed Prometheus e resultará em custo adicional. Para obter detalhes, consulte Preços gerenciados do Prometheus.
Configure o agente para modificar a coleta de dados no Container insights. Analise os dados coletados pelo Container insights conforme descrito em Otimizar os custos de monitoramento do Container insights e ajuste sua configuração para interromper a coleta de dados de que você não precisa.
Modifique as configurações para a coleta de dados métricos por Container insights. Consulte Habilitar configurações de otimização de custos para obter detalhes sobre como modificar a frequência com que os dados métricos são coletados e os namespaces coletados pelo Container insights.
Desative a coleta de dados métricos do Container insights se você não usar a experiência do Container insights no portal do Azure. O Container insights coleta muitos dos mesmos valores métricos do Managed Prometheus. Você pode desabilitar a coleta dessas métricas configurando Insights de contêiner para coletar somente logs e eventos , conforme descrito em Habilitar configurações de otimização de custos em Insights de contêiner. Essa configuração desabilita a experiência de insights de contêiner no portal do Azure, mas você pode usar o Grafana para visualizar métricas do Prometheus e o Log Analytics para analisar dados de log coletados por insights de contêiner.
Se você não consultar a tabela de logs de contêiner regularmente ou usá-la para alertas, configure-a como logs básicos. Converta seu esquema de insights de contêiner em ContainerLogV2, que é compatível com logs básicos e pode fornecer economias de custos significativas, conforme descrito em Otimizar custos de monitoramento para insights de contêiner.
Limite a coleta de logs de recursos de que você não precisa. Os logs de plano de controle para clusters AKS são implementados como logs de recursos no Azure Monitor. Crie uma configuração de diagnóstico para enviar esses dados para um espaço de trabalho do Log Analytics. Consulte Coletar logs de plano de controle para clusters AKS para obter recomendações sobre quais categorias você deve coletar.
Use o log específico de recursos para logs de recursos AKS e configure tabelas como logs básicos. O AKS suporta o modo de diagnóstico do Azure ou o modo específico de recursos para logs de recursos. Especifique logs de recursos para habilitar a opção de configurar as tabelas para logs básicos, que fornecem uma taxa de ingestão reduzida para logs que você consulta apenas ocasionalmente e não usa para alertas.
Use o OpenCost para coletar detalhes sobre seus custos do Kubernetes. O OpenCost é um projeto de sandbox CNCF de código aberto e neutro do fornecedor para entender seus custos do Kubernetes e apoiar sua capacidade de visibilidade de custos AKS. Ele exporta dados de custos detalhados, além de preços do Azure específicos do cliente, para o armazenamento do Azure para ajudar o administrador de cluster a analisar e categorizar custos.

Application Insights

Lista de verificação de estruturação

  • Mude para o Application Insights baseado em espaço de trabalho.
  • Use a amostragem para ajustar a quantidade de dados coletados.
  • Limite o número de chamadas do Ajax.
  • Desative módulos desnecessários.
  • Pré-agregar métricas de quaisquer chamadas para o TrackMetric.
  • Limite o uso de métricas personalizadas sempre que possível.
  • Garantir o uso de kits de desenvolvimento de software (SDKs) atualizados.
  • Limite o rastreamento indesejado do host e o log de rastreamento geral usando níveis de log.

Recomendações de configuração

Recomendação Benefício
Mude para o Application Insights baseado em espaço de trabalho. Certifique-se de que seus recursos do Application Insights sejam baseados em espaço de trabalho. Os recursos do Application Insights baseados em espaço de trabalho podem aplicar novas ferramentas de economia de custos, como logs básicos, camadas de compromisso, retenção por tipo de dados e retenção de longo prazo.
Use a amostragem para ajustar a quantidade de dados coletados. A amostragem é a principal ferramenta que você pode usar para ajustar a quantidade de dados coletados pelo Application Insights. Use a amostragem para reduzir a quantidade de telemetria enviada de seus aplicativos com distorção mínima de métricas.
Limite o número de chamadas do Ajax. Limite o número de chamadas do Ajax que podem ser relatadas em cada visualização de página ou desative os relatórios do Ajax. Se você desativar as chamadas Ajax, também desativará a correlação JavaScript.
Desative módulos desnecessários. Edite ApplicationInsights.config para desativar os módulos de coleção de que não precisa. Por exemplo, você pode decidir que contadores de desempenho ou dados de dependência não são necessários.
Pré-agregar métricas de quaisquer chamadas para o TrackMetric. Se você colocar chamadas para TrackMetric em seu aplicativo, poderá reduzir o tráfego usando a sobrecarga que aceita seu cálculo da média e do desvio padrão de um lote de medições. Como alternativa, você pode usar um pacote de pré-agregação.
Limite o uso de métricas personalizadas. A opção do Application Insights para Habilitar alertas em dimensões métricas personalizadas pode aumentar os custos. O uso dessa opção pode resultar na criação de mais métricas de pré-agregação.
Garantir o uso de kits de desenvolvimento de software (SDKs) atualizados. As versões anteriores do SDK do ASP.NET Core e do SDK do Serviço de Trabalho coletam muitos contadores por padrão, que eram coletados como métricas personalizadas. Use versões posteriores para especificar apenas os contadores necessários.
Limite o registro de rastreamento indesejado. O Application Insights tem várias fontes de log possíveis. Os níveis de log podem ser usados para ajustar e reduzir a telemetria de log de rastreamento. O registro em log também pode ser aplicado ao host. Por exemplo, os clientes que usam o Serviço Kubernetes do Azure (AKS) devem ajustar o plano de controle e os logs do plano de dados. Da mesma forma, os clientes que usam funções do Azure devem adaptar os níveis e o escopo do log para otimizar o volume e os custos do log.

Próximo passo