Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Automação do Azure é um serviço que executa tarefas de gerenciamento em seu nome. Você define scripts, chamados de runbooks, que deseja executar e Automação do Azure fornece a infraestrutura para executar esses scripts. Este artigo se concentra na automação de processos, que é a principal funcionalidade do serviço. Os workers de runbook híbridos, que são executados em infraestrutura gerenciada pelo cliente, estão fora do escopo deste artigo.
Quando você usa o Azure, a confiabilidade é uma responsabilidade compartilhada. A Microsoft fornece uma variedade de recursos para dar suporte à resiliência e recuperação. Você é responsável por entender como esses recursos funcionam em todos os serviços que você usa e selecionar os recursos necessários para atender aos seus objetivos de negócios e metas de tempo de atividade.
Este artigo descreve como tornar os Automação do Azure resilientes a várias possíveis interrupções e problemas, incluindo falhas transitórias, interrupções de zona de disponibilidade, interrupções na região e manutenção do serviço. Ele também descreve as opções de backup e restauração e as principais informações sobre o SLA (contrato de nível de serviço) Automação do Azure.
Recomendações de implantação de produção para confiabilidade
Para cargas de trabalho de produção que usam automação de processo, siga estas recomendações:
Trate falhas transitórias que ocorram quando seus runbooks interagirem com os serviços e as APIs do Azure, adicionando uma lógica de repetição adequada aos seus scripts.
Crie seus runbooks para serem resilientes a interrupções. Use pontos de verificação para manter o progresso entre reinicializações de trabalho e, se precisar armazenar o estado, use o armazenamento externo.
Visão geral da arquitetura de confiabilidade
Esta seção descreve alguns dos aspectos importantes de como o serviço funciona que são mais relevantes do ponto de vista da confiabilidade. A seção apresenta a arquitetura lógica, que inclui alguns dos recursos e recursos que você implanta e usa. Também discute a arquitetura física, que fornece detalhes sobre como o serviço funciona nos bastidores.
Arquitetura lógica
Ao implantar Automação do Azure, você cria uma conta de automação, que é um contêiner lógico para recursos que executam sua automação.
- Runbooks, que representam o trabalho a ser executado. Runbooks textuais são scripts escritos no PowerShell ou Python. Runbooks gráficos são criados usando um editor gráfico.
- Recursos que os runbooks compartilham, incluindo módulos, conexões, credenciais, certificados e variáveis.
- Recursos que iniciam a execução do runbook, incluindo agendamentos e observadores.
Para obter mais informações sobre esses recursos, consulte a execução do Runbook no Automação do Azure.
Este artigo aborda a confiabilidade e a resiliência desses recursos, que fazem parte da automação de processos em Automação do Azure.
Arquitetura física
Os runbooks são executados na infraestrutura de computação. Existem dois modelos de implantação para automação de processos:
Trabalhos de nuvem (gerenciados por Microsoft): por padrão, os runbooks são executados na infraestrutura de nuvem fornecida Microsoft. Microsoft é responsável pela alta disponibilidade e gerenciamento dessa infraestrutura. Quando você envia um trabalho de runbook, Automação do Azure aloca um trabalho de nuvem de seu pool de recursos de computação disponíveis, executa o runbook e retorna o recurso para o pool.
Às vezes, os trabalhos de nuvem podem ser interrompidos durante a execução. Crie seus runbooks com a suposição de que um trabalho pode ser reiniciado em uma infraestrutura diferente e que todos os dados gravados no armazenamento temporário na instância anterior não estão mais acessíveis.
Workers de runbook híbridos: você pode, opcionalmente, configurar sua própria infraestrutura de computação (máquinas virtuais no Azure, outras nuvens ou localmente) para executar runbooks. Ao usar workers de runbook híbridos, você é responsável por configurá-los para atender aos seus requisitos de confiabilidade. Os runbook workers híbridos estão fora do escopo deste artigo.
Resiliência a falhas transitórias
Falhas transitórias são falhas curtas e intermitentes nos componentes. Elas ocorrem com frequência em um ambiente distribuído, como a nuvem, e são uma parte normal das operações. Falhas transitórias se corrigem após um curto período de tempo. É importante que seus aplicativos possam lidar com falhas transitórias, geralmente repetindo solicitações afetadas.
Todos os aplicativos hospedados na nuvem devem seguir as diretrizes transitórias de tratamento de falhas do Azure quando eles se comunicam com qualquer APIs, bancos de dados e outros componentes hospedados na nuvem. Para obter mais informações, confira Recomendações para tratamento de falhas transitórias.
Você é responsável por escrever runbooks que lidam com erros transitórios nos serviços e APIs com os quais eles interagem. Para runbooks textuais, implemente a lógica de repetição usando loops e tratamento de erros. Para obter diretrizes e exemplos, consulte Manipular erros transitórios em um script dependente de tempo. Para runbooks gráficos, configure o comportamento de repetição para atividades em seu fluxo de trabalho. Para obter detalhes de configuração, consulte Atividade de repetição em runbooks gráficos.
A manutenção da infraestrutura ou outros eventos da plataforma podem interromper os trabalhos do runbook. Projete seus runbooks para lidar com estas interrupções:
Implementar pontos de verificação. Para runbooks de fluxo de trabalho do PowerShell, use pontos de verificação para salvar o progresso em pontos-chave do seu fluxo de trabalho. Se um trabalho for interrompido e reiniciado, ele poderá ser retomado a partir do último ponto de verificação em vez de recomeçar. Para obter mais informações, consulte Usar pontos de verificação em um fluxo de trabalho.
Entenda os limites de trabalho. As tarefas na nuvem têm limites de cota justa para o tempo de execução. Para obter detalhes sobre os limites de execução de tarefas e como eles são aplicados, consulte Execução de runbook.
Armazene o estado persistente externamente. As tarefas não mantêm estado entre as execuções. Se um trabalho for interrompido e reiniciado em outra instância, qualquer coisa gravada no armazenamento temporário pela primeira execução poderá ser perdida. Se você precisar persistir dados entre execuções de trabalho, armazene-os no armazenamento externo, como Armazenamento de Blobs do Azure ou um banco de dados.
Resiliência a falhas de zona de disponibilidade
As zonas de disponibilidade são grupos fisicamente separados de datacenters em uma região do Azure. Quando uma zona falha, os serviços podem fazer o failover de uma das zonas restantes.
Em regiões com suporte, as contas de Automação e os trabalhos em nuvem são com redundância entre zonas, o que significa que o serviço distribui seus recursos entre várias zonas de disponibilidade. Microsoft habilita automaticamente a redundância de zona e não requer nenhuma configuração.
Requirements
Suporte à região: Quando você implanta uma conta de automação em uma das seguintes regiões, ela é automaticamente redundante por zona:
| Américas | Europa | Médio Oriente | Africa | Pacífico Asiático |
|---|---|---|---|---|
| Sul do Brasil | França Central | Israel Central | Norte da África do Sul | Leste da Austrália |
| Canadá Central | Centro-oeste da Alemanha | Catar Central | Índia Central | |
| EUA Central | Norte da Itália | Norte da China 3 | ||
| Leste dos EUA | Europa Setentrional | Ásia Oriental | ||
| Leste dos EUA 2 | Leste da Noruega | Leste do Japão | ||
| Centro-Sul dos EUA | Polônia Central | Coreia Central | ||
| US Gov - Virgínia | Suécia Central | Sudeste Asiático | ||
| Oeste dos EUA 2 | Sul do Reino Unido | |||
| Oeste dos EUA 3 | Oeste da Europa |
Para obter a lista atual de regiões com suporte, consulte o suporte a zonas de disponibilidade para Automação do Azure.
Custo
Não há cobrança adicional por redundância de zona. Para automação de processos, a cobrança é baseada no tempo de execução das suas tarefas e observadores. Para obter mais informações, consulte Automação do Azure preços.
Configurar o suporte à zona de disponibilidade
Quando você cria uma conta de automação em uma região com suporte, ela é automaticamente redundante por zona. Você não pode desabilitar a redundância de zona. Para obter mais informações, consulte o suporte a zonas de disponibilidade para Automação do Azure.
Comportamento quando todas as zonas estão saudáveis
Esta seção descreve o que esperar quando sua conta de automação é redundante em termos de zona e todas as zonas de disponibilidade na região estão operacionais.
Operação entre zonas: As operações de gerenciamento da conta de Automação e as tarefas na nuvem são distribuídas automaticamente entre as zonas de disponibilidade da região. Uma solicitação ou trabalho pode ser processado por qualquer instância em qualquer zona de disponibilidade.
Replicação de dados entre zonas: A configuração da conta de automação, os scripts de runbook e outros recursos que você implanta em sua conta de automação são replicados de forma síncrona em várias zonas de disponibilidade.
Comportamento durante uma falha de zona
Esta seção descreve o que esperar quando sua conta de automação é redundante em termos de zona e ocorre uma interrupção em uma das zonas de disponibilidade na região.
- Detecção e resposta: A plataforma Automação do Azure é responsável por detectar uma falha em uma zona de disponibilidade. Você não precisa fazer nada para iniciar um failover de zona.
- Notificação: A Microsoft não notifica você automaticamente quando uma zona está inoperante. No entanto, você pode usar Integridade do Serviço do Azure para entender a integridade geral do serviço, incluindo quaisquer falhas de zona, e pode configurar alertas Service Health para notificar você sobre problemas.
Solicitações ativas: qualquer execução de tarefa em andamento na zona com problemas pode ser interrompida. A Automação do Azure inicia automaticamente uma nova execução de tarefa usando a infraestrutura em zonas íntegras. Projete seus runbooks para que sejam resilientes a falhas transitórias e interrupções, para que possam ser reiniciados com segurança.
Perda de dados esperada: as execuções de tarefas não mantêm o estado, portanto, não se espera que uma falha de zona cause perda de dados para tarefas em andamento. Se um trabalho precisar armazenar dados que ele pode usar para se recuperar da interrupção, como pontos de verificação, armazene essas informações em um serviço de armazenamento em nuvem persistente, como Armazenamento do Azure ou um banco de dados.
A configuração da conta de automação e os dados do runbook são replicados entre zonas e permanecem acessíveis mesmo quando uma zona não está disponível.
Tempo de inatividade esperado: Durante uma interrupção de zona, sua conta de Automação pode sofrer uma breve interrupção enquanto o serviço detecta a falha e redistribui a carga de trabalho para zonas íntegras.
Redistribuição: O serviço reequilibra automaticamente a capacidade entre as zonas íntegras restantes. Novas execuções de tarefas, observadores e agendamentos continuam a ser executados na infraestrutura em zonas íntegras. A recuperação não depende de a zona que falhou voltar a operar.
Recuperação de zona
Quando uma zona com falha retorna ao serviço, Automação do Azure a reintegra automaticamente na rotação de zona. Você não precisa fazer nada. O serviço monitora a integridade da zona e redistribui a carga de trabalho de volta em todas as zonas à medida que as operações normais são retomadas.
Testar falhas em zonas
A Automação do Azure gerencia o roteamento de tráfego, o failover e a recuperação de zona para recursos com redundância de zona. Você não precisa iniciar nada e não precisa validar os processos de falha da zona de disponibilidade. Teste seus runbooks para confirmar que eles são resilientes a interrupções.
Resiliência a falhas em toda a região
Automação do Azure é um serviço de região única. Se a região ficar indisponível, sua conta de Automação também ficará indisponível.
Soluções personalizadas de várias regiões para resiliência
Você pode implantar contas de Automação separadas em várias regiões e alternar entre elas quando necessário. Você é responsável por implantar as contas em cada região, configurá-las adequadamente, distribuir solicitações entre as contas e tratar o failover se uma região não estiver disponível. Para obter informações detalhadas sobre abordagens que você pode considerar, consulte Recuperação de desastre para Automação do Azure.
Backup e restauração
Para a maioria das soluções, você não deve depender exclusivamente de backups. Em vez disso, use as outras funcionalidades descritas neste guia para dar suporte aos seus requisitos de resiliência. No entanto, os backups protegem contra alguns riscos que outras abordagens não protegem. Para obter mais informações, consulte O que são redundância, replicação e backup?.
O Automação do Azure não fornece backup nativo para a configuração da sua conta de Automação nem para o conteúdo dos runbooks. Mantenha suas próprias cópias fora do serviço para que você possa reimplantá-las, se necessário.
Use a infraestrutura como código (IaC) para configurar a conta de automação. Defina contas de automação e recursos relacionados em arquivos Bicep, modelos do ARM ou Terraform. Armazene os modelos no controle de versão e use seu pipeline de implantação para recriar o ambiente na mesma região ou em outra. Inclua certificados, variáveis, agendamentos e referências a credenciais em seus artefatos e processos de implantação. Armazene segredos em serviços como Azure Key Vault em vez de inserir valores diretamente no código do runbook.
Armazene os scripts do runbook no controle de versão. Mantenha a origem do PowerShell e Python runbooks em um sistema de controle do código-fonte como o Git. Use versionamento, ramificação e revisão de pull requests para proteger a qualidade do script e permitir o rollback para versões comprovadamente boas.
Faça backup do estado do repositório de dados apropriado. As tarefas não retêm o estado. Se você precisar manter logs de trabalho detalhados ou quaisquer outros dados gerados por seus runbooks, armazene-os em outro Azure serviço de armazenamento ou banco de dados e faça backup dele a partir daí.
Resiliência à exclusão acidental
Se você excluir acidentalmente uma conta de Automação, poderá restaurá-la dentro de uma janela de tempo limitada. Para obter mais informações, consulte Restaurar uma conta de Automação excluída.
Resiliência à manutenção do serviço
A Microsoft aplica regularmente as atualizações de serviço e executa outras manutenções. A plataforma Azure manipula essas atividades automaticamente, garantindo que a manutenção seja perfeita e transparente para você. Não se espera tempo de inatividade durante eventos de manutenção, a menos que você tenha sido avisado por meio de manutenção planejada do Integridade do Serviço do Azure.
Contrato de nível de serviço
O SLA (contrato de nível de serviço) para serviços de Azure descreve a disponibilidade esperada de cada serviço e as condições que sua solução deve atender para atingir essa expectativa de disponibilidade. Para obter mais informações, consulte SLAs para serviços online.