3.37 E2 Hibernate AWS
Sur EC2, on connaît déjà trois comportements d'instance : on peut la démarrer, l'arrêter ou la terminer. Lorsqu'on arrête une instance, les données présentes sur le volume EBS sont conservées et restent disponibles au redémarrage. Lorsqu'on termine l'instance, les volumes créés au lancement disparaissent par défaut.
Au premier démarrage, le système exécute le script user data qui installe l'application et les services. Aux démarrages suivants, le système redémarre directement sans rejouer cette installation. Mais si l'application charge beaucoup de cache, démarre de nombreux services ou nécessite un long temps d'initialisation, chaque redémarrage peut rester très lent. AWS introduit pour cela le mode Hibernate.
Comment fonctionne EC2 Hibernate
Le mode Hibernate correspond à une mise en veille de l'instance : tout le contenu de la RAM est préservé. Au redémarrage, le système n'est ni arrêté ni redémarré, il reprend dans l'état exact où il a été suspendu, ce qui rend le démarrage bien plus rapide. Techniquement, le contenu de la RAM est sauvegardé sous forme de fichier à la racine du volume EBS. C'est pour cette raison que le volume racine EBS doit être chiffré.
Quand on déclenche un stop-hibernate, AWS effectue une sauvegarde complète de la RAM sur l'EBS racine puis arrête l'instance — mais sans arrêter réellement le système d'exploitation. Au redémarrage suivant, la RAM est rechargée depuis ce fichier, et l'OS reprend son exécution là où il s'était arrêté.
- Types d'instances supportés : familles C3, C4, C5, M3, M4, M5, R3, R4, R5 (entre autres).
- Taille de RAM ≤ 150 Go ; non supporté sur les très grandes instances avec stockage interne massif.
- Volume racine obligatoire en EBS, chiffré et suffisamment grand pour accueillir le fichier de RAM.
- Réservé aux instances à la demande et réservées ; pas disponible pour les Spot Instances (caractère éphémère).
- Durée maximale d'hibernation : 60 jours.
EC2 Hibernate est donc particulièrement utile pour les workloads à long temps de boot ou aux gros caches en mémoire, à condition de respecter ces contraintes sur l'instance et le volume EBS racine.