Haute disponibilité Azure en Suisse

La haute disponibilité consiste à éliminer les points de défaillance, ce qui implique donc de mettre en place de la redondance. En contrepartie, la reprise après sinistre prend le relais là où la haute disponibilité a échoué. Ce second sujet avait déjà été abordé dans l’article Mettre en place un Disaster Recovery sur Suisse Ouest.

Dans cet article, je souhaite vous parler des zones de disponibilité, déjà présentes dans plusieurs régions Azure, permettant de simplifier les architectures demandant une haute disponibilité. Avant d’aller plus loin, voici un rappel de plusieurs définitions Azure :

Assurer la continuité des activités et la récupération d'urgence à l'aide  des régions jumelées Azure | Microsoft Docs
Schéma expliquant l’architecture locale d’Azure.

Qu’est-ce qu’une zone géographique ?

Une zone géographique Azure désigne une zone du monde contenant au moins une région Azure. Les zones géographiques définissent un marché discret, qui contient généralement deux régions ou plus qui préservent la résidence des données et les limites de conformité.

Source : Microsoft doc

Qu’est-ce qu’une région Azure ?

En termes simples, une région Azure est un ensemble de centres de données reliés par un réseau dédié à faible latence. Combien de datacenters une région contient-elle ? Eh bien, nous n’avons pas de nombre fixe. Il varie. Il existe des régions de différentes tailles. Une région peut être composée d’un seul ou de plusieurs centres de données. Le fait est qu’une région Azure est un groupe d’un ou plusieurs centres de données Azure.

Source : pragimtech.com

Qu’est-ce qu’une zone de disponibilité ?

Les zones de disponibilité sont des emplacements physiquement séparés au sein de chaque région Azure qui tolèrent les défaillances locales. Les défaillances sont aussi bien des défaillances logicielles et matérielles que des événements de type tremblements de terre, inondations et incendies. La tolérance aux défaillances est obtenue grâce à la redondance et à l’isolation logique des services Azure. Pour garantir la résilience, au moins trois zones de disponibilité distinctes sont présentes dans toutes les régions qui ont des zones de disponibilité.

Source : Microsoft docs
Azure est composé de plus de 200 centres de données physiques, organisés en régions et liés par l’un des plus grands réseaux interconnectés du monde.

Comment faire de la haute disponibilité sur Azure ?

Sur Azure, la redondance des services est possible grâce à la multiplication des centres de données à travers le monde. Pour les données stockées sur le Cloud, elles sont systématiquement copiées au minimum 3 fois (Il ne s’agit pas ici des sauvegardes utilisateurs).

Certains services Azure apporte donc une haute disponibilité en étant réparti sur plusieurs régions, zones de disponibilité ou même groupes de disponibilité. A ne pas confondre avec d’autres services (ex. Azure AD) fonctionnant de manière globale ou régionale (ex. réseaux virtuels), où la haut disponibilité est automatiquement assurée par Microsoft. Un lien par service est disponible ici.

Peut-on faire de la haute disponibilité avec de la récupération d’urgence ?

Deux sujets connexes, mais souvent confondus, entrent en jeu dans l’architecture des systèmes qui atténuent les risques de défaillance : la haute disponibilité (HA) et la reprise après sinistre (DR) :

  • La haute disponibilité consiste à éliminer les points de défaillance uniques
  • La reprise après sinistre est le processus consistant à remettre un système dans un état opérationnel lorsqu’il est rendu inopérant

La vidéo ci-dessous vous permet de bien comprendre les différents scénarios possibles pour envisager une récupération d’urgence sur Azure en fonction de deux objectifs très précis :

Objectif de temps de rétablissement (RTO) : durée maximale pendant laquelle un système peut être hors service avant d’être rétabli dans un état opérationnel. Pour certains systèmes, cet objectif de temps de récupération peut être mesuré en heures, voire en jours, mais pour les systèmes plus critiques, les objectifs de temps de récupération sont généralement mesurés en secondes.

Objectif de point de récupération (RPO) : quantité de perte de données, mesurée en temps, qui est tolérable en cas de catastrophe. Pour certains systèmes, la perte d’une journée de données peut être acceptable, tandis que pour d’autres, elle peut se limiter à quelques minutes ou secondes.

Les durées RTO et RPO ont de grand impacts sur la manière dont les plans de reprise après sinistre sont mis en œuvre :

Merci à John pour cette vidéo ????.

Et la Suisse dans tout ça ?

