Tous les produits
Search
Centre de documentation

Elasticsearch:Sauvegarde et restauration automatiques

Dernière mise à jour :Sep 17, 2026

Une fois la sauvegarde automatique activée pour Alibaba Cloud Elasticsearch, le système sauvegarde les données d'index à l'intervalle configuré. Utilisez ces sauvegardes pour récupérer vos données après une suppression accidentelle ou des erreurs de logique applicative.

Remarques sur l'utilisation

  • La sauvegarde et la restauration des données nécessitent le plugin elasticsearch-repository-oss. Ce plugin est préinstallé sur toutes les instances Alibaba Cloud Elasticsearch et ne peut pas être supprimé. elasticsearch-repository-oss.

    Les snapshots ne sauvegardent que les données d'index. Ils n'incluent pas les données de surveillance (indexes avec le préfixe .monitoring ou .security_audit ), les métadonnées, le translog, les configurations, les packages, les plugins ni les journaux. Les sauvegardes automatiques conservent uniquement les snapshots des 7 derniers jours. Les snapshots expirés sont automatiquement supprimés et ne peuvent pas être récupérés. Pour conserver les données au-delà de 7 jours, exportez ou migrez les snapshots avant leur expiration en utilisant la sauvegarde et restauration manuelles ou la fonctionnalité Sauvegarde automatique des snapshots vers un bucket OSS local . Vous ne pouvez restaurer les snapshots de sauvegarde automatique que dans le cluster d'origine. Pour restaurer les données dans un autre cluster, utilisez la sauvegarde et restauration manuelles .
  • Les métadonnées d'index d'une sauvegarde automatique ne doivent pas dépasser 100 MB. Si cette limite est dépassée, la tâche de sauvegarde peut échouer. Utilisez plutôt la sauvegarde et restauration manuelles.

  • Le premier snapshot est une copie complète des données et peut prendre beaucoup de temps. Utilisez la sauvegarde et restauration manuelles pour la sauvegarde initiale.

  • L'activation de la sauvegarde automatique et la création du référentiel de snapshots (aliyun_auto_snapshot) sont gratuites.

  • La première sauvegarde automatique, ou toute sauvegarde déclenchant une copie complète, effectue une copie intégrale des données et consomme des ressources CPU et E/S du cluster, ce qui peut affecter les performances de votre activité. Nous vous recommandons de planifier la sauvegarde automatique pendant les heures creuses, comme tôt le matin, afin de réduire l'impact sur les performances.

Activer la sauvegarde automatique et configurer les alertes de cluster

