Avalie os requisitos de fiabilidade das suas cargas de trabalho na nuvem

Last reviewed 2024-11-20 UTC

O primeiro passo para criar uma infraestrutura fiável para as suas cargas de trabalho na nuvem é identificar os requisitos de fiabilidade das cargas de trabalho. Esta parte do Google Cloud guia de fiabilidade da infraestrutura fornece diretrizes para ajudar a definir os requisitos de fiabilidade das cargas de trabalho que implementa no Google Cloud.

Determine os requisitos específicos da carga de trabalho

Os requisitos de fiabilidade de uma aplicação dependem da natureza do serviço que a aplicação fornece ou do processo que executa. Por exemplo, uma aplicação que faculte serviços de caixa multibanco para um banco pode precisar de uma disponibilidade de 99,999%. Um Website que suporte uma plataforma de negociação online pode precisar de uma disponibilidade de 99,999% e um tempo de resposta rápido. Um processo em lote que escreve transações bancárias num livro de contabilidade no final de cada dia pode ter um objetivo de atualização dos dados de oito horas.

Numa aplicação, os componentes ou as operações individuais podem ter requisitos de fiabilidade variáveis. Por exemplo, uma aplicação de processamento de encomendas pode precisar de uma fiabilidade superior para operações que escrevem dados na base de dados de encomendas em comparação com pedidos de leitura.

A avaliação detalhada dos requisitos de fiabilidade das suas cargas de trabalho ajuda a concentrar os seus gastos e esforços nas cargas de trabalho que são essenciais para a sua empresa.

Identifique períodos críticos

Pode haver períodos em que uma aplicação é mais essencial para a empresa do que noutras alturas. Estes períodos são, muitas vezes, os momentos em que a aplicação tem o pico de carga. Identifique estes períodos, planeie capacidade adequada e teste a aplicação em condições de pico de carga. Para evitar o risco de falhas de aplicações durante os períodos de pico de carga, pode usar práticas operacionais adequadas, como congelar o código de produção.

Seguem-se exemplos de aplicações que registam picos sazonais na carga:

  • Normalmente, o módulo de inventário de uma aplicação de contabilidade financeira é usado com maior frequência nos dias em que as auditorias de inventário mensais, trimestrais ou anuais estão agendadas.
  • Um Website de comércio eletrónico teria picos significativos no carregamento durante as épocas de compras de pico ou eventos promocionais.
  • Uma base de dados que suporta o módulo de admissões de alunos de uma universidade teria um volume elevado de operações de escrita durante determinados meses de cada ano.
  • Um serviço de declaração de impostos online teria uma carga elevada durante a época de declaração de impostos.
  • Uma plataforma de negociação online pode precisar de uma disponibilidade de 99,999% e um tempo de resposta rápido, mas apenas durante o horário de negociação (por exemplo, das 08:00 às 17:00 de segunda a sexta-feira).

Considere outros requisitos não funcionais

Além dos requisitos de fiabilidade, as aplicações empresariais podem ter outros requisitos não funcionais importantes para a segurança, o desempenho, o custo e a eficiência operacional. Quando avaliar os requisitos de fiabilidade de uma aplicação, considere as dependências e os compromissos com estes outros requisitos.

Seguem-se exemplos de requisitos que não são de fiabilidade, mas podem envolver compromissos com os requisitos de fiabilidade.

  • Otimização de custos: para otimizar os custos de TI, a sua organização pode impor quotas para determinados recursos da nuvem. Por exemplo, para reduzir o custo das licenças de software de terceiros, a sua organização pode definir quotas para o número de núcleos de computação que podem ser aprovisionados. Podem existir quotas semelhantes para a quantidade de dados que podem ser armazenados e o volume de tráfego de rede entre regiões. Considere os efeitos destas restrições de custos nas opções disponíveis para criar uma infraestrutura fiável.
  • Residência dos dados: para cumprir os requisitos regulamentares, a sua aplicação pode ter de armazenar e tratar dados em países específicos, mesmo que a empresa sirva utilizadores a nível global. Considere estas restrições de residência dos dados ao decidir as regiões e as zonas onde as suas aplicações podem ser implementadas.

Determinadas decisões de design que toma para cumprir outros requisitos podem ajudar a melhorar a fiabilidade das suas aplicações. Seguem-se alguns exemplos:

  • Automatização da implementação: para operar as suas implementações na nuvem de forma eficiente, pode decidir automatizar o fluxo de aprovisionamento através da infraestrutura como código (IaC). Da mesma forma, pode automatizar o processo de criação e implementação da aplicação através de um pipeline de integração contínua e implementação contínua (CI/CD). A utilização de pipelines de IaC e CI/CD pode ajudar a melhorar não só a eficiência operacional, mas também a fiabilidade das suas cargas de trabalho.
  • Controlos de segurança: os controlos de segurança que implementar também podem ajudar a melhorar a disponibilidade da aplicação. Por exemplo, as políticas de segurança do Google Cloud Armor podem ajudar a garantir que a aplicação permanece disponível durante ataques de negação de serviço (DoS).
  • Colocação em cache de conteúdo: para melhorar o desempenho de uma aplicação de publicação de conteúdo, pode ativar a colocação em cache como parte da configuração do equilibrador de carga. Com este design, os utilizadores não só têm um acesso mais rápido ao conteúdo, como também uma maior disponibilidade. Podem aceder ao conteúdo em cache mesmo quando os servidores de origem estão em baixo.

Reavalie os requisitos periodicamente

À medida que a sua empresa evolui e cresce, os requisitos das suas aplicações podem mudar. Reavalie periodicamente os seus requisitos de fiabilidade e certifique-se de que estão alinhados com os objetivos e as prioridades atuais da sua organização.

Considere uma aplicação que ofereça um nível de disponibilidade padrão a todos os utilizadores. Pode ter implementado a aplicação em duas zonas numa região, com um equilibrador de carga regional como front-end. Se a sua organização planeia lançar uma opção de serviço premium que ofereça uma maior disponibilidade, então os requisitos de fiabilidade da aplicação mudaram. Para cumprir os novos requisitos de disponibilidade, pode ter de implementar a aplicação em várias regiões e usar um balanceador de carga global com o Cloud CDN ativado.

Outra oportunidade para reavaliar os requisitos de disponibilidade das suas aplicações é após a ocorrência de uma indisponibilidade. As indisponibilidades podem expor expetativas incompatíveis entre diferentes equipas na sua empresa. Por exemplo, uma equipa pode considerar aceitável uma indisponibilidade de 45 minutos uma vez por ano (ou seja, uma disponibilidade anual de 99,99%). No entanto, outra equipa pode esperar um tempo de inatividade máximo de 4,3 minutos por mês (ou seja, uma disponibilidade mensal de 99,99%). Consoante a forma como decide modificar ou esclarecer os requisitos de disponibilidade, deve ajustar a sua arquitetura para cumprir os novos requisitos.