Perspectiva de FSI: otimização de custos

Este documento no Google Cloud Framework bem arquitetado: perspectiva de instituições financeiras fornece uma visão geral dos princípios e recomendações para otimizar o custo das cargas de trabalho do setor de serviços financeiros (FSI, na sigla em inglês) no Google Cloud. As recomendações neste documento estão alinhadas ao pilar de otimização de custos do framework bem arquitetado.

Para uma otimização de custos robusta para cargas de trabalho de serviços financeiros, são necessários os seguintes elementos fundamentais:

  • A capacidade de identificar o uso de recursos desperdiçado em comparação com o que gera valor.
  • Uma cultura incorporada de responsabilidade financeira.

Para otimizar os custos, é necessário entender os fatores de custo e as necessidades de recursos em toda a organização. Em algumas grandes organizações, principalmente aquelas que estão no início da jornada para a nuvem, uma única equipe costuma ser responsável por otimizar os gastos em um grande número de domínios. Essa abordagem considera que uma equipe central é a mais adequada para identificar oportunidades de alto valor e melhorar a eficiência.

A abordagem centralizada pode ter algum sucesso durante os estágios iniciais da adoção da nuvem ou para cargas de trabalho não críticas. No entanto, uma única equipe não consegue otimizar os custos em toda a organização. Quando o uso de recursos ou o nível de análise regulatória aumenta, a abordagem centralizada não é sustentável. As equipes centralizadas enfrentam desafios de escalonabilidade, principalmente ao lidar com um grande número de produtos e serviços financeiros. As equipes de projeto proprietárias dos produtos e serviços podem resistir a mudanças feitas por uma equipe externa.

Para uma otimização de custos eficaz, os dados relacionados a gastos precisam ser altamente visíveis, e os engenheiros e outros usuários da nuvem que estão próximos das cargas de trabalho precisam ser motivados a tomar medidas para otimizar os custos. Do ponto de vista organizacional, o desafio da otimização de custos é identificar quais áreas precisam ser otimizadas, os engenheiros responsáveis por elas e convencê-los a tomar as medidas de otimização necessárias. Este documento fornece recomendações para enfrentar esse desafio.

As recomendações de otimização de custos neste documento são mapeadas para os seguintes princípios básicos:

Identificar o desperdício usando ferramentas do Google Cloud

OGoogle Cloud oferece vários produtos, ferramentas e recursos para ajudar você a identificar o desperdício. Considere as recomendações a seguir.

Use a automação e a IA para identificar sistematicamente o que otimizar

O Active Assist oferece recomendações inteligentes em serviços essenciais para o setor financeiro, como o Cloud Run para microsserviços, o BigQuery para análise de dados, o Compute Engine para aplicativos principais e o Cloud SQL para bancos de dados relacionais. As recomendações do Active Assist são fornecidas sem custo financeiro e sem nenhuma configuração da sua parte. As recomendações ajudam a identificar recursos ociosos e compromissos subutilizados.

Centralize o monitoramento e o controle de FinOps em uma interface unificada

Os relatórios do Cloud Billing e o Hub do FinOps permitem implementar um monitoramento de custos abrangente. Essa visão abrangente é vital para auditores financeiros e equipes financeiras internas monitorarem os gastos na nuvem, avaliarem a situação financeira, analisarem a maturidade da FinOps em várias unidades de negócios ou centros de custo e fornecerem uma narrativa financeira consistente.

Identificar valor analisando e enriquecendo dados de gastos

O Active Assist é eficaz na identificação de desperdícios óbvios. No entanto, identificar o valor pode ser mais difícil, principalmente quando as cargas de trabalho estão em produtos inadequados ou não têm um alinhamento claro com o valor comercial. Para cargas de trabalho de instituições financeiras, o valor comercial vai além da redução de custos. O valor inclui mitigação de riscos, conformidade regulatória e vantagens competitivas.

Para entender o gasto e o valor da nuvem de forma holística, é necessário ter uma compreensão completa em vários níveis: de onde vem o gasto, qual função de negócios ele está impulsionando e a viabilidade técnica de refatorar ou otimizar a carga de trabalho em questão.

