Avant de commencer
Lorsque vous mettez à niveau l'opérateur AlloyDB Omni, la base de données redémarre, sauf si toutes les conditions suivantes sont remplies :
- Vous mettez à niveau la version 1.1.1 de l'opérateur AlloyDB Omni vers une version plus récente.
- Vous utilisez la version 15.5.5 ou ultérieure de la base de données AlloyDB Omni.
- AlloyDB AI n'est pas activé.
Si la base de données redémarre, aucune perte de données n'est à prévoir.
À partir de la version 15.7.1 de la base de données AlloyDB Omni, la haute disponibilité (HD) sur vos clusters de bases de données AlloyDB Omni basés sur Kubernetes utilise une nouvelle architecture pour offrir plus de renforcement et d'améliorations pour les fonctionnalités de configuration automatique, de basculement et de réparation de la HD.
Si vous mettez à niveau la version de la base de données AlloyDB Omni de la version 15.7.0 (ou antérieure) vers la version 15.7.1 (ou ultérieure), ou si vous rétrogradez les versions, vous devez désactiver la haute disponibilité et la réactiver une fois le processus terminé.
Déterminer vos versions actuelles
Pour vérifier la version d'AlloyDB Omni utilisée par votre cluster de bases de données, exécutez la commande suivante :
kubectl get dbclusters.alloydbomni.dbadmin.goog DB_CLUSTER_NAME -n NAMESPACE -o jsonpath='{.status.primary.currentDatabaseVersion}'
Effectuez les remplacements suivants :
DB_CLUSTER_NAME
: nom de votre cluster de bases de données. Il s'agit du même nom de cluster de base de données que celui que vous avez déclaré lors de sa création. Pour en savoir plus, consultez Installer AlloyDB Omni sur Kubernetes.NAMESPACE
: espace de noms Kubernetes de votre cluster de bases de données.
Si vous exécutez la version 1.0.0 ou ultérieure de l'opérateur AlloyDB Omni, cette commande affiche la version d'AlloyDB Omni utilisée par votre cluster de bases de données.
Pour vérifier la version de l'opérateur AlloyDB Omni installé sur votre cluster Kubernetes, exécutez la commande suivante :
kubectl get dbclusters.alloydbomni.dbadmin.goog DB_CLUSTER_NAME -n NAMESPACE -o jsonpath='{.status.primary.currentControlPlaneAgentsVersion}'
Si vous exécutez la version 1.0.0 ou ultérieure de l'opérateur AlloyDB Omni, le résultat correspond au numéro de version de l'opérateur AlloyDB Omni exécuté sur votre cluster Kubernetes.
Si vous exécutez une version de l'opérateur AlloyDB Omni antérieure à la version 1.0.0, suivez les instructions de la section Mettre à niveau un opérateur AlloyDB Omni antérieur à la version 1.0.0. Sinon, passez à Vérifier les numéros de version cible.
Vérifier les numéros de version cible
Si vous exécutez une version de l'opérateur AlloyDB Omni 1.0.0 ou ultérieure, les étapes suivantes dépendent de la version d'AlloyDB Omni vers laquelle vous souhaitez effectuer la mise à niveau. Le numéro de version d'AlloyDB Omni comprend les composants suivants :
- Numéro de version majeure de sa compatibilité avec PostgreSQL
- Numéro de version mineure de sa compatibilité PostgreSQL
- Numéro de version du correctif de cette version d'AlloyDB Omni
Par exemple, la version 15.7.1 d'AlloyDB Omni est compatible avec la version 15.7 de PostgreSQL et ne comporte pas de correctif de version AlloyDB Omni.
Choisissez l'option d'installation qui correspond à votre version cible :
Scénario d'installation | Étapes de mise à jour |
---|---|
Vous souhaitez passer à une version d'AlloyDB Omni compatible avec une version plus récente de PostgreSQL. | Mettez à niveau l'opérateur AlloyDB Omni et votre cluster de bases de données. Chaque ensemble de versions AlloyDB Omni compatibles avec une version mineure spécifique de PostgreSQL possède son propre numéro de version d'opérateur AlloyDB Omni. Consultez le tableau de compatibilité des versions de l'opérateur AlloyDB Omni pour vérifier que votre version de l'opérateur AlloyDB Omni est compatible avec votre version de l'opérateur. |
Vous souhaitez effectuer une mise à niveau uniquement vers une version de correctif plus récente d'AlloyDB Omni. | Mettez à niveau uniquement votre cluster de bases de données. |
Tous les autres scénarios | Suivez les étapes de la section Mettre à niveau l'opérateur AlloyDB Omni. |
Mettre à niveau l'opérateur AlloyDB Omni
Pour mettre à niveau l'opérateur AlloyDB Omni, procédez comme suit :
Définissez les variables d'environnement :
export GCS_BUCKET=alloydb-omni-operator
export OPERATOR_VERSION=OPERATOR_VERSION
export HELM_PATH=$OPERATOR_VERSION/alloydbomni-operator-$OPERATOR_VERSION.tgz
Remplacez
OPERATOR_VERSION
par la version de l'opérateur AlloyDB Omni vers laquelle vous effectuez la mise à niveau (par exemple,1.4.0
).Téléchargez le dernier opérateur AlloyDB Omni :
gcloud storage cp gs://$GCS_BUCKET/$HELM_PATH ./ --recursive
tar -xvzf alloydbomni-operator-${OPERATOR_VERSION}.tgz
Appliquez les dernières définitions de ressources personnalisées de l'opérateur AlloyDB Omni :
kubectl apply -f alloydbomni-operator/crds
Mettez à niveau le chart Helm de l'opérateur AlloyDB Omni :
helm upgrade alloydbomni-operator alloydbomni-operator-${OPERATOR_VERSION}.tgz \ --namespace alloydb-omni-system \ --atomic \ --timeout 5m
Mettre à jour les clusters de bases de données
Pour mettre à jour le dbCluster
, procédez comme suit :
Si vous mettez à niveau un cluster de bases de données AlloyDB Omni à haute disponibilité de la version 15.7.0 (ou antérieure) vers la version 15.7.1 (ou ultérieure), suivez ces étapes pour désactiver la haute disponibilité.
- Définissez
numberOfStandbys
sur0
dans le fichier manifeste du cluster.
spec: availability: numberOfStandbys: 0
- Pour désactiver la haute disponibilité, appliquez de nouveau le fichier manifeste.
- Définissez
Mettez à jour les versions
databaseVersion
etcontrolPlaneAgentsVersion
dans le fichier manifeste du cluster, puis réappliquez le fichier manifeste.Voici une partie d'un fichier manifeste qui spécifie la version 15.7.1 de
databaseVersion
et la version 1.4.0 decontrolPlaneAgentsVersion
:apiVersion: alloydbomni.dbadmin.goog/v1 kind: DBCluster metadata: name: DB_CLUSTER_NAME spec: databaseVersion: "15.7.1" controlPlaneAgentsVersion: "1.4.0" ...
Remplacez la variable suivante :
DB_CLUSTER_NAME
: nom de votre cluster de bases de données. Il s'agit du même nom de cluster de base de données que celui que vous avez déclaré lors de sa création. Pour en savoir plus, consultez Installer AlloyDB Omni sur Kubernetes.
Attendez la fin de la mise à niveau.
Si vous avez désactivé la haute disponibilité avant la mise à niveau, procédez comme suit.
Redéfinissez
numberOfStandbys
sur la valeur antérieure à la mise à niveau dans le fichier manifeste du cluster.Appliquez à nouveau le fichier manifeste pour réactiver la haute disponibilité.
Mettre à jour alloydb_omni_instance_postgresql_wait_time_second_total
Si vous utilisez la métrique alloydb_omni_instance_postgresql_wait_time_second_total
, vous devez la remplacer par alloydb_omni_instance_postgresql_wait_time_us_total
. Pour utiliser les deux métriques, utilisez l'opérateur Prometheus OR
.
(promQL A) OR (promQL A, but replace all occurrences of alloydb_omni_instance_postgresql_wait_time_second_total to alloydb_omni_instance_postgresql_wait_time_us_total)
Si vous utilisez seconds
comme unité pour cette métrique, vous devez la convertir en us
.
Pour en savoir plus, consultez les notes de version.