Sauvegarder et restaurer un cluster Kubernetes dans Managed Rancher Service
Découvrez comment sauvegarder et restaurer un cluster Kubernetes et configurer des sauvegardes etcd récurrentes vers un Object Storage OVHcloud sur Managed Rancher Service
Objectif
Managed Rancher Service par OVHcloud vous permet d'orchestrer vos clusters Kubernetes.
Dans ce guide, vous allez utiliser Rancher pour sauvegarder et restaurer un cluster Kubernetes, prendre un instantané (snapshot) et enregistrer les snapshots etcd récurrents dans un bucket Object Storage OVHcloud.
Prérequis
- Un projet Public Cloud dans votre compte OVHcloud
- Un Managed Rancher Service OVHcloud (consultez le guide Créer un Managed Rancher Service pour plus d'informations)
- Un accès à l'interface Rancher pour l'utiliser (consultez le guide Se connecter à l'interface Rancher pour plus d'informations)
- Un cluster Kubernetes créé ou importé dans Rancher
Instructions
Dans l'interface Rancher, la sauvegarde et la restauration de l'etcd d'un cluster Kubernetes se réalisent facilement.
Nous vous recommandons de configurer des snapshots etcd récurrents pour tous les clusters de production. Vous pouvez également prendre des snapshots ponctuels.
Les snapshots de la base de données etcd sont pris et enregistrés soit localement sur les nœuds etcd, soit sur une cible compatible S3 * comme notre Object Storage OVHcloud.
L'avantage de configurer un Object Storage est que si tous les nœuds etcd sont perdus, votre snapshot est enregistré à distance et peut servir à restaurer le cluster.
Créer une sauvegarde sur un Object Storage OVHcloud
Vous devez d'abord disposer d'un conteneur Object Storage. Si vous n'en avez pas encore, suivez le guide Premiers pas avec Object Storage Swift.
Notez que vous devez créer un objet Object Storage API :
Dans ce guide, notre conteneur Object Storage est nommé etcd-rancher et sa région est GRA.
Conservez les identifiants de l'Object Storage : vous utiliserez l'Object Storage access key et l'Object Storage secret key lors de la configuration de la sauvegarde etcd présentée ci-après.
Cliquez sur le nom de votre bucket Object Storage pour afficher ses informations :
Copiez l'ID/le nom de votre bucket ainsi que l'endpoint : ces informations seront nécessaires à l'étape suivante, dans l'interface utilisateur Rancher.
Activer les snapshots de sauvegarde etcd récurrents vers un Object Storage sur un cluster Kubernetes existant
Connectez-vous à l'interface de votre Managed Rancher Service.
Cliquez sur Cluster Management dans le menu.
Pour le cluster choisi, cliquez sur le bouton à trois points, puis sur le bouton Edit Config.
Dans la section Cluster Configuration, cliquez sur l'onglet etcd.
Dans Automatic Snapshots, faites passer le bouton radio de Disable à Enable et modifiez le Cron Schedule selon vos besoins.
Avec cette configuration des snapshots etcd automatiques, vous obtiendrez un snapshot toutes les heures à hh:35 et vous conserverez les 5 derniers snapshots par nœud.
Dans Backup Snapshots to Object Storage, faites passer le bouton radio de Disable à Enable.
Dans la liste Authentication, sélectionnez Create a S3-Compatible Auth Secret.
Renseignez l'Object Storage Access Key, l'Object Storage Secret Key et le nom du bucket.
Renseignez également la Region (en minuscules).
La région doit être saisie en minuscules. Si votre bucket se trouve dans la région GRA, vous devez saisir gra.
Renseignez l'endpoint s3.gra.io.cloud.ovh.net :
Il s'agit d'une copie de l'endpoint de votre bucket Object Storage, sans https://.
Enfin, cochez la case Accept any certificate (insecure) et cliquez sur le bouton Enregistrer.
Vérifier les snapshots etcd
Dans Cluster Management, cliquez sur votre cluster.
Pour consulter et récupérer les snapshots de sauvegarde, cliquez sur l'onglet Snapshots.
Le nom du snapshot est généré automatiquement : il repose sur le type (selon que le snapshot est manuel, on-demand, ou récurrent, etcd-snapshot). La convention de nommage est la suivante :
<name>-<node>-<timestamp>
Vous pouvez également vérifier dans votre bucket, depuis l'espace client OVHcloud, que les snapshots ont bien été enregistrés.
Créer un snapshot ponctuel
En complément des snapshots récurrents, vous pouvez souhaiter prendre un snapshot « ponctuel ».
Cela peut être utile, par exemple, avant de mettre à jour la version de Kubernetes d'un cluster ou la version du Service Mesh d'un cluster. De manière générale, il est recommandé de sauvegarder l'état du cluster afin de se prémunir contre un échec de mise à jour.
Dans la vue Cluster Management de l'interface Rancher, cochez la case située à côté de votre cluster Kubernetes et cliquez sur le bouton Take Snapshot.
Restaurer depuis un snapshot
Dans l'onglet Snapshots de votre cluster Kubernetes, dans l'interface Rancher, cliquez sur le bouton Restaurer.
Dans Rancher, vous pouvez choisir différents types de restauration :
- etcd uniquement
- Version de Kubernetes et etcd
- Configuration du cluster, version de Kubernetes et etcd
Dans la fenêtre Restore Snapshot, cliquez sur le type de restauration souhaité, puis sur le bouton Restaurer.
Après un clic sur le bouton, la restauration depuis le snapshot est en cours.
La restauration d'un cluster peut prendre quelques minutes.
Problèmes connus
Failed to test for existence of bucket xxx: Access Denied
Si vous obtenez le message d'erreur suivant : failed to test for existence of bucket etcd-rancher: Access Denied., il se peut que l'endpoint de l'Object Storage soit erroné.
Supprimez le schéma https:// de l'URL de l'endpoint et vérifiez l'URL de l'endpoint de votre bucket Object Storage OVHcloud.
Un endpoint Object Storage correct doit être de la forme s3.gra.io.cloud.ovh.net.
Aller plus loin
-
Consultez la documentation officielle Rancher pour en savoir plus sur la sauvegarde et la restauration.
-
Pour obtenir une vue d'ensemble de Managed Rancher Service OVHcloud, consultez la page Managed Rancher Service OVHcloud.
-
Si vous avez besoin d'une formation ou d'une assistance technique pour la mise en oeuvre de nos solutions, contactez votre commercial ou cliquez sur ce lien pour obtenir un devis et demander une analyse personnalisée de votre projet à nos experts de l’équipe Professional Services.
-
Notre équipe reste disponible sur notre chaîne Discord dédiée, n'hésitez pas à nous y rejoindre : https://discord.gg/ovhcloud. Posez vos questions, faites-nous part de vos commentaires et interagissez directement avec l'équipe qui développe nos services Container et Orchestration.
-
Échangez avec notre communauté d'utilisateurs.
* : S3 est une marque déposée d'Amazon Technologies, Inc. Le service d'OVHcloud n'est pas sponsorisé, approuvé ni affilié à Amazon Technologies, Inc.