Você está satisfeito com a sua fatura do CloudTrail? Essa pergunta serve como um ponto de partida para refletir sobre os Custos do AWS CloudTrail. Este serviço é essencial para auditoria, monitoramento de segurança e resolução de problemas operacionais, rastreando a atividade do usuário e as chamadas de API. No entanto, ele pode se tornar caro se não for gerenciado corretamente. Vamos explorar as razões por trás dos gastos excessivos e discutir maneiras de manter os custos sob controle.
Introdução
O AWS CloudTrail é um serviço que oferece um valor enorme para o ecossistema AWS sem exigir grandes investimentos. Ele permite auditoria, monitoramento de segurança e solução de problemas operacionais, rastreando a atividade do usuário e as chamadas de API.
No entanto, é também um dos serviços que pode se tornar caro muito rapidamente, especialmente porque rastreia todas as atividades em uma conta/organização AWS e gera logs de auditoria.
Entender como a AWS cobra é crucial para evitar configurações incorretas e manter a conformidade ao menor preço.
O Paradigma Serverless
Sim, o AWS CloudTrail é um serviço serverless. Isso ocorre porque é um serviço totalmente gerenciado que registra automaticamente a atividade da API AWS e a armazena no Amazon S3 ou nos CloudWatch Logs. Você não precisa provisionar ou gerenciar servidores – a AWS cuida de tudo nos bastidores.
Serverless não se trata apenas do significado literal de “Sem servidor”, mas também dos princípios por trás dele, por exemplo, sem gerenciamento de infraestrutura e preços de pagamento por uso. No entanto, a parte complicada reside no último: a primeira cópia dos trails é gratuita, mas a segunda cópia em diante acarreta cobranças, e é aqui que você pode estar gastando bastante dinheiro.
Preços do CloudTrail
Vamos entender como os clientes da AWS pagam pelo CloudTrail. Quero me concentrar em Trails, que é o tema deste artigo. Na página de preços do CloudTrail, também há detalhes sobre Lake e Insights, que não abordarei aqui por enquanto.
Você quer que eu investigue e compartilhe insights sobre Lake ou Insights para um artigo futuro? Me diga nos comentários!
- Para eventos de gerenciamento entregues ao S3, você paga US$ 2,00 por 100.000 eventos entregues (após a primeira cópia gratuita)
- Para eventos de dados entregues ao S3, você paga US$ 0,10 por 100.000 eventos entregues
- Para eventos de atividade de rede entregues ao S3, você paga US$ 0,10 por 100.000 eventos entregues
NOTA: As taxas do Amazon S3 se aplicam e não estão incluídas nesta análise.
Se você observar atentamente os preços e compará-los com os trails em nossa conta AWS, poderá ver imediatamente de onde vêm os eventuais altos custos, então agora é importante entender o porquê.
Trails Duplicados
A frase sobre a qual quero que você reflita nos preços é “após a primeira cópia gratuita“. O que isso significa?
Vamos imaginar que você configurou organization trails em todas as contas de membros. Esses trails vão para um bucket S3 em uma conta de logging centralizada, por exemplo. Para entregar os mesmos eventos a outros destinos para permitir que diferentes grupos (por exemplo, desenvolvedores, segurança, auditores, etc.) obtenham sua cópia desses logs de auditoria, você também criou trails nas contas individuais. Embora este seja um caso de uso válido, pode ser caro – a primeira cópia desses eventos é gratuita e você paga pelas outras – e é por isso que chamo isso de trails duplicados. Eles geram uma métrica chamada PaidEventsRecorded, e é assim que a AWS cobra de você.
Ainda na hipotética conta AWS, digamos que este ambiente gere 5 milhões de eventos de gerenciamento entregues ao S3 por mês:
- O primeiro trail, entregue a um bucket S3 que os desenvolvedores podem acessar, é gratuito.
- O segundo trail, entregue a um bucket S3 que a equipe de segurança pode acessar, custará US$ 100 (5.000.000 / 100.000 * $2.00 = $100)
- O terceiro trail, entregue a um bucket S3 que a equipe de auditores pode acessar, custará US$ 100 (5.000.000 / 100.000 * $2.00 = $100)
No total, esses trails duplicados custam US$ 200. Mas há algo que podemos fazer neste cenário, mantendo a conformidade e os privilégios mínimos?
Para evitar custos desnecessários da métrica PaidEventsRecorded, você pode optar por remover os trails criados nas contas específicas e manter o organization trail. Ao fazer isso, todos os logs de trail de eventos de gerenciamento ainda são entregues a um bucket S3 centralizado, mas agora você pode controlar o acesso por conta com funções IAM.
Por exemplo, para dar acesso aos desenvolvedores em suas contas específicas dentro da organização, você pode criar uma função IAM para ser assumida pelos desenvolvedores de uma conta específica, mas permitir que eles acessem apenas o prefixo do bucket dos trails de sua conta. Sua política seria mais ou menos assim:
{
"Effect": "Allow"
"Resource": "arn:aws:s3:::organization-trail-bucket/AWSLogs/OU_ID/ACCOUNT_ID/*",
"Action": [
"s3:Get*",
"s3:HeadObject",
"s3:List*",
"s3:RestoreObject"
],
},
{
"Effect": "Allow"
"Resource": "arn:aws:s3:::organization-trail-bucket",
"Action": "s3:ListBucket",
"Condition": {
"StringLike": {
"s3:prefix": [
"AWSLogs/OU_ID/ACCOUNT_ID/*"
]
}
},
}
Ao manter o organization trail entregando logs a um bucket S3 centralizado e controlar o acesso por meio de funções IAM, você pode erradicar os Custos do AWS CloudTrail de ter trails duplicados.
Eventos de Dados
Um pouco mais complicado do que os Eventos de Gerenciamento, você também paga por Eventos de Dados entregues ao S3. Como não há cópias gratuitas (elas sempre acarretam cobranças desde a primeira cópia) e os eventos de dados podem gerar muito mais logs de auditoria, é mais difícil reduzir os custos. Eles geram uma métrica chamada DataEventsRecorded, e é assim que a AWS cobra de você.
No entanto, os eventos de dados são importantes para fins de auditoria e conformidade. Claro, você sempre pode negociar com a equipe de auditoria ou com a equipe responsável por esses logs se eles forem necessários de acordo com as políticas definidas pela organização.
O conselho da AWS é “filtrar eventos da API de Dados do AWS KMS ou Amazon RDS escolhendo Excluir eventos do AWS KMS ou Excluir eventos da API de Dados do Amazon RDS nas páginas Criar trail ou Atualizar trail“. Isso pode ajudar você a reduzir o número de logs gerados por eventos de dados.
Monitorando os Custos do CloudTrail
Usando o console Cost Explorer, você pode obter uma visão geral das métricas PaidEventsRecorded e DataEventsRecorded e como seus custos aumentam/diminuem ao longo do tempo.
Você pode selecionar as métricas no filtro “Usage Type“:
Gerenciar os Custos do AWS CloudTrail de forma eficaz exige compreender a estrutura de preços e identificar áreas onde as despesas podem ser reduzidas. Ao evitar trails duplicados e utilizar funções IAM para controlar o acesso a um bucket S3 centralizado, você pode eliminar encargos desnecessários de várias cópias de eventos de gerenciamento. Para eventos de dados, considere filtrar logs menos críticos para reduzir custos. Monitorar regularmente essas despesas usando ferramentas como o Cost Explorer pode ajudá-lo a rastrear e gerenciar seus gastos com o CloudTrail de forma mais eficiente, garantindo a conformidade sem gastos excessivos.
Ademais, se você está buscando otimizar sua infraestrutura e reduzir custos, pode ser interessante considerar a possibilidade de migrar seus servidores para a nuvem. Essa estratégia permite uma alocação mais eficiente dos recursos, evitando o desperdício de capacidade ociosa e garantindo que você pague apenas pelo que realmente utiliza. Além disso, a nuvem oferece flexibilidade e escalabilidade, permitindo que você ajuste seus recursos de acordo com as demandas do seu negócio. Para complementar, você pode conferir algumas funcionalidades do Nova Launcher que poderiam melhorar os celulares Pixel e otimizar ainda mais sua experiência.
Além disso, o uso de chatbots de IA pode otimizar o atendimento ao cliente e reduzir custos operacionais. Ao implementar um sistema automatizado, você pode fornecer respostas rápidas e eficientes para as perguntas mais frequentes, liberando sua equipe para lidar com questões mais complexas e estratégicas. Para saber mais sobre as vantagens de utilizar essa tecnologia, confira este artigo sobre as 8 Maneiras de Utilizar a Ferramenta de Pesquisa Profunda do ChatGPT.
Outra dica importante é manter seus sistemas sempre atualizados e otimizados. Softwares desatualizados podem consumir mais recursos e aumentar os riscos de segurança, impactando diretamente nos seus custos. Ao garantir que seus sistemas estejam rodando as versões mais recentes e otimizadas, você pode melhorar o desempenho, reduzir o consumo de recursos e evitar gastos desnecessários. Além disso, aproveite e confira as novidades da Microsoft: Atualizações para o Notepad, Xbox portátil e mais.
O monitoramento constante dos recursos de TI também é fundamental para identificar gargalos e oportunidades de otimização. Ao acompanhar de perto o desempenho dos seus servidores, redes e aplicações, você pode identificar áreas onde é possível reduzir o consumo de recursos, eliminar processos desnecessários e melhorar a eficiência geral do seu ambiente de TI. Ferramentas de monitoramento em tempo real podem fornecer insights valiosos e ajudá-lo a tomar decisões mais informadas sobre como gerenciar seus recursos de forma mais eficiente. Ao analisar os dados coletados, você pode identificar tendências, prever problemas futuros e tomar medidas proativas para evitar interrupções e otimizar o desempenho.
Este conteúdo foi auxiliado por Inteligência Artificial, mas escrito e revisado por um humano.