Actuellement : Annoncées en 2019 , deux régions Azure fonctionnent en mode jumelé sur le territoire helvétique :

  • Suisse Nord (Région de Zurich)
  • Suisse Ouest (Région de Genève)

Qu’est-ce qu’une paire de régions Azure ?

Une paire régionale est constituée de deux régions au sein de la même zone géographique. Azure sérialise les mises à jour de plateforme (maintenance planifiée) à travers les paires régionales, garantissant ainsi qu’une seule région de chaque paire est mise à jour à la fois. Si une panne touche plusieurs régions, au moins l’une des régions de chaque paire est prioritaire pour la récupération.

Source : Microsoft Doc
Microsoft Suisse - Nouvelles régions disponibles en 2019 | 3T | TTT

La région Suisse Ouest n’a pas vocation à être accessible à tous les scénarios. Comme l’indique la copie d’écran ci-dessous, la région est encore restreinte aux scénarios de récupération d’urgence :

Comment s’y prendre ?

Dans la configuration actuelle sur Suisse, il est malgré tout possible de faire la haute disponibilité via du multi régions. Les schémas ci-dessous montrent plusieurs architectures Azure, dont un AKS à haute disponibilité grâce au mode actif/actif :

https://docs.microsoft.com/fr-ch/azure/architecture/reference-architectures/n-tier/multi-region-sql-server

Et si je souhaite malgré tout envisager une récupération d’urgence ?

Certains services, comme Azure Site Recovery, apportent des solutions de réplications des données et des ressources. Par exemple, le lien suivant donne la marche à suivre pour activer cette fonctionnalité sur une machine virtuelle Azure.

Cette solution est efficace mais présentes quelques désavantages :

  • Cela n’est pas une solution HA, mais un DR
  • Le fonctionnement d’un DR est généralement Actif / Passif
  • La réplication des données est asynchrone
  • Le coût Azure en sera probablement supérieur (services + transfert des données)

Avant fin 2021 : Microsoft a profité de l’Ignite 2021, organisé en mars dernier, pour nous annoncer l’arrivée des zones de disponibilité (availability zones) pour l’ensemble des zones géographiques Azure :

La bonne nouvelle annoncée pour la Suisse est, selon Microsoft, toujours dans les cartons de 2021. On s’attend à ce que les zones de disponibilités pour Suisse Nord arrivent pour cette fin d’année.

Une fois ces zones ouvertes au public, nous pourrons alors déployer des services Azure sur ces dernières et ainsi accroître certaines SLAs :

Azure Availability Zones - First Look | Nicholas Romyn's Blog
Exemple d’architecture

Pour illustrer mon propos, voici en détail les SLA en vigueur pour les machines virtuelles Azure :

Pour toutes les machines virtuelles dont deux ou plusieurs instances sont déployées dans deux ou plusieurs zones de disponibilité de la même région Azure, nous garantissons que la connectivité de la machine virtuelle à au moins une instance sera assurée au moins 99,99 % du temps.


Pour toutes les machines virtuelles dont deux instances ou plus sont déployées dans le même set de disponibilité ou dans le même groupe d’hôtes dédiés, nous garantissons que vous aurez la connectivité de la machine virtuelle à au moins une instance au moins 99,95 % du temps.


Pour toute machine virtuelle à instance unique utilisant des disques SSD Premium ou Ultra Disk pour tous les disques du système d’exploitation et les disques de données, nous garantissons une connectivité de la machine virtuelle d’au moins 99,9 %.


Pour toute machine virtuelle à instance unique utilisant des disques gérés SSD standard pour les disques du système d’exploitation et les disques de données, nous garantissons une connectivité de la machine virtuelle d’au moins 99,5 %.


Pour toute machine virtuelle à instance unique utilisant des disques gérés HDD standard pour les disques du système d’exploitation et les disques de données, nous garantissons une connectivité de la machine virtuelle d’au moins 95 %.

Source : Azure doc

Conclusion

Les zones de disponibilités sur Suisse apporteront donc plusieurs bénéfices directs :

  • Augmentation de la résilience des applications et la disponibilité prises en charge par le contrat SLA (ex. 99,99 % pour les machines virtuelles)
  • Simplification des schémas d’architecture à haute disponibilité
  • Respect d’exigences réglementaires et de conformité pour les applications critiques.
  • Non compromission de la résidence des donnée

Je manquerai donc pas de revenir vers vous dès la disponibilité du service ????

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *