Partilhar via


Cargas de trabalho críticas

Esta seção se esforça para abordar os desafios de projetar cargas de trabalho de missão crítica no Azure. As orientações baseiam-se nas lições aprendidas com a análise de vários aplicativos de clientes e soluções de primeira parte. Esta seção fornece orientação acionável e autoritária que aplica as práticas recomendadas do Well-Architected como base técnica para criar e operar uma solução altamente confiável no Azure em escala.

O que é uma carga de trabalho de missão crítica?

O termo carga de trabalho refere-se a uma coleção de recursos de aplicativos que dão suporte a um objetivo comercial comum ou à execução de um processo de negócios comum, com vários serviços, como APIs e armazenamentos de dados, trabalhando juntos para fornecer funcionalidade específica de ponta a ponta.

O termo missão crítica refere-se a uma escala de criticidade que cobre custos financeiros significativos (críticos para os negócios) ou humanos (críticos para a segurança) associados à indisponibilidade ou ao baixo desempenho.

Uma carga de trabalho de missão crítica, portanto, descreve uma coleção de recursos de aplicativos, que devem ser altamente confiáveis na plataforma. A carga de trabalho deve estar sempre disponível, resiliente a falhas e operacional.

Vídeo: Cargas de trabalho de missão crítica no Azure

Quais são os desafios comuns?

O Microsoft Azure facilita a implantação e o gerenciamento de soluções em nuvem. No entanto, a criação de cargas de trabalho de missão crítica que sejam altamente confiáveis na plataforma continua sendo um desafio pelos seguintes motivos principais:

  • Projetar um aplicativo confiável em escala é complexo. Requer amplo conhecimento da plataforma para selecionar as tecnologias certas e configurá-las de forma otimizada para oferecer funcionalidade de ponta a ponta.

  • A falha é inevitável em qualquer sistema distribuído complexo e, portanto, a solução deve ser arquitetada para lidar com falhas com impacto correlacionado ou em cascata. Esta é uma mudança de mentalidade para muitos desenvolvedores e arquitetos que entram na nuvem a partir de um ambiente local; A engenharia de confiabilidade não é mais um assunto de infraestrutura, mas deve ser uma preocupação de primeira classe dentro do processo de desenvolvimento de aplicativos.

  • A operacionalização de cargas de trabalho de missão crítica requer um alto grau de rigor e maturidade de engenharia durante todo o ciclo de vida da engenharia de ponta a ponta, bem como a capacidade de aprender com as falhas.

A missão crítica tem apenas a ver com fiabilidade?

Embora o foco principal das cargas de trabalho de missão crítica seja a confiabilidade, outros pilares da estrutura bem arquitetada são igualmente importantes ao criar e operar uma carga de trabalho de missão crítica no Azure.

  • Segurança: a forma como uma carga de trabalho atenua as ameaças à segurança, como os ataques distribuídos de negação de serviço (DDoS), terá um impacto significativo na fiabilidade geral.

  • Excelência operacional: como uma carga de trabalho é capaz de responder efetivamente a problemas operacionais terá um impacto direto na disponibilidade do aplicativo.

  • Eficiência de desempenho: a disponibilidade é mais do que um simples tempo de atividade, mas sim um nível consistente de serviço e desempenho de aplicativos em relação a um estado íntegro conhecido.

Alcançar alta confiabilidade impõe compensações de custo significativas, que podem não ser justificáveis para todos os cenários de carga de trabalho. Recomenda-se, portanto, que as decisões de design sejam orientadas por requisitos de negócios.

Quais são as principais áreas de design?

A orientação de missão crítica desta série é composta por considerações arquitetônicas e recomendações orientadas em torno dessas áreas-chave de projeto.

Áreas de projeto de missão crítica

As áreas de design estão inter-relacionadas e as decisões tomadas dentro de uma área podem impactar ou influenciar as decisões em todo o projeto. Recomendamos que os leitores se familiarizem com essas áreas de design, revendo as considerações e recomendações fornecidas para entender melhor as consequências das decisões englobadas. Por exemplo, para definir uma arquitetura de destino, é fundamental determinar a melhor forma de monitorar a integridade do aplicativo nos principais componentes. Neste caso, o leitor deve rever a área de design de modelagem de integridade, usando as recomendações descritas para ajudar a conduzir decisões.

Área de design Resumo
Conceção de aplicações O uso de uma arquitetura de unidade de escala no contexto da construção de uma aplicação altamente confiável. Também explora os padrões de design de aplicativos em nuvem que permitem dimensionamento e tratamento de erros.
Plataforma de aplicação Fatores de decisão e recomendações relacionados à seleção, design e configuração de uma plataforma de hospedagem de aplicativos apropriada, dependências de aplicativos, estruturas e bibliotecas.
Plataforma de dados Opções em tecnologias de armazenamento de dados, informadas pela avaliação do necessário — volume, velocidade, variedade, veracidade.
Rede e conectividade Conceitos de topologia de rede em nível de aplicação, considerando a conectividade necessária e o gerenciamento de tráfego redundante. Recomendações críticas destinadas a informar o projeto de uma topologia de rede global segura e escalável.
Modelação e observabilidade em saúde Processos para definir um modelo de integridade robusto, mapeando estados quantificados de integridade da aplicação através de observabilidade e construções operacionais para alcançar a maturidade operacional.
Implantação e teste Erradique o tempo de inatividade e mantenha a integridade do aplicativo para operações de implantação, fornecendo considerações e recomendações importantes destinadas a informar o projeto de pipelines de CI/CD ideais para um aplicativo de missão crítica.
Segurança Proteja o aplicativo contra ameaças destinadas a comprometer direta ou indiretamente sua confiabilidade.
Procedimentos operacionais A adoção de DevOps e métodos de implantação relacionados é usada para impulsionar procedimentos operacionais eficazes e consistentes.

Exemplos ilustrativos

As orientações fornecidas nesta série baseiam-se numa abordagem orientada para a solução para ilustrar as principais considerações e recomendações de conceção. Existem várias implementações de referência disponíveis que podem ser usadas como base para o desenvolvimento de soluções.

  • Arquitetura de linha de base de um aplicativo voltado para a Internet — fornece uma base para a criação de um aplicativo nativo da nuvem, altamente escalável e voltado para a Internet no Microsoft Azure. A carga de trabalho é acessada por meio de um ponto de extremidade público e não requer conectividade de rede privada para um conjunto técnico organizacional circundante.

    Consulte a implementação: Mission-Critical Online

  • Arquitetura de linha de base de um aplicativo voltado para a Internet com controles de rede — estende a arquitetura de linha de base com controles de rede rigorosos em vigor para impedir o acesso público não autorizado da Internet a qualquer um dos recursos de carga de trabalho.

  • Arquitetura de linha de base em uma zona de aterrissagem do Azure — fornece uma base para a criação de um aplicativo nativo da nuvem conectado à empresa no Microsoft Azure usando a infraestrutura de rede existente e pontos de extremidade privados. A carga de trabalho requer conectividade privada com outros recursos organizacionais e depende de Redes Virtuais pré-fornecidas para conectividade com outros recursos organizacionais. Este caso de uso destina-se a cenários que exigem integração com um conjunto técnico organizacional mais amplo para cargas de trabalho voltadas para o público ou para o interior.

    Consulte a implementação: Mission-Critical Connected

Próximo passo

Comece revisando a metodologia de design para cenários de aplicativos de missão crítica.