Activer la sauvegarde automatique

  1. Connectez-vous à la console Alibaba Cloud Elasticsearch.

  2. Dans le volet de navigation de gauche, cliquez sur Elasticsearch Clusters.

  3. Dans la barre de menu supérieure, sélectionnez un groupe de ressources et une région.

  4. Sur la page Elasticsearch Clusters, cliquez sur l'ID de l'instance cible.

  5. Dans le volet de navigation de gauche, cliquez sur Data Backup.

  6. Dans la zone Snapshots (Free Trial), activez l'interrupteur Auto Snapshot.

  7. Cliquez sur Set à côté de Auto Snapshot Period.

    Pour les instances, le système génère l'heure de sauvegarde automatique et vous ne pouvez pas la modifier.
  8. Dans le panneau Auto Snapshot Configuration, sélectionnez une Frequency (moment d'exécution de la sauvegarde automatique).

    Backup cycle

    Description

    Every 30 minutes

    Sauvegarde toutes les 30 minutes.

    Daily

    Sauvegarde quotidienne à une heure personnalisable.

    Custom

    Cycle et heure de sauvegarde personnalisés.

    L'heure de sauvegarde automatique correspond à l'heure locale de la région de l'instance.
  9. Cliquez sur OK.

Configurer les alertes de cluster

Après avoir activé la sauvegarde automatique, configurez les alertes de cluster pour surveiller l'état des snapshots de sauvegarde. Une valeur snapshot status (value) de 2 sur la page de surveillance indique l'échec d'une tâche de snapshot.

Exécutez /_cat/snapshots/aliyun_auto_snapshot?format=json pour vérifier l'état du dernier snapshot. Effectuez une sauvegarde manuelle si nécessaire.

L'état du snapshot peut être l'un des suivants :

  • SUCCESS : Tous les shards ont été sauvegardés avec succès.

  • PARTIAL : Certains shards n'ont pas pu être sauvegardés.

  • FAILED : La tâche de sauvegarde a échoué.

S'il n'existe aucun snapshot récent, la sauvegarde n'a pas été déclenchée. Des exceptions au niveau du cluster ou des nœuds peuvent empêcher les sauvegardes automatiques.

Afficher les snapshots de sauvegarde

Après avoir activé la sauvegarde automatique, utilisez l'API _snapshot dans la console Kibana pour afficher les snapshots. Connexion à un cluster via Kibana.

  • Affichez le référentiel de snapshots.

    GET _snapshot

    Exemple de réponse :

    {
      "aliyun_auto_snapshot" : {
        "type" : "oss",
        "settings" : {
          "compress" : "true",
          "base_path" : "cf95b9-185320276651****/es-cn-09k2053us0003****",
          "endpoint" : "http://oss-cn-hangzhou-internal.aliyuncs.com"
        }
      }
    }

    Parameter

    Description

    aliyun_auto_snapshot

    Le référentiel de snapshots automatiques, créé lors du premier snapshot. Toujours nommé aliyun_auto_snapshot. Un référentiel stocke plusieurs snapshots, chacun contenant les données de sauvegarde de tous, de certains ou d'un seul index.

    type

    Support de stockage. oss indique Object Storage Service (OSS).

    compress

    Indique s'il faut compresser les fichiers de métadonnées des snapshots (mappings d'index, paramètres). N'affecte pas les fichiers de données. Valeur par défaut : false.

    base_path

    Chemin de stockage dans OSS.

    endpoint

    Endpoint du bucket OSS pour la région de l'instance.

  • Affichez les informations de tous les snapshots dans le référentiel aliyun_auto_snapshot.

    GET _snapshot/aliyun_auto_snapshot/_all

    Exemple de réponse :

    {
      "snapshots": [
        {
          "snapshot": "es-cn-09k2053us0003****_20210117030003",
          "uuid": "vIdSCkthTeGa0nSj4D****",
          "version_id": 5050399,
          "version": "5.5.3",
          "indices": [
            ".kibana"
          ],
          "state": "SUCCESS",
          "start_time": "2018-06-28T01:22:39.609Z",
          "start_time_in_millis": 1530148959609,
          "end_time": "2018-06-28T01:22:39.923Z",
          "end_time_in_millis": 1530148959923,
          "duration_in_millis": 314,
    
          "failures": [ ],
    
          "shards": {
            "total": 1,
            "failed": 0,
            "successful": 1
          }
        },
        {
          "snapshot": "es-cn-09k2053us0003****_20210118030004",
          "uuid": "XKO_Uwz_Qu6mZrU3Am****",
          "version_id": 5050399,
          "version": "5.5.3",
          "indices": [
            ".kibana"
          ],
          "state": "SUCCESS",
          "start_time": "2018-06-28T01:25:00.764Z",
          "start_time_in_millis": 1530149100764,
          "end_time": "2018-06-28T01:25:01.482Z",
          "end_time_in_millis": 1530149101482,
          "duration_in_millis": 718,
    
          "failures": [ ],
    
          "shards": {
            "total": 1,
            "failed": 0,
            "successful": 1
          }
        }
      ]
    }
    Les sauvegardes automatiques sont planifiées selon l'heure locale de la région de l'instance, mais la réponse de l'API renvoie les horodatages en UTC. L'heure normale de Chine (UTC+8) a 8 heures d'avance sur l'UTC.

    Le champ state indique l'état du snapshot :

    Snapshot status

    Description

    IN_PROGRESS

    Snapshot en cours.

    SUCCESS

    Snapshot terminé. Toutes les données des shards sont stockées.

    FAILED

    Échec du snapshot.

    PARTIAL

    Succès partiel. Au moins un shard n'a pas été stocké.

    INCOMPATIBLE

    Le snapshot est incompatible avec la version de l'instance Alibaba Cloud Elasticsearch.

    Les snapshots de sauvegarde automatique possèdent ces paramètres supplémentaires par défaut :

    Parameter

    Description

    max_snapshot_bytes_per_sec

    Débit maximal de snapshot par nœud. Par défaut : 40 Mo/s.

    max_restore_bytes_per_sec

    Débit maximal de restauration par nœud. Par défaut : 40 Mo/s.

    chunk_size

    Taille des blocs pour le fractionnement des grands fichiers lors du snapshot (par exemple, 1g, 10m, 5k). Par défaut : null (aucune limite).

  • Affichez les informations détaillées d'un snapshot spécifique dans le référentiel aliyun_auto_snapshot.

    GET _snapshot/aliyun_auto_snapshot/<snapshot>/_status

    <snapshot> : Nom du snapshot de sauvegarde automatique (issu de la commande listant tous les snapshots ci-dessus). Exemple : es-cn-09k2053us0003****_20210118030004.

    Exemple de réponse :

    {
      "snapshots": [
        {
          "snapshot": "es-cn-09k2053us0003****_20210118030004",
          "repository": "aliyun_auto_snapshot",
          "uuid": "XKO_Uwz_Qu6mZrU3Am****",
          "state": "SUCCESS",
          "shards_stats": {
            "initializing": 0,
            "started": 0,
            "finalizing": 0,
            "done": 1,
            "failed": 0,
            "total": 1
          },
          "stats": {
            "number_of_files": 4,
            "processed_files": 4,
            "total_size_in_bytes": 3296,
            "processed_size_in_bytes": 3296,
            "start_time_in_millis": 1530148959688,
            "time_in_millis": 77
          },
          "indices": {
            ".kibana": {
              "shards_stats": {
                "initializing": 0,
                "started": 0,
                "finalizing": 0,
                "done": 1,
                "failed": 0,
                "total": 1
              },
              "stats": {
                "number_of_files": 4,
                "processed_files": 4,
                "total_size_in_bytes": 3296,
                "processed_size_in_bytes": 3296,
                "start_time_in_millis": 1530148959688,
                "time_in_millis": 77
              },
              "shards": {
                "0": {
                  "stage": "DONE",
                  "stats": {
                    "number_of_files": 4,
                    "processed_files": 4,
                    "total_size_in_bytes": 3296,
                    "processed_size_in_bytes": 3296,
                    "start_time_in_millis": 1530148959688,
                    "time_in_millis": 77
                  }
                }
              }
            }
          }
        }
      ]
    }