O diagrama a seguir mostra como aplicar a pirâmide de dados, informações, conhecimento e sabedoria (DIKW) e as ferramentas do Google Cloud para ter uma compreensão holística dos custos e do valor da nuvem.

A pirâmide de dados, informações, conhecimento e sabedoria (DIKW, na sigla em inglês) mostra como usar os dados de gastos na nuvem para fundamentar decisões.

O diagrama anterior mostra como usar a abordagem DIKW para refinar dados brutos de gastos na nuvem em insights e decisões práticas que impulsionam o valor comercial.

  • Dados: nessa camada, você coleta fluxos brutos e não processados de dados de uso e custo dos seus recursos de nuvem. Sua equipe central de FinOps usa ferramentas como faturas do Cloud Billing, exportações de faturamento e o Cloud Monitoring para receber dados detalhados e granulares. Por exemplo, um ponto de dados pode ser que uma VM chamada app1-test-vmA foi executada por 730 horas na região us-central1 e custou US$ 70.
  • Informações: nessa camada, sua equipe central de FinOps usa ferramentas como relatórios do Cloud Billing e o Hub do FinOps para estruturar os dados brutos e ajudar a responder perguntas como "Em quais categorias de recursos as pessoas estão gastando dinheiro?" Por exemplo, você pode descobrir que um total de US$ 1.050 foi gasto em VMs do tipo de máquina n4-standard-2 em duas regiões nos EUA.
  • Conhecimento: nessa camada, sua equipe central de FinOps enriquece as informações com o contexto comercial adequado sobre quem gastou dinheiro e para qual finalidade. Você usa mecanismos como inclusão de tags e rótulos, hierarquia de recursos, contas de faturamento e painéis personalizados do Looker. Por exemplo, você pode determinar que a equipe de testes app1 nos EUA gastou US$ 650 durante a segunda semana de julho como parte de um exercício de teste de estresse.
  • Sabedoria: nessa camada, as equipes de produtos e aplicativos usam o conhecimento contextualizado para avaliar o valor comercial dos gastos com a nuvem e tomar decisões estratégicas e fundamentadas. Suas equipes podem responder a perguntas como as seguintes:
    • Os US$ 5.000 gastos em um pipeline de análise de dados estão gerando valor comercial?
    • Podemos reestruturar o pipeline para ser mais eficiente sem reduzir o desempenho?

Considere as seguintes recomendações para analisar dados de gastos na nuvem.

Analise os dados de gastos fornecidos por Google Cloud

Comece com dados detalhados do Cloud Billing que são exportados para o BigQuery e dados disponíveis nos registros do Monitoring. Para extrair insights úteis e tomar decisões, é necessário estruturar e enriquecer esses dados com o contexto de negócios.

Visualizar dados com as ferramentas disponíveis

Aumente os painéis Google Cloud integrados com relatórios personalizados usando ferramentas como o Looker Studio com base nas exportações do BigQuery. As equipes financeiras podem criar painéis personalizados que contextualizam os gastos na nuvem em relação a métricas financeiras, requisitos de relatórios regulatórios e lucratividade da unidade de negócios. Assim, eles podem fornecer uma narrativa financeira clara para análise e tomada de decisões pelos stakeholders executivos.

Alocar gastos para promover a responsabilidade

Depois de entender o que está impulsionando os gastos na nuvem, você precisa identificar quem está gastando dinheiro e por quê. Esse nível de compreensão exige uma prática robusta de alocação de custos, que envolve anexar metadados relevantes para os negócios aos recursos da nuvem. Por exemplo, se um recurso específico for usado pela equipe Banking-AppDev, você poderá anexar uma tag como team=banking_appdev ao recurso para rastrear o custo que a equipe incorre nele. O ideal é alocar 100% dos custos da nuvem à origem do gasto. Na prática, você pode começar com uma meta menor, porque criar uma estrutura de metadados para oferecer suporte a 100% da alocação de custos é um esforço complexo.

