Stratégie de maintenance

Memorystore pour Memcached fait l'objet d'une maintenance perturbatrice environ tous les six mois pour inclure les derniers correctifs de sécurité et mises à jour. Les mises à jour perturbatrices nécessitent un redémarrage des nœuds. Les instances Memcached reçoivent des mises à jour de maintenance non perturbatrices en arrière-plan.

Les mises à jour non perturbatrices sont automatiquement appliquées sans notification. Les mises à jour perturbatrices vous sont envoyées dans un délai de 30 jours.

Maintenance manuelle ou automatique

Pour les mises à jour perturbatrices, vous pouvez choisir entre la maintenance manuelle ou la maintenance automatique.

Maintenance manuelle

La maintenance manuelle vous permet d'appliquer une mise à jour à votre instance Memcached. Vous pouvez appliquer la mise à jour manuellement pendant les 30 jours suivant la réception de la notification de maintenance.

Pour savoir comment appliquer manuellement une mise à jour de maintenance, consultez la section Appliquer des mises à jour de maintenance.

Maintenance automatique

Si vous ne mettez pas à jour manuellement votre instance dans les 30 jours suivant la réception de la notification, la mise à jour de maintenance est appliquée automatiquement. Pour plus d'informations, consultez la section Déploiement automatique de maintenance.

Calendrier de maintenance pour les mises à jour perturbatrices

  • Vous recevez un e-mail obligatoire sur le service vous informant que l'intervalle de maintenance manuel de 30 jours est ouvert.

  • Pendant cette période, vous pouvez appliquer manuellement la mise à jour logicielle aux nœuds de votre cluster Memcached.

  • Une fois l'intervalle de maintenance fermé, un déploiement de maintenance automatique peut mettre à jour le cluster Memcached à tout moment.

Déploiement automatique de la maintenance

La maintenance automatique se produit après la fin de la maintenance manuelle de 30 jours. La mise à jour de maintenance est appliquée individuellement à chaque nœud, dans l'ordre. Les mises à jour de nœuds sont espacées de manière égale sur une période de maintenance de six heures. Le tableau suivant montre les déploiements de maintenance pour différents nombres de nœuds:

Nombre de nœuds Délai entre les mises à jour des nœuds Durée totale
1 nœud Aucun délai 60 minutes au maximum
2 nœuds 310 minutes 360 minutes
4 nœuds 96 minutes 358 minutes
7 nœuds 43 minutes 358 minutes
13 nœuds 16 minutes 352 minutes
20 nœuds 6 minutes 344 minutes

Si votre cluster ne comporte qu'un seul nœud Memcached, toutes les données de votre cluster sont vidées. Sinon, les nœuds de votre cluster sont mis à jour de manière séquentielle afin que les autres nœuds continuent de diffuser des données alors qu'ils se trouvent dans la file d'attente. Une fois qu'un nœud est mis à jour, il refroidit et commence à renvoyer des appels de cache, même lorsque d'autres nœuds sont soumis à une mise à jour.

Bonnes pratiques pour la maintenance manuelle

Les mises à jour de maintenance perturbatrices nécessitent que chaque nœud du cluster Memcached soit mis à jour et redémarré, ce qui entraîne une purge complète du cache. En fonction de votre cas d'utilisation de l'application, il peut être préférable d'effectuer la maintenance des nœuds en une seule fois ou sur une courte période.

Toutefois, une mise à jour complète ou sur une courte période réduit l'espace de clés disponible du cache, ce qui peut avoir un impact négatif sur le nombre de clés envoyées aux requêtes de cache entrantes (faible taux d'accès au cache). Cela est particulièrement vrai pour les clusters comportant un plus grand nombre de nœuds.

Vous pouvez réduire la perte d'espace de clés en mettant à jour les nœuds un par un ou par lot, en laissant du temps entre les mises à jour du nœud pour réhydrater les clés.

En outre, vous devez prendre en compte la période pendant laquelle votre cache reçoit le plus de requêtes et tente de mettre à jour les nœuds au cours d'une utilisation plus faible.

Simuler un déploiement de maintenance

Avant qu'un événement de maintenance ne survienne, vous pouvez tester l'incidence de l'indisponibilité séquentielle de votre espace de clés sur votre application. Savoir comment votre application réagit lorsqu'un espace de clé manque vous aidera à prévenir les impacts négatifs inattendus qui pourraient se produire lors de la maintenance de Memorystore pour Memcached.

Vous pouvez simuler un événement de maintenance à l'aide de la commande gcloud memcache applyparameters.

La simulation d'un événement de maintenance à l'aide de cette commande nécessite la modification temporaire d'une configuration Memcached qui déclenche le vidage du cache sur les nœuds, comme durant la maintenance.

Exécutez la commande gcloud memcache applyparameters par lots en suivant la séquence de déploiement de la maintenance qui s'applique à votre cluster, selon sa taille.