Restaurer les données depuis une sauvegarde automatique

La restauration des indexes système (préfixe . ) peut rendre Kibana inaccessible. Ne restaurez pas les indexes système.

Dans la console Kibana, exécutez les commandes suivantes pour restaurer les données d'index à partir d'un snapshot :

  • Restaurez tous les indexes à partir d'un snapshot spécifique (cette opération s'exécute en arrière-plan).

    POST _snapshot/aliyun_auto_snapshot/<snapshot>/_restore

    <snapshot> : Le nom du snapshot de sauvegarde automatique, par exemple, es-cn-abcdefghij****_20180627091600.

  • Restaurez tous les indexes à partir d'un snapshot spécifique et attendez la fin de la tâche.

    L'API _restore est asynchrone. Ajoutez wait_for_completion pour attendre la fin :

    POST _snapshot/aliyun_auto_snapshot/<snapshot>/_restore?wait_for_completion=true

    <snapshot> : Le nom du snapshot de sauvegarde automatique, par exemple, es-cn-abcdefghij****_20180627091600.

  • Restaurez des indexes spécifiques à partir d'un snapshot et renommez-les pendant le processus (cette opération s'exécute en arrière-plan).

    POST _snapshot/aliyun_auto_snapshot/<snapshot>/_restore
    {
    "indices": "index_1",
    "rename_pattern": "index_(.+)",
    "rename_replacement": "restored_index_$1"
    }

    Parameter

    Description

    <snapshot>

    Le nom du snapshot de sauvegarde automatique, par exemple, es-cn-abcdefghij****_20180627091600.

    indices

    Le nom de l'index à restaurer.

    rename_pattern

    Facultatif. Une expression régulière pour faire correspondre les noms des indexes que vous souhaitez restaurer.

    rename_replacement

    Facultatif. Le modèle de remplacement pour renommer les indexes correspondants.

