Validar atualizações de serviço para evitar interrupções em suas instâncias do API Management de produção
APLICA-SE A: todas as camadas do Gerenciamento de API
"Uma das propostas de valor da nuvem é seu aprimoramento contínuo, fornecendo novos recursos e aprimoramentos de segurança e confiabilidade. Mas como a plataforma está evoluindo continuamente, a mudança é inevitável." - Mark Russinovich, CTO, Azure
A Microsoft usa uma estrutura de práticas de implantação segura para testar, monitorar e validar minuciosamente as atualizações de serviço e implantá-las nas regiões do Azure usando uma abordagem em fases. Mesmo assim, as atualizações de serviço que chegam às suas instâncias do API Management podem introduzir riscos imprevistos para suas cargas de trabalho de produção e interromper os consumidores de sua API. Saiba como você pode aplicar nossa abordagem de implantação segura para reduzir os riscos validando as atualizações antes que elas atinjam seus ambientes de API Management de produção.
O que é a estrutura de práticas de implantação segura do Azure?
O Azure implanta atualizações para um determinado serviço em uma série de etapas de pré-produção e produção usando uma estrutura de SDP (práticas de implantação seguras). Essa estrutura é mostrada de forma simplificada na imagem a seguir:
As fases de implantação incluem:
Desenvolvimento e teste – as equipes de engenharia do Azure iteram e validam atualizações para seus serviços em ambientes de desenvolvimento e teste, com portões de qualidade estritos.
O monitoramento cuidadoso, a validação e os testes extensivos para regressões durante esses estágios reduzem o risco de que as alterações de software afetem negativamente as cargas de trabalho do Azure dos clientes em produção.
Produção – as atualizações prontas para produção são introduzidas nos serviços do Azure dos clientes em um pipeline de distribuição de produção em fases:
As regiões canário recebem atualizações primeiro. Essas regiões, conhecidas formalmente como regiões EUAP (Programas de acesso a atualizações antecipadas), são ambientes completos de nível de produção em que os cenários podem ser validados em escala pelas equipes de engenharia do Azure e por clientes convidados. Atualmente, as regiões canário do Azure são Leste dos EUA 2 EUAP e EUA Central EUAP.
Observação
Embora as regiões EUAP sejam prontas para produção, a capacidade pode ser limitada e os serviços podem ser interrompidos de tempos em tempos por simulações de recuperação de desastre e outros testes pelas equipes de engenharia do Azure.
Uma região piloto com suporte para uso em produção com um SLA recebe as atualizações em seguida. Atualmente, a região piloto é o Centro-Oeste dos EUA.
Após um período de observação na região piloto, as atualizações de serviço são introduzidas gradualmente nas regiões restantes, ampliando a exposição dos clientes.
Como fazer atualizações seguras em minhas instâncias do API Management?
Como cliente do Azure, você não pode controlar quando aplicar atualizações de serviço às suas instâncias do API Management – as atualizações são aplicadas automaticamente. No entanto, para minimizar o risco, você pode usar uma estratégia de implantar suas instâncias não críticas em regiões que recebem atualizações antes das regiões que executam suas instâncias de produção.
A instância que recebe atualizações primeiro é efetivamente sua implantação canário.
Use essa instância para monitorar quaisquer problemas causados pelas atualizações nas instâncias de produção de linha de base. Com o monitoramento, identifique e reduza possíveis regressões antes que seus serviços de produção sejam afetados.
Importante
Se sua instância canário tiver problemas associados ao processo de atualização, abra uma solicitação de suporte do Azure assim que possível.
Depois de validar a implantação canário, você terá maior confiança em atualizações que virão posteriormente às suas instâncias de produção.
Consulte as estratégias de exemplo para criar e usar uma implantação canário do API Management mais adiante neste artigo.
Saber quando suas instâncias estão recebendo atualizações
Como primeira etapa, verifique se você sabe sobre atualizações de serviço que são esperadas ou estejam em andamento.
As atualizações do API Management são anunciadas no repositório do GitHub do API Management. Recomendamos que você assine para receber notificações desse repositório para saber quando as distribuições de atualização começarão.
Monitore as atualizações de serviço que estão ocorrendo em sua instância do API Management usando o log de atividades do Azure. O evento "Manutenção agendada" é emitido quando uma atualização é iniciada.
Para receber notificações automaticamente, configure um alerta no Log de atividades.
As atualizações são distribuídas para regiões nas seguintes fases: regiões EUAP do Azure, seguidas pelo Centro-Oeste dos EUA, seguidas pelas regiões restantes em várias fases posteriores. A sequência de regiões atualizada nas fases de implantação posteriores é diferente de serviço para serviço. Você pode esperar pelo menos 24 horas entre cada fase da distribuição de produção.
Em uma região, as instâncias do API Management na camada Premium recebem atualizações várias horas depois daquelas que estão em outras camadas de serviço.
Dica
Se sua instância do API Management estiver implantada em vários locais (regiões), o momento das atualizações será determinado pelo local Primário da instância.
Estratégias de implantação canário
Aqui estão exemplos de estratégias para usar uma instância do API Management como uma implantação canário que recebe atualizações antes de suas instâncias de produção.
Implantar na região da EUAP – se você tiver acesso a uma região EUAP do Azure, poderá usar uma instância para validar as atualizações assim que elas são liberadas para o pipeline de produção. Saiba mais sobre o processo de solicitação de acesso à região do Azure.
Observação
Devido a restrições de capacidade em regiões EUAP, talvez você não possa dimensionar as instâncias de API Management conforme necessário.
Implantar na região piloto – use uma instância no Centro-Oeste dos EUA para simular seu ambiente de produção ou usá-la em produção para tráfego de API não crítica. Embora essa região receba atualizações após as regiões EUAP, é mais provável que uma implantação identifique regressões específicas à configuração do serviço.
Implantar instâncias duplicadas em uma região – se sua carga de trabalho de produção for uma instância de camada Premium em uma região específica, considere implantar uma instância configurada de forma similar em uma camada inferior que receba atualizações antecipadas. Por exemplo, configure uma instância de pré-produção na camada Desenvolvedor para validar as atualizações.
Conteúdo relacionado
- Saiba como monitorar sua instância do API Management.
- Saiba mais sobre outras opções para observar sua instância do API Management.