Cloud Intelligence™Cloud Intelligence™

Cloud Intelligence™

Como monitorar o uso do Amazon CloudFront com o Average Object Size (AOS)

By Avi KeinanSep 12, 20223 min read

Esta página também está disponível em English, Deutsch, Español, Français, Italiano e 日本語.

Às vezes, a AWS pede que os clientes atinjam um determinado nível de Average Object Size (AOS). Explicamos como o AOS funciona e como monitorá-lo.

Insights de especialistas para acompanhar o uso do Amazon CloudFront com o AOS

Como mostra a página de preços do Amazon CloudFront, os clientes que se comprometem com mais de 10Tb/mês podem entrar em contato com o time de vendas da Amazon Web Services (AWS) e pedir uma proposta de preço privada.

A lógica por trás dessa oferta é clara: se você se compromete a consumir uma certa quantidade de tráfego ao longo do tempo, a AWS te dá um desconto no CloudFront.

Como parte do meu trabalho na DoiT International (AWS Premier Partner), ajudo clientes a otimizar o uso e o monitoramento da rede de distribuição de conteúdo (CDN). E, em alguns casos, a AWS pede que o cliente atinja um determinado nível de Average Object Size (AOS). Neste artigo, eu explico como o AOS funciona e como monitorá-lo.

Como o AOS funciona

O AOS é o tamanho médio dos objetos em todas as suas distribuições do CloudFront na AWS Organizations. O cálculo é feito em kilobytes de um jeito relativamente simples: o número de requisições (requisições HEAD/GET HTTP/S) entregues pelo CloudFront é dividido pelo volume de dados transmitidos pelo CloudFront.

Por exemplo, se eu uso o CloudFront para entregar 1.000 requisições que consomem 1Gb de transferência de dados, o cálculo fica assim:

1048576 Kb (1Gb em kilobytes)/1000 requisições = 1048Kb de AOS

Revise seu contrato com a AWS para entender o que acontece quando você fica abaixo do AOS

Se o consumo de AOS de um cliente em determinado mês ficar abaixo do valor definido no contrato com a AWS, ele será cobrado pelas requisições HEAD/GET conforme os termos acordados no contrato de Private Pricing.

Se o AOS na conta ficar abaixo do valor especificado no contrato, o cliente verá uma cobrança em faturas OCBCloudfront (Out of Cycle Bill CloudFront) no mês seguinte.

Como monitorar o AOS

Muitos CFOs e engenheiros de DevOps e FinOps se frustram com a falta de ferramentas para monitorar o AOS. Na DoiT International, oferecemos aos nossos clientes uma tecnologia avançada de cloud analytics que coleta amostras, monitora e dispara alertas quando eles ficam abaixo de um determinado AOS. O cliente tem acesso em tempo real ao custo das requisições caso tenha ficado abaixo do AOS em um determinado mês.

aws-monitoring

(Gráfico de cloud analytics da DoiT exibe o AOS do CloudFront em Kb)

monitor-aws-costs

(Gráfico de cloud analytics da DoiT exibe o AOS do CloudFront em Kb)

Recebemos muitos contatos de CFOs e engenheiros de DevOps e FinOps que não são clientes da DoiT (e também de concorrentes) querendo saber se podemos ajudá-los com o monitoramento do AOS.

O modelo de negócios da DoiT é simples: o cliente tem acesso a todos os nossos serviços de graça se consolidar as contas AWS da empresa com a gente. Mas, em algumas situações, o cliente não consegue consolidar com a DoiT.

Pensando nesses cenários, criei uma solução para calcular o AOS usando a API do AWS Cost Explorer.

Escrevi um script em python que usa a Cost Explorer API e retorna o AOS de um mês específico. Você pode informar os argumentos --month e --year para extrair o AOS de datas anteriores. Se você tem várias aws organizations (ou contas aws), pode usar o argumento --aws-profile.

aws-application-performance-monitoring

Os perfis são lidos do arquivo ~/.aws/credentials (ou C:\Users\USERNAME\.aws\credentials no Windows.); o perfil aws padrão é o default.

Essa é uma alternativa útil para clientes AWS que não podem consolidar com a DoiT. Como AWS Premier Partner, trabalhamos junto com a AWS para ajudar os clientes a tirar o máximo da nuvem em desempenho, escalabilidade e agilidade — tudo o que empresas ambiciosas precisam para conquistar uma vantagem competitiva.