Considere as seguintes recomendações para desenvolver uma estratégia de metadados que apoie a alocação de custos:

  • Validade: garanta que as tags ajudem a identificar indicadores principais de performance (KPIs) relacionados aos negócios e requisitos regulamentares. Essa associação é fundamental para estornos internos, relatórios regulatórios e alinhamento dos gastos na nuvem com as metas da unidade de negócios. Por exemplo, as seguintes tags identificam claramente uma equipe de gastos, a região dela e o produto em que ela trabalha: team=banking_appdev, region=emea, product=frontend.
  • Automação: para alcançar um alto nível de conformidade com a inclusão de tag, faça isso por automação. A inclusão manual de tags é propensa a erros e inconsistências, o que é inaceitável em ambientes de serviços financeiros, em que a capacidade de auditoria e a precisão financeira são fundamentais. A inclusão de tags automática garante que os recursos sejam categorizados corretamente quando são criados.
  • Simplicidade: meça fatores simples e não correlacionados. Os ambientes de FSI são complexos. Para garantir que as regras de alocação de custos em um ambiente desse tipo sejam fáceis de entender e aplicar, elas precisam ser o mais simples possível. Evite criar regras complexas demais para casos muito específicos (marginais). Regras complexas podem causar confusão e resistência das equipes operacionais.

Depois de definir uma estratégia de alocação usando tags, você precisa decidir o nível de granularidade em que ela será implementada. A granularidade necessária depende das necessidades da sua empresa. Por exemplo, algumas organizações precisam rastrear o custo no nível do produto, outras precisam de dados de custo para cada centro de custo, e outras precisam de dados de custo por ambiente (desenvolvimento, teste e produção).

Considere as seguintes abordagens para alcançar o nível adequado de granularidade de alocação de custos para sua organização:

  • Use a hierarquia de projetos no Google Cloud como ponto de partida natural para a alocação de custos. Os projetos representam pontos de aplicação de políticas no Google Cloud. Por padrão, as permissões do IAM, as políticas de segurança e o custo são atribuídos a projetos e pastas. Ao analisar os dados de custo exportados do Cloud Billing, é possível conferir a hierarquia de pastas e os projetos associados a esses dados. Se aGoogle Cloud hierarquia de recursos refletir a estrutura de responsabilidade da sua organização para gastos, essa será a maneira mais simples de implementar a alocação de custos.
  • Use tags e rótulos para mais detalhes. Elas oferecem maneiras flexíveis de categorizar recursos nas exportações de faturamento. Tags e rótulos facilitam detalhamentos de custos por aplicativo e ambiente.

Muitas vezes, é necessário usar a hierarquia de projetos combinada com inclusão de tags e rótulos para uma alocação de custos eficaz. Independente da abordagem de alocação de custos escolhida, siga as recomendações descritas anteriormente para desenvolver uma estratégia de metadados robusta: validação, automação e simplicidade.

Promova a responsabilidade e motive os engenheiros a agir

A equipe de FinOps da nuvem é responsável por fazer com que uma organização tenha consciência dos custos e do valor. As equipes de produtos e de engenharia precisam tomar as medidas necessárias para otimizar os custos. Essas equipes também são responsáveis pelo comportamento de custo das cargas de trabalho de serviços financeiros e por garantir que elas ofereçam o valor comercial necessário.

Considere as seguintes recomendações para aumentar a responsabilidade e motivar as equipes a otimizar os custos.

Estabelecer uma equipe centralizada de FinOps para governança

As práticas de Cloud FinOps não crescem organicamente. Uma equipe de FinOps dedicada precisa definir e estabelecer práticas de FinOps fazendo o seguinte:

  • Crie os processos, as ferramentas e as orientações necessárias.
  • Crie, comunique e aplique as políticas necessárias, como inclusão de tag obrigatória, revisões de orçamento e processos de otimização.
  • Incentive as equipes de engenharia a assumir a responsabilidade pelos custos.
  • Intervenha quando as equipes de engenharia não assumirem a responsabilidade pelos custos.

Receber patrocínio e mandatos executivos

A liderança sênior, incluindo o CTO, o CFO e o CIO, precisa defender ativamente uma mudança em toda a organização para uma cultura de FinOps. O apoio deles é fundamental para priorizar a responsabilidade pelos custos, alocar recursos para o programa de FinOps, garantir a participação multifuncional e impulsionar a conformidade com os requisitos de FinOps.

Incentivar as equipes a otimizar os custos

