Pour minimiser les risques liés à vos charges de travail de production AlloyDB pour PostgreSQL, vous pouvez utiliser un cluster de préproduction pour tester les nouvelles fonctionnalités, les performances et les fonctionnalités avant d'appliquer les mises à jour à vos systèmes de production. Un cluster de préproduction est une copie de votre cluster de production qui ajoute une couche de contrôle au processus de mise à jour de maintenance. L'utilisation d'un cluster de préproduction pour tester les mises à jour de maintenance vous permet d'identifier et de résoudre les problèmes potentiels dans un environnement hors production. Cette approche réduit le risque de temps d'arrêt et de dégradation des performances dans vos systèmes de production.
Les mises à jour de maintenance d'AlloyDB sont périodiques, souvent mensuelles. Les mises à jour incluent de nouvelles fonctionnalités, des corrections de bugs, des mises à niveau de la compatibilité de la base de données et des correctifs liés à la sécurité. Bien que les versions d'AlloyDB soient rétrocompatibles, nous vous recommandons de tester les nouvelles versions dans un environnement de préproduction pour garantir la stabilité et la prévisibilité de la base de données pour les applications critiques de votre cluster de production.
Pour utiliser un cluster de préproduction, vous devez suivre les étapes générales suivantes :
- Configurez un cluster de préproduction.
- Configurez un intervalle de maintenance sur un cluster de production.
- Gérez les mises à jour du cluster de préproduction.
- Gérer les mises à jour des clusters de production
Cette approche de validation intermédiaire pour la maintenance AlloyDB garantit que votre environnement de production reste stable, performant et sécurisé tout en bénéficiant des dernières fonctionnalités et des derniers correctifs AlloyDB.
Le schéma suivant illustre la relation entre votre cluster de préproduction et votre cluster de production, ainsi que le flux opérationnel du processus de mise à jour :
Pour en savoir plus sur le fonctionnement des mises à jour de maintenance avec les clusters AlloyDB, consultez la présentation de la maintenance. Pour en savoir plus sur la gestion des périodes de maintenance, consultez Gérer les périodes de maintenance des clusters AlloyDB pour PostgreSQL.
Avant de commencer
Le projet Google Cloud que vous utilisez doit être activé pour accéder à AlloyDB.
Pour configurer un cluster de préproduction, vous devez créer ou disposer d'un cluster de production AlloyDB existant. Pour en savoir plus, consultez Créer un cluster et son instance principale.
Vous devez disposer de l'un des rôles IAM suivants dans le projet Google Cloudque vous utilisez :
roles/alloydb.admin
: rôle IAM prédéfini "Administrateur AlloyDB"roles/owner
: rôle IAM de base "Propriétaire"roles/editor
: rôle IAM de base Éditeur
Si vous ne disposez d'aucun de ces rôles, contactez l'administrateur de votre organisation pour demander l'accès.
Configurer un cluster de préproduction
Pour qu'une stratégie "staging-first" soit efficace, vous devez vous assurer que votre cluster de préproduction est semblable à votre environnement de production et qu'il reçoit les mises à jour avant la production. Vous configurez une stratégie "staging-first" lorsque vous ne définissez pas d'intervalle de maintenance sur votre cluster de préproduction. AlloyDB met d'abord à jour les clusters sans intervalles de maintenance.
Créer un cluster de préproduction à partir de votre sauvegarde de production
Déployez un cluster de préproduction qui reflète votre environnement de production et assurez-vous qu'il possède la même version, la même configuration et les mêmes données AlloyDB que votre cluster de production.
Pour vous assurer que votre cluster de préproduction est identique à votre environnement de production, utilisez la commande restore
pour cloner votre base de données de production dans votre cluster de préproduction et vous assurer que les données sont similaires et que la configuration correspond. Nous vous recommandons également de séparer les environnements de préproduction et de production dans des projets différents.
Vous pouvez utiliser les deux méthodes suivantes pour créer une sauvegarde de production :
- Créez un cluster de préproduction en effectuant une restauration complète d'une sauvegarde de cluster de production existante. Cette méthode n'implique pas la récupération d'une base de données. Toutefois, en fonction du calendrier de sauvegarde, les données peuvent remonter jusqu'à 24 heures. Pour utiliser cette méthode, consultez Restaurer un cluster à partir d'une sauvegarde stockée.
- Créez un cluster de préproduction en effectuant une récupération à un moment précis (PITR) à un moment précis d'une sauvegarde de base de données de production existante, y compris au moment le plus récent. Cette option vous permet d'obtenir les données les plus récentes et la méthode est plus simple. Toutefois, selon la dernière heure de sauvegarde PITR, la restauration ou la récupération des données à l'heure que vous spécifiez peut prendre plus de temps. Pour utiliser cette méthode, consultez Utiliser la récupération à un moment précis (PITR).
Vérifier qu'aucun intervalle de maintenance n'est défini sur le cluster de préproduction
Ne définissez pas d'intervalle de maintenance pour votre cluster de préproduction. Par défaut, les clusters AlloyDB nouvellement créés, même ceux que vous restaurez à partir d'une sauvegarde, ne disposent pas d'intervalle de maintenance défini. Il s'agit de l'état correct pour votre environnement de préproduction. AlloyDB met à jour les clusters qui n'ont pas d'intervalles de maintenance planifiés avant ceux qui en ont.
Pour vérifier qu'aucun intervalle de maintenance n'est défini, procédez comme suit :
Console
Accédez à la page Clusters.
Cliquez sur un cluster dans la colonne Nom de la ressource. La page Aperçu s'ouvre.
Sur la page Vue d'ensemble, dans la section Maintenance, consultez les détails de la période de maintenance de votre cluster.
Facultatif : Sur la page Informations système, vous pouvez afficher les détails de l'état de l'opération de maintenance, comme la chronologie des événements.
Pour afficher la gestion de la maintenance unifiée, saisissez "Maintenance Cloud Hub" dans la barre de recherche, puis sélectionnez Maintenance. Sur cette page, vous pouvez consulter un récapitulatif de la maintenance, la maintenance contrôlée par Google et les détails de la maintenance planifiée.
gcloud
Pour utiliser la gcloud CLI, vous pouvez installer et initialiser Google Cloud CLI, ou utiliser Cloud Shell.
gcloud alloydb clusters describe STAGING_CLUSTER_ID \ --region=LOCATION_ID \ --project=PROJECT_ID
Recherchez le champ
maintenanceSchedule
dans le résultat. Si aucune période de maintenance n'est définie, ce champ est absent ou vide. Si un intervalle de maintenance est défini, supprimez-le.gcloud alloydb clusters update STAGING_CLUSTER_ID \ --region=LOCATION_ID \ --clear-maintenance-window \ --project=PROJECT_ID
Configurer un intervalle de maintenance sur un cluster de production
Pour votre cluster de production, il est important de planifier un intervalle de maintenance. Vous pouvez ainsi contrôler le moment où les mises à jour ont lieu et les aligner sur les périodes de faible trafic de votre entreprise.
Définir un intervalle de maintenance sur le cluster de production
Programmez un intervalle de maintenance pour votre cluster de production. Choisissez un jour et une heure où votre système de production est le moins sollicité. La durée totale requise pour un événement de maintenance unique peut varier.
AlloyDB retarde automatiquement les mises à jour de votre cluster de production d'au moins une semaine après la mise à jour de votre cluster de préproduction. Si vous rencontrez des problèmes après la mise à jour du cluster de préproduction, vous pouvez refuser les mises à jour de maintenance de production pendant 30 jours maximum et contacter l'assistanceGoogle Cloud pour résoudre les problèmes.
Définissez un intervalle de maintenance sur votre cluster de production comme suit :
Console
Accédez à la page Clusters.
Cliquez sur un cluster dans la colonne Nom de la ressource.
Sur la page Présentation, dans la section Maintenance, cliquez sur Modifier. Une fenêtre de configuration s'ouvre.
Dans la section Intervalle de maintenance souhaité, sélectionnez le jour de la semaine pour cet intervalle de maintenance. L'option par défaut est "N'importe quelle fenêtre".
Lorsque vous créez un cluster, AlloyDB lui attribue cette période de maintenance par défaut.
Si vous sélectionnez un jour pour les mises à jour de maintenance, sélectionnez ensuite l'heure de la journée pour l'intervalle de maintenance.
Cliquez sur Mettre à jour pour enregistrer les modifications.
gcloud
Pour utiliser la gcloud CLI, vous pouvez installer et initialiser Google Cloud CLI, ou utiliser Cloud Shell.
Pour récupérer les détails de configuration d'un cluster AlloyDB, exécutez la commande gcloud alloydb clusters update
suivante.
gcloud alloydb clusters update PRODUCTION_CLUSTER_ID \
--region=LOCATION_ID \
--maintenance-window-day=DAY_OF_WEEK \
--maintenance-window-hour=HOUR_OF_DAY \
--project=PROJECT_ID
Effectuez les remplacements suivants :
PRODUCTION_CLUSTER_ID
: ID de votre cluster de production.LOCATION_ID
: la région Google Cloud .DAY_OF_WEEK
: jour de la semaine préféré pour la maintenance, tel queSUNDAY
.HOUR_OF_DAY
: heure de maintenance préférée en UTC (0-23).L'exemple suivant montre comment définir l'intervalle de maintenance pour les dimanches à 2h00 UTC :
gcloud alloydb clusters update my-prod-cluster \ --region=us-central1 \ --maintenance-window-day=SUNDAY \ --maintenance-window-hour=2 \ --project=my-production-project
Vérifier l'intervalle de maintenance sur le cluster de production
Pour vérifier que l'intervalle de maintenance est défini pour votre cluster de production, exécutez la commande gcloud alloydb clusters describe
:
gcloud alloydb clusters describe PRODUCTION_CLUSTER_ID \
--region=LOCATION_ID \
--project=PROJECT_ID
La sortie renvoie le champ maintenanceSchedule
avec le jour et l'heure de maintenance spécifiés.
Activer les notifications de maintenance
Nous vous recommandons d'activer les notifications concernant les opérations de maintenance planifiées pour votre cluster de production. Les notifications vous aident à planifier le début de vos tests.
Pour activer les notifications de maintenance :
Accédez à la page Clusters.
Cliquez sur un cluster dans la colonne Nom de la ressource. La page Aperçu s'ouvre.
Sur la page Vue d'ensemble, dans la section Maintenance, cliquez sur Afficher les détails pour développer la section. Cliquez ensuite sur Modifier sur la ligne Notifications. La page Communication s'ouvre.
Sur la page Communication, sélectionnez l'onglet Communications sur les produits.
Sur la ligne AlloyDB, dans la colonne Adresse e-mail, basculez le bouton de notification sur Activé.
Après avoir configuré la période de maintenance pour votre cluster de production, AlloyDB la met à jour au plus tôt sept jours après la mise à jour de votre cluster de préproduction. Lorsque vous choisissez de recevoir des notifications, vous recevez un e-mail vous informant qu'une mise à jour de maintenance est prévue pour votre cluster de production.
Mises à jour du cluster de préproduction
Utilisez votre environnement de préproduction pour valider la prochaine mise à jour de production.
Vérifier l'état avant la mise à jour
Comme aucun intervalle de maintenance n'est défini pour votre cluster de préproduction, il fait partie des premiers clusters à recevoir la mise à jour. Toutefois, AlloyDB n'envoie pas de notifications pour les clusters qui ne sont pas configurés avec l'intervalle de maintenance. Toutefois, vous pouvez surveiller les mises à jour de maintenance à l'aide de l'explorateur de journaux de la console Google Cloud .
Dans la console Google Cloud , accédez à la page Explorateur de journaux.
Accéder à l'explorateur de journaux
Si vous utilisez la barre de recherche pour trouver cette page, sélectionnez le résultat dont le sous-titre est Logging.
Sélectionnez Toutes les ressources, choisissez votre cluster de préproduction, puis cliquez sur Appliquer.
Sélectionnez Tous les noms de journaux, puis maintenance_events, et cliquez sur Appliquer.
Dans le volet Timeline, sélectionnez la période pendant laquelle votre cluster de préproduction reçoit les mises à jour.
Effectuer une vérification fonctionnelle après la mise à jour
Une fois qu'AlloyDB a mis à jour le cluster intermédiaire, effectuez des tests fonctionnels pour vérifier que les mises à jour sont sûres et adaptées à votre environnement de production.
Vérifier les performances après la mise à jour
Vérifiez votre cluster de préproduction une fois la mise à jour de maintenance terminée. Évaluez l'impact sur les performances de votre base de données après les mises à jour du cluster de préproduction. Effectuez des tests fonctionnels et de performances complets pour vous assurer que vos applications se comportent comme prévu et qu'elles respectent les SLA de performances.
Pour assurer la stabilité et le fonctionnement optimal de votre appareil :
- Comparez les références avant mise à jour avec les métriques clés.
- Exécutez des tests de charge pour identifier les régressions.
- Analysez les performances des requêtes.
- Surveillez l'utilisation des ressources.
Intervenir en fonction des résultats de la validation
Examinez les résultats de la validation et effectuez les actions suivantes en fonction des résultats :
- La validation réussit : si vos tests fonctionnels et de performances sur le cluster intermédiaire sont concluants, cela signifie que votre environnement intermédiaire est exempt d'erreurs et que vous pouvez laisser la maintenance de production se dérouler comme prévu dans sa fenêtre planifiée. Préparez-vous à la mise à jour de production et informez les parties prenantes concernées.
- Échec de la validation : si vos tests fonctionnels et de performances sur le cluster de préproduction échouent et que vous rencontrez des erreurs fonctionnelles, des dégradations de performances ou un comportement inattendu dans votre environnement de préproduction après la mise à jour de maintenance, vous devez refuser la maintenance de production.
Refuser un événement de maintenance planifié
Pour refuser un événement de maintenance planifié pour votre cluster de production, vous devez définir la date de début, la date de fin, ainsi que l'heure de début et de fin de l'intervalle.
Les dates de début et de fin doivent être au format suivant : YYYY-MM-DD
. La date et l'heure de début et de fin sont toutes indiquées dans le fuseau horaire UTC.
Pour utiliser la gcloud CLI, vous pouvez installer et initialiser Google Cloud CLI, ou utiliser Cloud Shell.
Pour ajouter une période de refus de maintenance à un cluster AlloyDB, procédez comme suit :
Exécutez la commande
gcloud alloydb clusters update
avec les optionsdeny-maintenance-period-start-date
,deny-maintenance-period-end-date
etdeny-maintenance-period-time
:gcloud alloydb clusters update CLUSTER_ID \ --region LOCATION_ID \ --deny-maintenance-period-start-date START_DATE \ --deny-maintenance-period-end-date END_DATE \ --deny-maintenance-period-time TIME
Remplacez les éléments suivants :
CLUSTER_ID
: cluster à configurer pour la période sans maintenance.LOCATION_ID
: région Google Cloud où se trouve ce cluster (par exemple,us-central1
).START_DATE
: date de début de la période sans maintenance au formatYYYY-MM-DD
UTC.END_DATE
: fin de la période sans maintenance au formatYYYY-MM-DD
UTC.TIME
: heure de la période sans maintenance au formatHH:MM
UTC. Les heures sont représentées au format 24 heures, où les valeurs sont comprises entre00:00
et23:59
(par exemple,16:45
).
Documentez tous les problèmes, y compris les messages d'erreur, les métriques de performances et les étapes pour les reproduire.
Ouvrez une demande d'assistance de haute priorité avec Google Cloud et fournissez tous les problèmes documentés. Google Cloud vous aidera à analyser et à résoudre les problèmes.
Mises à jour du cluster de production
Si la validation en préproduction réussit et que vous autorisez la maintenance en production, les mises à jour ont lieu pendant la période de maintenance planifiée.
Vérifier l'intervalle de maintenance
Pour surveiller les événements de maintenance à venir sur votre cluster de production, procédez comme suit :
Console
Accédez à la page Clusters.
Cliquez sur un cluster dans la colonne Nom de la ressource. La page Aperçu s'ouvre.
Sur la page Vue d'ensemble, dans la section Maintenance, consultez les détails de la période de maintenance de votre cluster.
Facultatif : Sur la page Informations système, vous pouvez afficher les détails de l'état de l'opération de maintenance, comme la chronologie des événements.
Pour afficher la gestion de la maintenance unifiée, saisissez "Maintenance Cloud Hub" dans la barre de recherche, puis sélectionnez Maintenance. Sur cette page, vous pouvez consulter un récapitulatif de la maintenance, la maintenance contrôlée par Google et les détails de la maintenance planifiée.
gcloud
Pour utiliser la gcloud CLI, vous pouvez installer et initialiser Google Cloud CLI, ou utiliser Cloud Shell.
Exécutez la commande suivante à l'aide de gcloud alloydb clusters describe
:
gcloud alloydb clusters describe PRODUCTION_CLUSTER_ID \
--region=LOCATION_ID \
--project=PROJECT_ID
Si un événement de maintenance est prévu, la sortie inclut maintenanceSchedule
et startTime
. Si vous avez choisi de recevoir des notifications, vous recevrez également des notifications par e-mail.
Surveiller la production pendant un intervalle de maintenance
Bien que Google Cloud automatise le processus de maintenance, nous vous recommandons de surveiller votre environnement de production pour les éléments suivants pendant l'intervalle de maintenance planifié :
- État de l'application : surveillez les journaux d'application et les vérifications de l'état pour détecter tout signe de perturbation.
- Connectivité de la base de données : vérifiez que vos applications peuvent se reconnecter à la base de données après l'interruption.
- Métriques AlloyDB : utilisez Google Cloud Monitoring pour observer les métriques AlloyDB (processeur, mémoire, connexions et latence de réplication) et vous assurer qu'elles reviennent aux niveaux attendus après la mise à jour.
Vérification de la mise à jour post-maintenance
Une fois la mise à jour de maintenance terminée, vérifiez que votre environnement de production présente les fonctionnalités et les indicateurs de performances essentiels.
- Fonctionnalité clé de l'application : exécutez un test de fumée de vos fonctionnalités d'application les plus critiques.
- Vérifications de base des performances : examinez les tableaux de bord pour détecter les pics de latence ou de consommation de ressources.