Configurer la persistance des données pour une instance Redis managé Azure (préversion)
La persistance Redis vous permet de conserver les données stockées dans l’instance de cache. En cas de défaillance matérielle, l’instance de cache est réhydratée avec les données du fichier de persistance lorsqu’elle est remise en ligne. La possibilité de conserver des données est un moyen important d’améliorer la durabilité d’une instance de cache, car toutes les données du cache sont stockées en mémoire. Une perte de données est possible si une défaillance se produit là où les nœuds de cache sont en panne. La persistance doit être un élément clé de votre stratégie de haute disponibilité et de récupération d’urgence avec Redis managé Azure (préversion).
Important
La persistance des données est destinée à fournir la résilience nécessaire en cas de défaillances inattendues des nœuds Redis, mais il ne s’agit pas d’une fonctionnalité de sauvegarde des données ou de restauration à un instant dans le passé (PITR). Si des données corrompues sont écrites dans l’instance Redis, elles seront également conservées. Pour effectuer des sauvegardes de votre instance Redis, utilisez la fonctionnalité d’exportation.
Étendue de la disponibilité
Niveau | À mémoire optimisée, Équilibré, Optimisé pour le calcul | Optimisé pour le stockage flash |
---|---|---|
Disponible | Oui | Oui |
Types de persistance des données dans Redis
Vous disposez de deux options pour la persistance avec Redis managé Azure : le format RDB (Redis database) et le format AOF (Append-only File) :
- Persistance RDB : quand vous utilisez la persistance RDB, Redis managé Azure enregistre un instantané de votre cache au format binaire. L’instantané est enregistré sur un disque managé monté sur l’instance Redis. La fréquence de sauvegarde configurable détermine la fréquence de conservation de l’instantané. Si un événement catastrophique se produit et provoque la désactivation du cache principal et du réplica, le cache est reconstruit automatiquement en utilisant l’instantané le plus récent. Découvrez-en plus sur les avantages et les inconvénients de la persistance RDB.
- Persistance AOF : quand vous utilisez la persistance AOF, Redis managé Azure enregistre chaque opération d’écriture dans un journal. Le journal est enregistré une fois par seconde sur un disque managé monté sur l’instance Redis. Si un événement catastrophique se produit et provoque la désactivation du cache principal et du réplica, le cache est automatiquement reconstruit à l’aide des opérations d’écriture stockées. Découvrez-en plus sur les avantages et les inconvénients de la persistance AOF.
Important
Les fonctionnalités de persistance de Redis managé Azure sont destinées à être utilisées pour restaurer automatiquement les données dans le même cache après une perte de données. Les fichiers de données persistants RDB/AOF ne sont pas accessibles aux utilisateurs, et ne peuvent pas être importés dans un cache nouveau ou existant. Pour déplacer des données entre les caches, utilisez la fonctionnalité Importation et exportation. Pour plus d’informations, consultez Importer et exporter des données dans Redis managé Azure.
Pour générer des sauvegardes de données qui peuvent être ajoutées à un nouveau cache, vous pouvez écrire des scripts automatisés en utilisant PowerShell ou l’interface CLI pour exporter périodiquement les données.
Conditions préalables et limitations
Les fonctionnalités de persistance sont destinées à être utilisées pour restaurer des données dans le même cache après une perte de données.
- Les fichiers de données persistants RDB/AOF ne peuvent pas être importés dans un nouveau cache ou dans le cache existant. Utilisez la fonctionnalité Import/Export à la place.
- La persistance n’est pas prise en charge avec les caches utilisant la géoréplication active.
- Le disque managé contenant les fichiers de données persistants est chiffré en utilisant par défaut des clés gérées par Microsoft (MMK), mais des clés gérées par le client (CMK) peuvent également être utilisées. Pour plus d’informations, consultez Gestion du chiffrement des données.
Configurer la persistance des données à l’aide du portail Azure
Connectez-vous au portail Azure et commencez à suivre les instructions du Guide de démarrage rapide de Redis managé Azure.
Quand vous atteignez l’onglet Avancé, sélectionnez les options RDB ou AOF dans la section Persistance des données.
Pour activer la persistance RDB, sélectionnez RDB et configurez les paramètres.
Paramètre Valeur suggérée Description Fréquence de sauvegarde Utilisez la liste déroulante et sélectionnez un intervalle de sauvegarde. Les choix incluent 60 minutes, 6 heures et 12 heures. Cet intervalle débute au moment où l’opération de sauvegarde précédente s’est terminée correctement. Une fois le délai écoulé, une nouvelle sauvegarde démarre. Pour activer la persistance AOF, sélectionnez AOF. Une seule option de fréquence de sauvegarde est disponible.
Terminez la création du cache en suivant le reste des instructions du Guide de démarrage rapide de Redis managé Azure.
Remarque
Vous pouvez ajouter à tout moment la persistance à une instance Redis managée par Azure précédemment créée en accédant aux Paramètres avancés dans le menu Ressource.
Configurer la persistance des données à l’aide de PowerShell et d’Azure CLI
Utilisation de PowerShell
La commande New-AzRedisEnterpriseCache peut être utilisée pour créer une instance Redis managée par Azure qui utilise la persistance des données. Utilisez les paramètres RdbPersistenceEnabled
, RdbPersistenceFrequency
, AofPersistenceEnabled
et AofPersistenceFrequency
pour configurer la persistance. Cet exemple crée une instance B10 équilibrée utilisant la persistance RDB avec une fréquence d’une heure :
New-AzRedisEnterpriseCache -Name "MyCache" -ResourceGroupName "MyGroup" -Location "West US" -Sku "Balanced_B10" -RdbPersistenceEnabled -RdbPersistenceFrequency "1h"
Vous pouvez mettre à jour les caches existants à l’aide de la commande Update-AzRedisEnterpriseCacheDatabase. Cet exemple ajoute la persistance RDB avec une fréquence de 12 heures à une instance existante :
Update-AzRedisEnterpriseCacheDatabase -Name "MyCache" -ResourceGroupName "MyGroup" -RdbPersistenceEnabled -RdbPersistenceFrequency "12h"
Utilisation de Azure CLI
La commande az redisenterprise create peut être utilisée pour créer une instance Redis managée par Azure qui utilise la persistance des données. Utilisez les paramètres rdb-enabled
, rdb-frequency
, aof-enabled
et aof-frequency
pour configurer la persistance. Cet exemple crée une instance B10 équilibrée utilisant la persistance RDB avec une fréquence d’une heure :
az redisenterprise create --cluster-name "cache1" --resource-group "rg1" --location "East US" --sku "Balanced_B10" --persistence rdb-enabled=true rdb-frequency="1h"
Vous pouvez mettre à jour les caches existants à l’aide de la commande az redisenterprise database update. Cet exemple ajoute la persistance RDB avec une fréquence de 12 heures à une instance de cache existante :
az redisenterprise database update --cluster-name "cache1" --resource-group "rg1" --persistence rdb-enabled=true rdb-frequency="12h"
Gestion du chiffrement des données
Étant donné que la persistance Redis crée des données au repos, le chiffrement de ces données est une préoccupation importante pour de nombreux utilisateurs. Sur Redis managé Azure, les données sont stockées sur un disque managé monté sur l’instance du cache. Par défaut, le disque contenant les données de persistance et le disque du système d’exploitation sont chiffrés à l’aide de clés gérées par Microsoft. Une clé gérée par le client (CMK) peut également être utilisée pour contrôler le chiffrement des données. Pour obtenir des instructions, consultez Chiffrement sur Redis managé Azure.
Forum aux questions sur la persistance
La liste suivante contient des réponses aux questions les plus fréquemment posées sur la persistance de Redis managé Azure.
- Puis-je activer la persistance sur un cache créé précédemment ?
- Puis-je activer la persistance AOF et RDB en même temps ?
- Comment la persistance fonctionne-t-elle avec la géoréplication ?
- Quel modèle de persistance dois-je choisir ?
- Que se passe-t-il si j’ai mis à l’échelle vers une taille différente et si une sauvegarde antérieure à l’opération de mise à l’échelle, est restaurée ?
- Est-ce que je vais être facturé pour le disque managé utilisé dans la persistance des données ?
Persistance RDB
- Puis-je modifier la fréquence de sauvegarde RDB après avoir créé le cache ?
- Pourquoi y a-t-il un délai supérieur à 60 minutes entre les sauvegardes si la fréquence de sauvegarde RDB est de 60 minutes ?
- Qu’advient-il des anciennes sauvegardes RDB quand une nouvelle sauvegarde est effectuée ?
Persistance AOF
- La persistance AOF affecte-t-elle le débit, la latence ou les performances de mon cache ?
- Qu’est-ce qu’une réécriture et comment affecte-t-elle mon cache ?
- À quoi dois-je attendre lors de la mise à l’échelle d’un cache avec la persistance AOF activée ?
Puis-je activer la persistance sur un cache créé précédemment ?
Oui, la persistance peut être configurée lors de la création du cache ou sur des instances Redis managé Azure existantes.
Puis-je activer la persistance AOF et RDB en même temps ?
Non, vous pouvez activer RDB ou AOF, mais pas les deux en même temps.
Comment la persistance fonctionne-t-elle avec la géoréplication ?
Si vous activez la persistance des données, vous ne pouvez pas activer la géoréplication pour votre cache. La raison en est que la géoréplication active offre une meilleure résilience que la persistance des données en cas de panne régionale. Si vous devez exporter une copie de vos données en tant que sauvegarde, utilisez à la place la fonctionnalité d’exportation.
Quel modèle de persistance dois-je choisir ?
La persistance AOF enregistre chaque écriture dans un journal, ce qui peut avoir un impact significatif sur le débit. La persistance RDB enregistre des sauvegardes selon l’intervalle de sauvegarde configuré, avec un impact minimal sur les performances. Choisissez la persistance AOF si votre objectif principal est de minimiser la perte de données et si vous pouvez gérer un débit inférieur pour votre cache. Choisissez la persistance RDB si vous souhaitez maintenir un débit optimal de votre cache mais avez quand même besoin d’un mécanisme de récupération de données.
- Découvrez-en plus sur les avantages et les inconvénients de la persistance RDB.
- Découvrez-en plus sur les avantages et les inconvénients de la persistance AOF.
Pour plus d’informations sur les performances lors de l’utilisation de persistance AOF, consultez La persistance affecte-t-elle le débit, la latence ou les performances de mon cache ?
La persistance AOF affecte-t-elle le débit, la latence ou les performances de mon cache ?
L’utilisation de la persistance AOF a un impact sur le débit. AOF s’exécute sur tous les processus principaux : vous voyez donc une charge du processeur et du serveur plus élevée pour un cache avec la persistance AOF que pour un cache identique sans la persistance AOF. AOF offre la meilleure cohérence avec les données en mémoire, car chaque écriture et chaque suppression sont conservées avec seulement quelques secondes de retard. Le compromis est que l’AOF est plus gourmand en calcul.
Que se passe-t-il si j’ai mis à l’échelle vers une taille différente et si une sauvegarde antérieure à l’opération de mise à l’échelle, est restaurée ?
Pour la persistance RDB et AOF :
- Si vous avez effectué une mise à l’échelle vers une plus grande taille, il n’y a aucun effet.
- Si vous avez mis à l’échelle vers une plus petite taille et que l’espace est insuffisant pour contenir toutes les données issues de la dernière sauvegarde, les clés sont supprimées lors du processus de restauration. En général, les clés sont éliminées avec la stratégie d’éviction allkeys-lru.
Est-ce que je vais être facturé pour le disque managé utilisé dans la persistance des données ?
Vous n’êtes pas facturé pour le stockage sur le disque managé. Il est inclus dans le prix.
Puis-je modifier la fréquence de sauvegarde RDB après avoir créé le cache ?
Oui, vous pouvez modifier la fréquence de sauvegarde pour la persistance RDB à l’aide du portail Azure, de l’interface CLI ou de PowerShell.
Pourquoi, si la fréquence de sauvegarde RDB est de 60 minutes, y a-t-il un délai supérieur à 60 minutes entre les sauvegardes ?
L’intervalle de fréquence de sauvegarde avec la persistance RDB ne démarre qu’une fois le processus de sauvegarde précédent terminé. Si la fréquence de sauvegarde est de 60 minutes et que l’exécution d’un processus de sauvegarde prend 15 minutes, la sauvegarde suivante ne démarre que 75 minutes après l’heure de début de la sauvegarde précédente.
Qu’advient-il des anciennes sauvegardes RDB quand une nouvelle sauvegarde est effectuée ?
Toutes les sauvegardes avec la persistance RDB à l’exception de la plus récente sont supprimées automatiquement. Cette suppression peut ne pas avoir lieu immédiatement, mais les anciennes sauvegardes ne sont pas conservées indéfiniment.
Qu’est-ce qu’une réécriture et comment affecte-t-elle mon cache ?
Lorsque le fichier AOF devient suffisamment volumineux, une réécriture est automatiquement mise en file d’attente dans le cache. La réécriture redimensionne le fichier AOF avec l’ensemble minimal d’opérations nécessaires pour créer le jeu de données en cours. Durant les réécritures, vous pouvez vous attendre à atteindre plus rapidement les limites de performances, en particulier lors du traitement de grands jeux de données. Les réécritures s’effectueront moins souvent au fur et à mesure que le fichier AOF deviendra volumineux, mais elles prennent un temps considérable le cas échéant.
À quoi dois-je attendre lors de la mise à l’échelle d’un cache avec la persistance AOF activée ?
Si le fichier AOF est de grande taille au moment de la mise à l’échelle, attendez-vous à ce que l’opération de mise à l’échelle soit plus longue que la normale, étant donné qu’elle recharge le fichier une fois la mise à l’échelle terminée.
Pour en savoir plus sur la mise à l’échelle, consultez Que se passe-t-il si j’ai mis à l’échelle vers une taille différente et si une sauvegarde antérieure à l’opération de mise à l’échelle est restaurée ?