Désactiver la sauvegarde automatique

  1. Connectez-vous à la console Alibaba Cloud Elasticsearch.

  2. Dans le volet de navigation de gauche, cliquez sur Elasticsearch Clusters.

  3. Dans la barre de menu supérieure, sélectionnez un groupe de ressources et une région.

  4. Sur la page Elasticsearch Clusters, cliquez sur l'ID de l'instance cible.

  5. Dans le volet de navigation de gauche, cliquez sur Data Backup.

  6. Dans la zone Snapshots (Free Trial), désactivez l'interrupteur Auto Snapshot.

FAQ

Pourquoi la sauvegarde automatique échoue-t-elle ou pourquoi les snapshots incrémentiels prennent-ils autant de temps que les snapshots complets ?

La sauvegarde automatique peut échouer ou les snapshots incrémentiels peuvent prendre autant de temps que les snapshots complets lorsque la limite de requêtes par seconde (QPS) d'OSS est dépassée, générant une erreur QpsLimitExceeded. Ce problème est plus fréquent pendant les heures de pointe, telles que de 00:00 à 02:00.

Pour résoudre ce problème :

  • Ajustez la planification de la sauvegarde automatique aux heures creuses, comme de 03:00 à 04:00, afin de réduire le risque de limitation des QPS par OSS.

  • Si une sauvegarde échoue, patientez et réessayez plus tard. Ce problème est généralement temporaire et n'affecte pas le fonctionnement normal du cluster ni les charges de travail métier.

Comment afficher les snapshots de sauvegarde automatique dans la console ?

Pour les instances PaaS cloud-native Elasticsearch, la console ne propose pas d'entrée directe pour afficher les snapshots de sauvegarde automatique. Utilisez plutôt l'une des méthodes suivantes :

  • Kibana : Connectez-vous à la console Kibana de votre cluster, puis accédez à Management > Snapshot and Restore pour afficher les snapshots disponibles.

  • API : Exécutez la commande suivante dans la console Dev Tools de Kibana ou appelez directement l'API Elasticsearch :

    GET _snapshot/aliyun_auto_snapshot/_all

    Cette commande renvoie tous les snapshots du référentiel aliyun_auto_snapshot, y compris le nom du snapshot, son état, l'heure de début et les informations sur les indexes.

Que faire si une tâche de sauvegarde automatique reste longtemps dans l'état IN_PROGRESS ou si les sauvegardes suivantes échouent ?

Elasticsearch n'autorise l'exécution que d'une seule tâche de snapshot à la fois pour un même référentiel. Si une tâche de snapshot précédente reste bloquée lors de sa phase de démarrage en raison d'une fluctuation temporaire du cluster (l'état de la tâche affiche IN_PROGRESS mais aucune donnée n'est réellement écrite), les tâches de sauvegarde automatique suivantes sont silencieusement ignorées pour éviter les conflits de données. Par conséquent, les sauvegardes peuvent échouer continuellement.

Pour résoudre ce problème :

  1. Connectez-vous à la console Kibana de votre cluster et exécutez la commande suivante pour identifier le snapshot bloqué :

    GET _snapshot/aliyun_auto_snapshot/_all
  2. Exécutez la commande suivante pour annuler la tâche de snapshot bloquée et la supprimer :

    POST _snapshot/aliyun_auto_snapshot/<snapshot>/_cancel

Nous vous recommandons de configurer une règle d'alerte personnalisée pour détecter les tâches de snapshot restant dans l'état IN_PROGRESS pendant plus d'une heure, afin d'identifier et de traiter ces problèmes en temps opportun.

Que faire si la sauvegarde automatique s'arrête et qu'aucun nouveau snapshot n'est généré après une mise à niveau ou une modification de la configuration de l'instance ?

Ce problème est généralement causé par une configuration de référentiel inter-clusters qui fait référence au cluster lui-même, ce qui empêche l'écriture des snapshots.

Pour résoudre ce problème :

  1. Supprimez la configuration incorrecte du référentiel inter-clusters et le référentiel de snapshots automatique existant (aliyun_auto_snapshot).

  2. Dans la console Alibaba Cloud Elasticsearch, désactivez la sauvegarde automatique, puis réactivez-la.

Le système recrée automatiquement le référentiel de snapshots et reprend les sauvegardes normales à la prochaine heure de sauvegarde planifiée.