En esta página, se describe cómo actualizar el operador de AlloyDB Omni. Los pasos para actualizar AlloyDB Omni en Kubernetes dependen de la versión actual de AlloyDB Omni y de la versión a la que te actualizas.
Antes de comenzar
Cuando actualizas el operador de AlloyDB Omni, la base de datos se reinicia, a menos que se cumplan todas las siguientes condiciones:
- Actualizarás la versión 1.1.1 del operador de AlloyDB Omni a una versión más reciente.
- Estás usando la versión 15.5.5 o una posterior de la base de datos de AlloyDB Omni.
- La IA de AlloyDB no está habilitada.
Si se reinicia la base de datos, no se espera una pérdida de datos.
A partir de la versión 15.7.1 de la base de datos de AlloyDB Omni, la alta disponibilidad (HA) en los clústeres de la base de datos de AlloyDB Omni basados en Kubernetes usa una nueva arquitectura para proporcionar más endurecimiento y mejoras para la configuración automática, la conmutación por error y las capacidades de restablecimiento de HA.
Si actualizas la versión de la base de datos de AlloyDB Omni de la versión 15.7.0 (o una anterior) a la versión 15.7.1 (o una posterior), o si cambias a una versión anterior, debes inhabilitar la HA antes de realizar la actualización y volver a habilitarla después de que se complete.
Determina tus versiones actuales
Para verificar la versión de AlloyDB Omni que usa tu clúster de bases de datos, ejecuta el siguiente comando:
kubectl get dbclusters.alloydbomni.dbadmin.goog DB_CLUSTER_NAME -n NAMESPACE -o jsonpath='{.status.primary.currentDatabaseVersion}'
Realiza los siguientes reemplazos:
DB_CLUSTER_NAME
: Es el nombre de tu clúster de bases de datos. Es el mismo nombre de clúster de base de datos que declaraste cuando lo creaste.NAMESPACE
: El espacio de nombres de Kubernetes de tu clúster de bases de datos.
Si ejecutas la versión 1.0.0 o una posterior del operador de AlloyDB Omni, este comando imprime la versión de AlloyDB Omni que usa tu clúster de bases de datos.
Para verificar la versión del operador AlloyDB Omni instalado en tu clúster de Kubernetes, ejecuta el siguiente comando:
kubectl get dbclusters.alloydbomni.dbadmin.goog DB_CLUSTER_NAME -n NAMESPACE -o jsonpath='{.status.primary.currentControlPlaneAgentsVersion}'
Si ejecutas la versión 1.0.0 o una posterior del operador de AlloyDB Omni, el resultado es el número de versión del operador de AlloyDB Omni que se ejecuta en tu clúster de Kubernetes.
Si ejecutas una versión del operador de AlloyDB Omni anterior a la 1.0.0, sigue las instrucciones que se indican en Cómo actualizar desde un operador de AlloyDB Omni anterior a la versión 1.0.0. De lo contrario, continúa con Verifica los números de versión de destino.
Verifica los números de versión de destino
Si ejecutas una versión del operador de AlloyDB Omni 1.0.0 o posterior, los pasos que debes seguir dependen de la versión de AlloyDB Omni a la que deseas actualizar. El número de versión de AlloyDB Omni tiene los siguientes componentes:
- El número de versión principal de su compatibilidad con PostgreSQL
- El número de versión secundaria de su compatibilidad con PostgreSQL
- El número de versión del parche de esta versión de AlloyDB Omni
Por ejemplo, la versión 15.7.1 de AlloyDB Omni es compatible con la versión 15.7 de PostgreSQL y no tiene un parche de lanzamiento de AlloyDB Omni.
Elige la opción de instalación que funcione para tu versión de destino:
Situación de instalación | Pasos de actualización |
---|---|
Quieres actualizar a una versión de AlloyDB Omni que admita una versión más reciente de PostgreSQL. | Actualiza el operador de AlloyDB Omni y el clúster de bases de datos. Cada conjunto de versiones de AlloyDB Omni que admite una versión secundaria específica de PostgreSQL tiene su propio número de versión del operador de AlloyDB Omni, que puedes encontrar en las notas de la versión de la versión de AlloyDB Omni. Usa la tabla de compatibilidad de versiones de operadores de AlloyDB Omni para verificar que la versión de operador de AlloyDB Omni sea compatible con la versión de operador. |
Solo quieres actualizar a una versión de parche más reciente de AlloyDB Omni. | Actualiza solo tu clúster de base de datos. Consulta la tabla de compatibilidad de versiones del operador de AlloyDB Omni y las notas de la versión antes de actualizar para determinar si también debes actualizar el operador de AlloyDB Omni. |
Todas las demás situaciones | Sigue los pasos para actualizar el operador de AlloyDB Omni. |
Actualiza el operador de AlloyDB Omni
Para actualizar el operador Omni de AlloyDB, sigue estos pasos:
Define las variables de entorno:
export GCS_BUCKET=alloydb-omni-operator
export OPERATOR_VERSION=OPERATOR_VERSION
export HELM_PATH=$OPERATOR_VERSION/alloydbomni-operator-$OPERATOR_VERSION.tgz
Reemplaza
OPERATOR_VERSION
por la versión del operador de AlloyDB Omni a la que te actualizas, por ejemplo,1.4.0
.Descarga el operador de AlloyDB Omni más reciente:
gsutil cp -r gs://$GCS_BUCKET/$HELM_PATH ./
tar -xvzf alloydbomni-operator-${OPERATOR_VERSION}.tgz
Aplica las definiciones de recursos personalizados del operador de AlloyDB Omni más recientes:
kubectl apply -f alloydbomni-operator/crds
Actualiza el gráfico de Helm del operador de AlloyDB Omni:
helm upgrade alloydbomni-operator alloydbomni-operator-${OPERATOR_VERSION}.tgz \ --namespace alloydb-omni-system \ --atomic \ --timeout 5m
Actualiza los clústeres de la base de datos
Para actualizar el dbCluster
, sigue estos pasos:
Si actualizas un clúster de base de datos de AlloyDB Omni con alta disponibilidad de la versión 15.7.0 (o anterior) a la versión 15.7.1 (o posterior), configura
numberOfStandbys
como0
en el manifiesto del clúster y vuelve a aplicarlo para inhabilitar la alta disponibilidad:spec: availability: numberOfStandbys: 0
No es necesario inhabilitar HA si actualizas desde una versión anterior a la 15.7.0 (o una versión anterior) o desde la 15.7.1 (o una versión posterior) a una versión más reciente.
Actualiza las versiones de
databaseVersion
ycontrolPlaneAgentsVersion
en el manifiesto del clúster y vuelve a aplicarlo.El siguiente texto es parte de un archivo de manifiesto que especifica la versión 15.7.1 de
databaseVersion
y la versión 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" ...
Espera a que se complete la actualización.
Si inhabilitaste la HA antes de la actualización, puedes restablecer
numberOfStandbys
al número anterior a la actualización en el manifiesto del clúster y volver a aplicarlo para volver a habilitar la HA.
Actualizar alloydb_omni_instance_postgresql_wait_time_second_total
Si usas la métrica alloydb_omni_instance_postgresql_wait_time_second_total
, debes actualizarla a alloydb_omni_instance_postgresql_wait_time_us_total
. Para consumir ambas métricas, usa el operador OR
de Prometheus.
(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 usas seconds
como unidad para esta métrica, debes convertirla a us
.
Para obtener más información, consulta las notas de la versión.