Os engenheiros e as equipes de engenharia podem não ter motivação para se concentrar na otimização de custos. É importante alinhar as metas da equipe e individuais com a eficiência de custos implementando incentivos como os seguintes:

  • Reinvestir uma parte da economia da otimização de custos nas equipes que a alcançaram.
  • Reconheça e comemore publicamente os esforços e sucessos na otimização de custos.
  • Use técnicas de gamificação para recompensar as equipes que otimizam os custos de forma eficaz.
  • Integre métricas de eficiência às metas de performance.

Implementar técnicas de showback e estorno

Garantir que as equipes tenham visibilidade clara dos recursos e custos da nuvem que possuem. Atribua a responsabilidade financeira às pessoas certas nas equipes. Use mecanismos formais para aplicar inclusão de tags rigorosa e implementar regras transparentes para alocar custos compartilhados.

Foque o valor e o custo total de propriedade, não o custo

Ao avaliar soluções de nuvem, considere o custo total de propriedade (TCO) de longo prazo. Por exemplo, a hospedagem própria de um banco de dados para um aplicativo pode parecer mais barata do que usar um serviço de banco de dados gerenciado como o Cloud SQL. No entanto, para avaliar o valor de longo prazo e o TCO, é preciso considerar os custos ocultos associados aos bancos de dados autohospedados. Esses custos incluem o esforço de engenharia dedicado para aplicação de patches, escalonamento, reforço da segurança e recuperação de desastres, que são requisitos essenciais para cargas de trabalho de instituições financeiras. Os serviços gerenciados oferecem um valor de longo prazo muito maior, o que compensa os custos de infraestrutura. Os serviços gerenciados oferecem recursos de conformidade robustos, têm recursos de confiabilidade integrados e ajudam a reduzir a sobrecarga operacional.

Considere as seguintes recomendações para se concentrar no valor e no TCO.

Usar técnicas e ferramentas específicas do produto para otimizar recursos

Use ferramentas e recursos de otimização de custos fornecidos pelos produtos do Google Cloud, como:

Aproveite os descontos

Para garantir que a taxa de faturamento dos seus recursos de nuvem seja a mais baixa possível, use os descontos oferecidos pelo Google. Normalmente, as equipes individuais de produtos e engenharia gerenciam a otimização de recursos. A equipe central de FinOps é responsável por otimizar as taxas de faturamento porque tem visibilidade dos requisitos de recursos em toda a organização. Portanto, eles podem agregar os requisitos e maximizar os descontos com base no compromisso.

Você pode aproveitar os seguintes tipos de descontos para recursos do Google Cloud :

  • Os descontos empresariais são negociados com base no compromisso da sua organização com um gasto total mínimo no Google Cloud a uma taxa de faturamento reduzida.
  • Os CUDs com base em recursos são oferecidos em troca do compromisso de usar uma quantidade mínima de recursos do Compute Engine por um período de um ou três anos. Os CUDs baseados em recursos são aplicáveis aos recursos que estão em um projeto e uma região específicos. Para compartilhar CUDs em vários projetos, ative o compartilhamento de descontos.
  • Os CUDs com base em gastos são oferecidos em troca de um compromisso de gastar um valor mínimo em um produto específico durante um período de um ou três anos. Os descontos baseados em gastos são aplicáveis no nível da conta de faturamento. Os descontos são aplicados regionalmente ou globalmente, dependendo do produto.

É possível economizar muito usando CUDs além dos descontos empresariais.

Além dos CUDs, use as seguintes abordagens para reduzir as taxas de faturamento:

  • Use VMs do Spot para cargas de trabalho tolerantes a falhas e flexíveis. As VMs do Spot são mais de 80% mais baratas do que as VMs comuns.
  • O BigQuery oferece vários modelos de preços, incluindo preços sob demanda e preços com base na edição, que se baseiam em compromissos e requisitos de escalonamento automático. Se você usa um volume significativo de recursos do BigQuery, escolha uma edição adequada para reduzir o custo por slot das cargas de trabalho de análise.
  • Avalie com cuidado as Google Cloud regiões disponíveis para os serviços que você precisa usar. Escolha regiões que estejam alinhadas aos seus objetivos de custo e fatores como requisitos de latência e conformidade. Para entender as compensações entre custo, sustentabilidade e latência, use o Google Cloud Seletor de região.