Comment sauvegarder automatiquement la VM Google Cloud ?
Si votre site web est hébergé sur un serveur mutualisé, la sauvegarde de vos données n'est généralement pas une préoccupation, car la plupart des fournisseurs d'hébergement s'en chargent pour vous.
Toutefois, lors d'une migration vers un environnement cloud comme Google Cloud ou AWS, la gestion des sauvegardes devient votre responsabilité.
La sauvegarde est donc un élément essentiel à prendre en compte !
Récemment, j'ai transféré toptips.fr vers Google Cloud Platform et j'étais à la recherche d'une solution de sauvegarde simple et rapide. Malheureusement, il n'existe pas d'option "un clic" pour cela.
Après quelques recherches, j'ai découvert que la méthode de sauvegarde était un peu différente, et j'ai trouvé cela très intéressant. L'avantage, c'est que vous avez un contrôle total sur le processus.
Il existe différents niveaux de sauvegarde (application, configuration, journaux, etc.). Dans ce qui suit, je vais me concentrer sur les sauvegardes complètes, manuelles et automatisées, de la machine virtuelle.
Dans Google Cloud, le terme utilisé pour désigner une sauvegarde est "instantané".
Voici quelques avantages liés à l'utilisation d'un instantané :
- Vous pouvez créer un instantané même lorsque le disque est attaché à l'instance, sans interruption de service pendant la sauvegarde.
- Au lieu d'une sauvegarde complète du disque à chaque fois, un instantané est différentiel, ce qui réduit les coûts de stockage et accélère le processus.
Utilisation manuelle via la console Google Cloud
La console Google Cloud offre une fonctionnalité permettant de créer facilement un instantané de votre disque.
- Connectez-vous à Google Cloud et accédez à la section Disques sous Compute Engine.
- Sélectionnez le disque lié à l'instance dont vous souhaitez créer un instantané.
- Cliquez sur "CRÉER UN INSTANTANÉ".
Saisissez un nom pour l'instantané, puis cliquez sur "Créer".

- Le processus prendra un certain temps (en fonction de la taille du disque). Une fois terminé, vous pourrez retrouver l'instantané dans la section des instantanés.

Cela confirme que la sauvegarde du disque de la machine virtuelle est terminée. Vous pouvez utiliser cet instantané à tout moment pour restaurer ou créer une nouvelle machine virtuelle dans l'état où elle était au moment de la sauvegarde.
Automatisation par scripts
Si votre application est fréquemment mise à jour et que vous souhaitez automatiser la création régulière d'instantanés, la méthode suivante vous sera utile.
J'ai trouvé cette solution sur https://github.com/jacksegal/google-compute-snapshot
- Connectez-vous à l'instance dont vous souhaitez automatiser les sauvegardes.
- Créez un répertoire où vous souhaitez enregistrer le fichier script.
- Téléchargez le fichier script.
wget https://github.com/jacksegal/google-compute-snapshot/blob/master/gcloud-snapshot.sh
- Modifiez les permissions du fichier pour le rendre exécutable.
chmod 755 gcloud-snapshot.sh
- Testez le script manuellement pour vérifier qu'il fonctionne correctement.
./gcloud-snapshot.sh
Une fois la bonne exécution manuelle confirmée, configurez la tâche cron pour qu'elle soit exécutée régulièrement.
- Exemple d'exécution quotidienne à 5h00 du matin :
0 5 * * * /opt/google-compute-snapshot/gcloud-snapshot.sh >> /var/log/cron/snapshot.log 2>&1
Par défaut, le script conserve les instantanés des sept derniers jours. Si vous souhaitez modifier cette période, modifiez la valeur de OLDER_THAN=7 dans le fichier script.
Automatisation via la console Google Cloud
Google a récemment intégré ces fonctionnalités, ce qui est très pratique. Désormais, GCP vous permet de planifier la création d'instantanés de disque directement depuis la console.
- Rendez-vous dans Compute Engine >> Instantanés.
- Cliquez sur l'onglet "Planifications d'instantanés" et une fenêtre contextuelle s'ouvrira. Cliquez sur "Créer des planifications d'instantanés".

- Saisissez les informations nécessaires et cliquez sur "Créer".

Examinons les options disponibles :
- Région : choisissez l'emplacement où vous souhaitez stocker vos instantanés de VM (sauvegardes).
- Fréquence de la planification : sélectionnez la fréquence de sauvegarde souhaitée (quotidienne, hebdomadaire, horaire).
- Heure de début : indiquez l'heure de lancement de la sauvegarde. Privilégiez les heures creuses.
- Supprimer automatiquement les instantanés après : déterminez le nombre d'instantanés à conserver.
- Règle de suppression : définissez le comportement en cas de suppression du disque source (VM).
Une fois la planification créée, elle sera affichée dans la liste.

Cela indique que la planification d'instantanés est prête à être appliquée à un disque.
- Allez dans Compute Engine >> Disques.
- Sélectionnez le disque auquel vous souhaitez appliquer la planification.
- Cliquez sur "Modifier" et sélectionnez la planification que vous venez de créer, comme indiqué ci-dessous.

Voilà, c'est terminé !
Google Cloud créera des instantanés selon le calendrier que vous avez défini.
Vous voyez, quelques minutes consacrées à la configuration de vos sauvegardes peuvent vous éviter des problèmes majeurs. En complément des instantanés, pensez à activer la capture d'écran, qui permet de connaître l'état de la machine virtuelle.
Pour en savoir plus, je vous invite à consulter ce cours de certification GCP.
Avez-vous apprécié cet article ? N'hésitez pas à le partager !