Recomendações para efetuar a análise de modo de falha
Aplica-se a esta recomendação da lista de verificação de Fiabilidade do Power Platform Well-Architected:
RE:03 | Utilize a análise do modo de falha (FMA) para identificar e priorizar potenciais falhas nos componentes da solução. Execute o FMA para ajudá-lo a avaliar o risco e o efeito de cada modo de falha. Determine como a carga de trabalho responde e se recupera. |
---|
Este guia descreve as melhores práticas para executar a análise de modo de falha (FMA) para a sua carga de trabalho. A FMA é a prática de identificar potenciais pontos de falha dentro da sua carga de trabalho e os fluxos associados e planear ações de mitigação em conformidade. Em cada passo do fluxo, identifica o raio de impacto de vários tipos de falha, o que ajuda a estruturar uma nova carga de trabalho ou refatorizar uma carga de trabalho existente para minimizar o efeito generalizado das falhas.
Um princípio fundamental da FMA é que as falhas acontecem independentemente das camadas de resiliência aplicadas. Os ambientes mais complexos estão expostos a mais tipos de falha. Dado esta realidade, a FMA permite que conceba a sua carga de trabalho para suportar a maioria dos tipos de falhas e recupere graciosamente quando ocorre uma falha.
Se ignorar completamente a FMA ou executar uma análise incompleta, a sua carga de trabalho correrá o risco de comportamento imprevisível e possíveis indisponibilidades causadas por um design abaixo do ideal.
Definições
Termo | Definição |
---|---|
Código de falha | Um tipo de problema que pode fazer com que um ou mais componentes da carga de trabalho sejam degradados ou gravemente afetados ao ponto de não estarem disponíveis. |
Mitigação | As atividades que identificou para abordar problemas de forma proativa ou reativa. |
Deteção | Os seus processos e procedimentos de monitorização e alerta de dados e aplicações. |
Principais estratégias de design
No contexto da FMA, compreender os pré-requisitos é crucial. Comece por rever e implementar as recomendações para identificação dos fluxos, atribuindo-lhes prioridade com base na criticidade. Os seus artefactos de dados desempenham uma função fundamental na descrição dos caminhos de dados nestes fluxos. Ao aprofundar a abordagem da FMA, concentre-se no planeamento de componentes para fluxos críticos, identificando dependências (internas e externas) e delineando estratégias de mitigação.
Pré-requisitos
Reveja e implemente as recomendações para a identificação e classificação de fluxos. Assume-se que identificou e priorizou os fluxos de utilizadores e de sistema com base no nível de criticidade.
Os dados que reuniu e os artefactos que criou no seu trabalho fornecem-lhe uma descrição concreta dos seus caminhos de dados envolvidos ao longo dos fluxos. Para ter sucesso no seu trabalho de FMA, a precisão e o rigor dos seus artefactos é fundamental.
Abordagem de FMA
Depois de determinar os fluxos críticos, pode planear os respetivos componentes necessários. Em seguida, siga cada fluxo passo a passo para identificar dependências, incluindo serviços de terceiros e potenciais pontos de falha, e planeie as suas estratégias de mitigação.
Decompor a carga de trabalho
À medida que passa da ideação para a estruturação, precisa de identificar os tipos de componente necessários para suportar a sua carga de trabalho. A carga de trabalho determina os componentes necessários para os quais deve planear.
Depois de criar a estrutura da arquitetura inicial, pode sobrepor os fluxos para identificar os componentes discretos utilizados nesses fluxos e criar listas ou diagramas de fluxo de trabalho que descrevam os fluxos e os respetivos componentes. Para compreender a criticidade dos componentes, utilize as definições de criticidade que atribuiu aos fluxos. Considere o efeito de um mau funcionamento de um componente nos seus fluxos.
Identificar dependências
Identifique as suas dependências de carga de trabalho para executar a sua análise de ponto único de falha. Decompor a carga de trabalho e sobrepor fluxos fornece informações sobre as dependências internas e externas à carga de trabalho.
As dependências internas são componentes no âmbito da carga de trabalho que são necessários para que a carga de trabalho funcione. As dependências internas típicas incluem APIs ou soluções de gestão de segredos/chaves, como o Azure Key Vault. Para estas dependências, capture os dados de fiabilidade, como contratos de nível de serviço (SLAs) de disponibilidade e limites de dimensionamento. As dependências externas são componentes necessários fora do âmbito da carga de trabalho, tal como outra aplicação ou um serviço de terceiros. As dependências externas típicas incluem soluções de autenticação, como Microsoft Entra ID e a infraestrutura do Power Platform.
Identifique e documente as dependências na sua carga de trabalho e inclua-as nos seus artefactos de documentação do fluxo.
Pontos de falha
Nos fluxos críticos da sua carga de trabalho, considere cada componente e determine como esse componente e as suas dependências poderão ser afetados por um modo de falha. Lembre-se de que há muitos modos de falha a serem considerados ao planear a resiliência e recuperação. Qualquer componente pode ser afetado por mais do que um modo de falha em qualquer altura. Estes modos de falha incluem:
- Falha regional: uma região inteira do Power Platform ou do Azure não está disponível
- Falha de serviço: um ou mais serviços do Power Platform ou do Azure não estão disponíveis
- Denial-of-service distribuído (DDoS) ou outro ataque malicioso
- Configuração incorreta de aplicação ou componente
- Erro do operador
- Indisponibilidade de manutenção planeada
- Sobrecarga de componente
Considere a probabilidade de cada tipo de modo de falha. Alguns são muito improváveis, como indisponibilidades em várias zonas ou regiões, e adicionar o planeamento de mitigação além da redundância não é uma boa utilização de recursos e tempo.
Mitigação
As estratégias de mitigação dividem-se em duas categorias amplas: aumentar a resiliência e estruturar para um desempenho degradado.
Aumentar a resiliência significa garantir que a estrutura da sua aplicação segue as melhores práticas de durabilidade; por exemplo, dividir aplicações monolíticas em aplicações e microsserviços isolados e utilizar as configurações de resiliência fornecidas pela plataforma, como as políticas de repetição. Para obter mais informações, consulte Recomendações para redundância e Recomendações para autopreservação.
Para estruturar para um desempenho degradado, identifique potenciais pontos de falha que podem desativar um ou mais componentes do seu fluxo, mas não o desativar totalmente. Para manter a funcionalidade do fluxo de ponto a ponto, poderá ter de reencaminhar um ou mais passos para outros componentes ou aceitar que um componente com falha executa uma função, pelo que a função já não está disponível na experiência do utilizador. Para voltar ao exemplo da aplicação de comércio eletrónico, um componente com falha, como um microsserviço, poderá fazer com que o motor de recomendação não esteja disponível, mas os clientes ainda poderão procurar produtos e concluir a transação.
Também precisa de planear a mitigação em torno das dependências. As dependências fortes desempenham um papel crítico na função e disponibilidade da aplicação. Se estiverem ausentes ou a funcionar mal, pode haver um efeito significativo. A ausência de dependências fracas pode afetar apenas funcionalidades específicas e não afetar a disponibilidade global. Esta distinção reflete o custo de manter a relação de elevada disponibilidade entre o serviço e as suas dependências. Classifique as dependências como fortes ou fracas para o ajudar a identificar quais componentes são essenciais para a aplicação.
Se a aplicação tiver fortes dependências sem as quais não pode funcionar, os alvos de disponibilidade e recuperação dessas dependências devem estar alinhados com os alvos do própria aplicação. Se o ciclo de vida da aplicação estiver intimamente associado ao ciclo de vida das respetivas dependências, a agilidade operacional da aplicação poderá ser limitada, particularmente para novas versões.
Deteção
A deteção de falhas é essencial para garantir que identificou corretamente os pontos de falha na sua análise e planeou adequadamente as suas estratégias de mitigação. A deteção neste contexto significa a monitorização da sua infraestrutura, dados e aplicação, bem como o envio do alerta quando surgem problemas. Automatize a deteção o máximo possível e integre redundância nos seus processos de operações para garantir que os alertas são sempre detetados e respondidos com rapidez suficiente para cumprir os requisitos do seu negócio. Para obter mais informações, consulte Recomendações de monitorização.
Resultado
Para obter o resultado da sua análise, crie um conjunto de documentos que comunique eficazmente as suas descobertas, as decisões que tomou relativamente aos componentes do fluxo e à mitigação, bem como o efeito da falha na sua carga de trabalho.
Na sua análise, dê prioridade aos modos de falha e às estratégias de mitigação que identificou com base na gravidade e probabilidade. Utilize esta priorização para centrar a documentação nos modos de falha que são comuns e suficientemente graves para justificar o gasto de tempo, esforço e recursos na estruturação de estratégias de mitigação. Por exemplo, podem existir alguns modos de falha que são muito raros em termos de ocorrência ou deteção. Estruturar estratégias de mitigação centradas nos mesmos não vale o custo.
Consulte a tabela de exemplo para obter um ponto de partida da documentação.
Durante o seu exercício inicial de FMA, os documentos que produzir serão principalmente planeamento teórico. Os documentos de FMA devem ser revistos e atualizados regularmente para garantir que permanecem atualizados com a sua carga de trabalho. O testes de caos e as experiências do mundo real ajudarão a refinar as suas análises ao longo do tempo.
Exemplo
A tabela seguinte mostra um exemplo de FMA para uma aplicação de despesas que é alojada como uma aplicação de tela do Power Apps com um back-end do Microsoft Dataverse e APIs alojadas na APIM para interagir com um sistema de terceiros.
Fluxo de utilizador: início de sessão de utilizador, submissão de declaração de despesas e interação com o relatório de despesas
Componente | Risco | Probabilidade | Efeito/Mitigação/Nota | Falha |
---|---|---|---|---|
Microsoft Entra ID | Indisponibilidade do serviço | Mínimo | Indisponibilidade total da carga de trabalho. Dependente da Microsoft para remediar. | Total |
Microsoft Entra ID | Configuração incorreta | Meio | Os utilizadores não conseguem iniciar sessão. Sem efeito a jusante. O suporte técnico comunica o problema de configuração à equipa de identidade. | None |
Power Apps | Indisponibilidade do serviço | Mínimo | Indisponibilidade total para os utilizadores externos. Dependente da Microsoft para remediar. | Total |
Power Apps | Indisponibilidade regional | Muito baixa | Indisponibilidade total para os utilizadores externos. Dependente da Microsoft para remediar. | Total |
Power Apps | Ataque DDoS | Meio | Potencial de interrupção. A Microsoft gere a proteção contra DDoS (L3 e L4). | Potencial de indisponibilidade parcial |
Dataverse | Indisponibilidade do serviço | Mínimo | Indisponibilidade total da carga de trabalho. Dependente da Microsoft para remediar. | Total |
Dataverse | Indisponibilidade regional | Muito baixa | Ativação do grupo de ativação pós-falha automática para a região secundária. Potencial indisponibilidade durante a ativação pós-falha. Os objetivos de tempo de recuperação (RTOs) e objetivos de ponto de recuperação (RPOs) a serem determinados durante o teste de fiabilidade. | Potencial completo |
Dataverse | Ataque malicioso (injeção) | Meio | Risco mínimo. | Potencial baixo risco |
Gestão de API | Indisponibilidade do serviço | Mínimo | Indisponibilidade total para os utilizadores externos. Dependente da Microsoft para remediar. | Total |
Gestão de API | Indisponibilidade regional | Muito baixa | Indisponibilidade total para os utilizadores externos. Dependente da Microsoft para remediar. | Total |
Gestão de API | Ataque DDoS | Meio | Potencial de interrupção. A Microsoft gere a proteção contra DDoS (L3 e L4). | Potencial de indisponibilidade parcial |
A sua solução do Power Platform | Configuração incorreta | Meio | As configurações erradas devem ser detetadas durante a implementação. Se estas ocorrerem durante uma atualização de configuração, os administradores têm de reverter as alterações. A atualização da configuração causa uma breve indisponibilidade externa. | Potencial de indisponibilidade total |
Facilitação do Power Platform
O Power Platform integra-se com o Application Insights, que faz parte do ecossistema do Azure Monitor. Pode utilizar esta integração para:
Subscrever para receber a telemetria capturada pela plataforma do Dataverse no Application Insights sobre os diagnósticos, o desempenho e as operações que as aplicações executam na sua base de dados do Dataverse e nas aplicações condicionadas por modelo. Esta telemetria fornece informações que pode usar para diagnosticar e resolver problemas relacionados com erros e desempenho.
Ligar as suas aplicações de tela ao Application Insights para utilizar estas análises para diagnosticar os problemas, compreender o que os utilizadores realmente fazem com as suas aplicações, impulsionar melhores decisões de negócio e melhorar a qualidade das suas aplicações.
Configurar a telemetria do Power Automate para fluir para o Application Insights. Pode utilizar esta telemetria para monitorizar execuções de fluxo de cloud e criar alertas para falhas de execução de fluxo de cloud.
Capture dados de telemetria do seu agente do Microsoft Copilot Studio para utilização no Application Insights do Azure. Pode utilizar esta telemetria para monitorizar mensagens e eventos registados enviados de e para o seu agente, tópicos a acionar durante conversas de utilizador e eventos de telemetria personalizados que podem ser enviados a partir dos seus tópicos.
Os recursos do Power Platform registam atividades no portal de conformidade do Microsoft Purview. A maioria dos eventos está disponível nas 24 horas seguintes da atividade. Não utilize estas informações para monitorização em tempo real. Para obter mais informações sobre como registar atividades no Power Platform, consulte:
- Power Apps
- Power Automate
- Copilot Studio
- Power Pages
- Conectores do Power Platform
- Prevenção de perda de dados
- Registos administrativos do Power Platform
- Auditoria do Dataverse
Lista de verificação de fiabilidade
Consulte o conjunto completo de recomendações.