A ascensão da computação em nuvem e a importância do uso de tags para o gerenciamento de custos
Uma tag é um par de chave:valor, que é uma palavra-chave ou termo atribuído a um recurso que, em termos práticos, é uma identificação de um objeto, como por exemplo, colocar o nome no caderno, com o intuito de identificar a quem pertence.
Com a crescente aderência pela computação em nuvem no mercado, em detrimento das características e vantagens oferecidas por essa tecnologia, como agilidade, segurança, performance, escalabilidade, etc, a produção de novas soluções digitais (sites, projetos, aplicativos) têm aumentado com rapidez, o que consequentemente eleva os custos em nuvem, evidenciando, dessa forma, a necessidade do gerenciamento desses gastos.
John F. Gantz fez um estudo sobre essa mudança para a computação em nuvem no documento técnico intitulado The Impact of Digital Transformation During Times of Change, onde mostra que até 2024 o custo de cloud irá representar mais de 30% dos investimentos em transformação digital. A pesquisa State of Cloud de 2023 mostra que o principal desafio das organizações atualmente é a gestão do custo em nuvem (Figura 1).
Uma das principais maneiras de alocação de custos de cloud e que é difundida pela FinOps Foundation, por exemplo, é através da identificação dos recursos provisionados na nuvem com o uso da tag/etiqueta ou label. Tal identificador pode ser chamado por diferentes termos, dependendo do provedor de nuvem. Uma tag é um par de chave:valor, que é uma palavra-chave ou termo atribuído a um recurso, que em termos práticos, é uma identificação de um objeto, como por exemplo, colocar o nome no caderno, com o intuito de identificar a quem pertence.
Na computação em nuvem, é possível utilizar mais de uma tag em um único recurso, e cada usuário e/ou companhia pode definir qual/quais tipo(s) de informação(ções) faz(em) mais sentido para obter, acompanhar e gerenciar de acordo com o negócio. Alguns exemplos de informações possíveis de visualizar através das tags, são: equipe responsável pelo gerenciamento do recurso, qual é a aplicação que o recurso faz parte, qual cliente esse recurso atende, dentre outros.
Além disso, é importante pontuar que através das tags é possível fazer automações, podendo desligar recursos fora do horário comercial, utilizando um par chave:valor, desliga-noite:sim, por exemplo, onde ao executar um script, os recursos marcados com essa tag, serão desligados fora do horário comercial e religados após esse período.
O uso das tags proporciona visibilidade dos custos na nuvem, é possível compreender quanto cada equipe está gastando ou quanto uma aplicação está custando, o que proporciona maior segurança para uma companhia produzir orçamentos e previsões. Somado a esse fato, também é possível entender os maiores ofensores em relação ao custo e onde os times conseguem ser mais assertivos para atuarem , por exemplo, dando a oportunidade para as equipes trabalharem com redimensionamentos e otimizações. Outro benefício do uso das tags é o direcionamento dos custos para quem está utilizando, e não somente mostrar quanto está gastando, o que promove maior consciência de custos e responsabilidade financeira.
Dado os benefícios do uso das tags, há desafios a serem enfrentados, como:
- Padronização do uso das etiquetas: garantir a homogeneidade do uso das tags é muito importante, pois dessa forma, é possível ter maior assertividade no gerenciamento de custos;
- Automatização do processo de tagueamento: atualmente existem ferramentas que possibilitam o provisionamento de recursos via código, por exemplo, o que também facilita a utilização das tags. No entanto, quando se depara em um cenário onde tais recursos são criados sem tags, há o desafio de encontrar maneiras de automatizar o processo;
- Conhecimento técnico dos times: ter esse discernimento é importante para que, ao utilizar scripts que façam o tagueamento de um dado recurso, por exemplo, é necessário fazer testes antes de colocar em produção, pois em um cenário hipotético, pode ocorrer de o código colocar as etiquetas desejadas e apagar as demais que já estão no recurso, quebrando automações existentes;
- Engajamento das pessoas: este talvez seja um dos maiores desafios, porque o tagueamento não é um processo em que os times conseguem ver resultado instantaneamente, além disso, é um trabalho constante. Portanto, o papel do time de FinOps é de mostrar a importância do uso das tags, como isso afeta a visibilidade de custos do próprio time responsável pelos recursos e de que forma atinge a organização como um todo.
Os desafios estão sempre presentes, porém, alguns passos podem ser seguidos para construção de um processo de tagueamento:
- Defina sua estratégia: quantas, quais chaves e valores são importantes pensando no seu negócio e segmento;
- Monte um plano de trabalho: estabeleça metas com os times para realizar o tagueamento dos recursos, conte com apoio de DevOps e de desenvolvimento;
- Dê visibilidade sobre o andamento do tagueamento: é importante mostrar inicialmente o estado atual da organização em relação ao tagueamento, para engajar os times. Ao longo do processo, é necessário continuar dando visibilidade para que todos saibam como está o andamento do trabalho e se for preciso, também dar direcionamento do que ainda precisa ser feito;
- Centralize o processo de visibilidade no time de FinOps: isso agrega conhecimento, traz responsabilidade e propriedade para discussão do tema;
- Entenda que o processo de tagueamento será um trabalho contínuo e deve sempre ser levado em consideração na criação dos recursos. Uma das coisas que pode contribuir é ter metas específicas de tagueamento no(s) time(s);
- Crie automações para fazer o processo de tagueamento e ganhar escala.
Conclusão
O crescimento da computação em nuvem é realidade e o maior desafio das organizações, atualmente, é o gerenciamento de custos. Para isso, o uso das tags é recomendado, o que possibilita a visibilidade de custos de cloud detalhados. Com isso, é importante pensar acerca da utilização das tags desde o início da utilização de computação em nuvem.