Notre monde est dominé par les applications : les services sont accessibles d’un clic et les données se cachent dans les nuages.
L’hyperviseur : un point faible à ne pas oublier
Alors, il est facile d’oublier que les infrastructures physiques telles que les datacenters, les serveurs et les équipements réseaux sont des rouages indispensables pour le fonctionnement des usines à services.
Les hyperviseurs sont précisément les serveurs-rouages qui soutiennent les machines virtuelles, containers[1] et services associés. Ils peuvent donc être de sérieux points faibles pour la chaîne de production de services, tant en termes de sécurité que de robustesse.
Passés les premiers moments avec un hyperviseur (n’importe qui[2] est capable d’en installer un), il apparaît rapidement que les différents mécanismes de fonctionnement nécessitent une maîtrise multifacettes. Celle-ci englobe les systèmes d’exploitation mais aussi les réseaux LAN et le stockage et est requise pour assurer la mise en oeuvre et surtout l’exploitation au quotidien.
En effet, un hyperviseur, bien plus que tout autre système informatique, doit bénéficier d’un suivi régulier comprenant le monitoring, les performances, la gestion des incidents, le « capacity planning », etc.
Il est (relativement) simple de prévoir un changement sur une machine virtuelle ou un conteneur en se protégeant avec les mécanismes de robustesse des différentes technologies (par exemple les snapshots). La modification d’un hyperviseur, cependant, peut être bien plus risquée.
En effet, de multiples problèmes peuvent survenir : des incompatibilités de drivers matériel (cela existe encore !) ou encore, des configurations réseau ou système dysfonctionelles qui affectent l’ensemble des services, même avec la meilleure des préparations.
Dans la vie idéale de la Production Informatique, les mises à jour sont réalisées régulièrement en passant de version mineure en version mineure plutôt que de « sauter » d’un coup à une version majeure pour rattraper le retard.
Dans la vie réelle, maintenir à jour un hyperviseur est une activité risquée nécessitant organisation, compétences et tests complets… Autant dire qu’il s’agit là d’un exercice qui est souvent repoussé au fil des mois, avec un backlog de correctifs qui grossit au fur et à mesure. Ces retards augmentent d’autant les risques de dysfonctionnement en cas de mise à jour et un cercle vicieux s’installe.
Finalement, les rouages de base de votre infrastructure deviennent obsolètes, avec des vulnérabilités non remédiées et des bugs non corrigés. Soit, tous les ingrédients pour un futur incident majeur.
Toutefois, en appliquant avec soin les bonnes pratiques classiques de la production, la mise à jour des hyperviseurs peut être maîtrisée et régulière :
- Tester systématiquement les mises à jour sur les infrastructures de recette ou non critiques pour s’assurer de la non-régression.
- Rédiger, répéter et valider les procédures et chronogrammes de mises à jour.
- Utiliser les mécanismes de déplacement des VM entre plusieurs hyperviseurs pour réaliser les opérations de façon séquentielle.
- Prévoir des plans de retour en arrière et/ou s’assurer de la capacité de réinstaller rapidement en cas de problème.
- Avoir des périodes d’observation post mise en production pour valider le bon fonctionnement et les performances de l’hyperviseur mis à jour.
- Réunir une équipe pluridisciplinaire pour préparer les changements et capable de réagir efficacement en cas de problème.
Enfin, on ne le dira jamais assez : un retour d’expérience (RETEX) avec les équipes doit conclure chaque mise à jour, qu’elle soit réussie ou non, pour mieux mener les prochaines opérations.
Et vous, combien de fois par an mettez-vous à jour vos hyperviseurs ?