Buscar y configurar períodos de mantenimiento

En esta página, se muestran procedimientos a fin de encontrar y configurar períodos de mantenimiento para instancias de Cloud SQL. Para obtener más información sobre cómo y por qué Cloud SQL realiza el mantenimiento, consulta la descripción general del mantenimiento en instancias de Cloud SQL.

Antes de comenzar

  1. Accede a tu cuenta de Google Cloud. Si eres nuevo en Google Cloud, crea una cuenta para evaluar el rendimiento de nuestros productos en situaciones reales. Los clientes nuevos también obtienen $300 en créditos gratuitos para ejecutar, probar y, además, implementar cargas de trabajo.
  2. En la página del selector de proyectos de la consola de Google Cloud, selecciona o crea un proyecto de Google Cloud.

    Ir al selector de proyectos

  3. Comprueba que la facturación esté habilitada en tu proyecto.

    Descubre cómo puedes habilitar la facturación

  4. Instala Google Cloud CLI.
  5. Para inicializar la CLI de gcloud, ejecuta el siguiente comando:

    gcloud init
  6. En la página del selector de proyectos de la consola de Google Cloud, selecciona o crea un proyecto de Google Cloud.

    Ir al selector de proyectos

  7. Comprueba que la facturación esté habilitada en tu proyecto.

    Descubre cómo puedes habilitar la facturación

  8. Instala Google Cloud CLI.
  9. Para inicializar la CLI de gcloud, ejecuta el siguiente comando:

    gcloud init

Configura un período preferido para el mantenimiento de una instancia

Console

  1. En la consola de Google Cloud, ve a la página Instancias de Cloud SQL.

    Ir a Instancias de Cloud SQL

  2. Para abrir la página de Descripción general de una instancia, haz clic en su nombre.
  3. En la sección Mantenimiento, haz clic en Editar preferencias de mantenimiento.
  4. En la sección Opciones de configuración, abre Mantenimiento.
  5. Configura las siguientes opciones:
    • Período preferido. Establece el rango de día y hora en el que se pueden realizar actualizaciones en esta instancia.
    • Orden de actualización. Establece el orden de actualización de esta instancia en relación con las actualizaciones de otras instancias. Establece el tiempo en Cualquiera, Más temprano o Más tarde. Las instancias que usan la configuración Más temprano reciben actualizaciones hasta una semana antes que las instancias que usan la configuración Más tarde, cuando se comparan instancias que se encuentran en la misma ubicación.

gcloud

Antes de usar el comando de gcloud que se encuentra a continuación, reemplaza lo siguiente:

  • instance-id: Es la instancia que se debe reprogramar.
  • day: Es el día en el que deseas que se realice el mantenimiento. Establece uno de los siguientes: SUN, MON, TUE, WED, THU, FRI, SAT.
  • hour: Es la hora del día del período de mantenimiento, en la zona horaria UTC (0-23).
gcloud sql instances patch instance-id \
--maintenance-window-day=day \
--maintenance-window-hour=hour
    
Para obtener información de referencia, consulta gcloud sql instances patch.

Si realizas cambios en la configuración del período de mantenimiento mientras la instancia ya está en mantenimiento o está programada para mantenimiento, los cambios no se aplicarán de inmediato. Estos cambios se reflejan en los eventos de mantenimiento futuros.

Si habilitaste las notificaciones de mantenimiento, Cloud SQL te envía notificaciones después de que una instancia se programó para el mantenimiento, con la fecha y hora exactas en las que el mantenimiento está programada para ocurrir. Cloud SQL envía estas notificaciones según el orden de actualización del período de mantenimiento configurado en la instancia, de la siguiente manera:

  • Si el orden de actualización está configurado como Earlier, Cloud SQL envía notificaciones de mantenimiento al menos una semana por adelantado.
  • Si el orden de actualización está configurado como Later, Cloud SQL envía notificaciones de mantenimiento con al menos dos semanas de anticipación.

Habilita las notificaciones de mantenimiento

Antes de habilitar las notificaciones de mantenimiento, debes configurar un período preferido para el mantenimiento de una instancia.

  1. Ve a la página Comunicación. Ir a Comunicación
  2. En la fila de Cloud SQL, Período de mantenimiento, selecciona el botón de selección en Correo electrónico para activarlo.

Cada usuario que deba recibir notificaciones debe habilitar la opción por separado.

Busca notificaciones de mantenimiento en la consola de Google Cloud

Puedes ver las notificaciones de mantenimiento en algunos lugares de la consola de Cloud:

  • En el panel ACTIVIDAD, busca las instancias marcadas con Mantenimiento de SQL.
    Ir a la Actividad

  • Cuando una instancia está programada para mantenimiento, la fecha de mantenimiento aparece en la página Instancias en la columna Mantenimiento. La columna Mantenimiento suele estar oculta, pero se muestra de forma automática cuando se programa el mantenimiento. También puedes seleccionar Mantenimiento en las Opciones de visualización de columnas (El ícono de opciones de visualización de la columna tiene tres líneas) si deseas que la columna Mantenimiento aparezca siempre.

  • Como alternativa, puedes seleccionar una instancia para ir a la página Detalles de la instancia. Si la instancia está programada para mantenimiento, verás un mensaje en el panel Mantenimiento.
    Ir a Instancias de Cloud SQL

Busca períodos de mantenimiento programados mediante la API

gcloud

Antes de usar el comando de gcloud que se encuentra a continuación, reemplaza lo siguiente:

  • instance-id: Es la instancia que se reprogramará.
gcloud sql instances describe instance-id
    

Busca la sección scheduledMaintenance en la respuesta.

REST v1

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • PROJECT_ID: el ID o el número del proyecto de Google Cloud que contiene la instancia
  • INSTANCE_NAME: el nombre de la instancia que configuras para alta disponibilidad

Método HTTP y URL:

GET https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_NAME

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "kind": "sql#instance",
  "state": "RUNNABLE",
  "databaseVersion": "POSTGRES_13"
}

Busca la sección scheduledMaintenance en la respuesta.

REST v1beta4

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • PROJECT_ID: el ID o el número del proyecto de Google Cloud que contiene la instancia
  • INSTANCE_NAME: el nombre de la instancia que configuras para alta disponibilidad

Método HTTP y URL:

GET https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_NAME

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "kind": "sql#instance",
  "state": "RUNNABLE",
  "databaseVersion": "POSTGRES_13"
}

Busca la sección scheduledMaintenance en la respuesta.

Reprograma el mantenimiento planificado

Puedes reprogramar el mantenimiento mediante la consola de Google Cloud, gcloud o la API de Cloud SQL Admin.

Consola

  1. En la consola de Google Cloud, ve a la página Instancias de Cloud SQL.

    Ir a Instancias de Cloud SQL

  2. Filtra el término Mantenimiento a fin de enumerar todas las instancias programadas para mantenimiento.
  3. En la columna Mantenimiento, haz clic en Reprogramar.
  4. En el cuadro de diálogo Reprogramar, selecciona si deseas aplicar el mantenimiento de inmediato, reprogramarlo para que se realice en un momento específico dentro del período de aplazamiento de 28 días o aplazarlo al próximo período de mantenimiento disponible.

gcloud

Antes de usar el comando de gcloud que se encuentra a continuación, reemplaza lo siguiente:

  • instance-id: Es la instancia que se reprogramará.
  • reschedule-type: Usa una de las siguientes opciones: IMMEDIATE, NEXT_AVAILABLE_WINDOW o SPECIFIC_TIME.

    Si eliges NEXT_AVAILABLE_WINDOW, el mantenimiento se reprograma al siguiente período de mantenimiento disponible después de la hora programada actual.

  • reschedule-time: Si seleccionas SPECIFIC_TIME para reschedule-type, también debes configurar esta marca a fin de especificar el día y la hora nuevos de mantenimiento. Usa el formato ISO 8601. Por ejemplo, 2020-01-16T16:56:00.000Z.
gcloud sql reschedule-maintenance instance-id \
--reschedule-type=reschedule-type \
[--schedule-time=reschedule-time]
  
Para obtener información de referencia, consulta gcloud sql reschedule-maintenance.

Si deseas reprogramar el mantenimiento por hasta 28 días, verifica el número de versión de gcloud. Si el número de versión es inferior a 390.0.0_RC00, vuelve a instalar gcloud.

REST v1

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • project-id: el ID del proyecto
  • instance-id: El ID de la instancia
  • reschedule-type: Usa una de las siguientes opciones: IMMEDIATE, NEXT_AVAILABLE_WINDOW o SPECIFIC_TIME.

    Si eliges NEXT_AVAILABLE_WINDOW, el mantenimiento se reprograma al siguiente período de mantenimiento disponible.

Método HTTP y URL:

POST https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/rescheduleMaintenance

Cuerpo JSON de la solicitud:

{
  "reschedule": {
    "reschedule_type": "reschedule-type"
  }
}

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id",
  "status": "PENDING",
  "user": "user@example.com",
  "insertTime": "2020-01-16T02:32:12.281Z",
  "startTime": "08:00",
  "endTime": "08:01",
  "operationType": RESCHEDULE_MAINTENANCE,
  "name": "operation-id",
  "targetId": "instance-id",
  "selfLink": "https://sqladmin.googleapis.com/v1/projects/project-id/operations/operation-id",
  "targetProject": "project-id"
}

REST v1beta4

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • project-id: el ID del proyecto
  • instance-id: El ID de la instancia
  • reschedule-type: Usa una de las siguientes opciones: IMMEDIATE, NEXT_AVAILABLE_WINDOW o SPECIFIC_TIME.

    Si eliges NEXT_AVAILABLE_WINDOW, el mantenimiento se reprograma al siguiente período de mantenimiento disponible.

Método HTTP y URL:

POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/rescheduleMaintenance

Cuerpo JSON de la solicitud:

{
  "reschedule": {
    "reschedule_type": "reschedule-type"
  }
}

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id",
  "status": "PENDING",
  "user": "user@example.com",
  "insertTime": "2020-01-16T02:32:12.281Z",
  "startTime": "08:00",
  "endTime": "08:01",
  "operationType": RESCHEDULE_MAINTENANCE,
  "name": "operation-id",
  "targetId": "instance-id",
  "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/operations/operation-id",
  "targetProject": "project-id"
}

Si quieres ver cómo se crea la solicitud a la API de REST subyacente para esta tarea, consulta el Explorador de API en la página de instances:post.

Configura un rechazo del período de mantenimiento

Puedes configurar un máximo de un rechazo del período de mantenimiento en una instancia de Cloud SQL en cualquier momento. El período de rechazo del mantenimiento tiene prioridad sobre los períodos de mantenimiento programados. Si hay un conflicto entre el momento de un período de mantenimiento y el período de mantenimiento rechazado, el período de rechazo anula el de mantenimiento.

Puedes quitar de forma manual un rechazo del período de mantenimiento, ya sea que se haya llevado a cabo o no.

Para configurar un rechazo del período de mantenimiento, configura la fecha de inicio, la fecha de finalización y la hora del día en que comienza y termina el intervalo. Un rechazo del período de mantenimiento puede extenderse de uno a 90 días.

Existen dos formatos para la fecha de inicio y de finalización:

  • yyyy-mm-dd: Indica una fecha específica.
  • mm-dd: Indica una fecha recurrente cada año

La fecha de inicio y de finalización tienen el formato UTC. A fin de configurar la zona horaria, usa el campo de hora para ajustar la hora de inicio. Por ejemplo, la fecha de inicio = 2020-10-10 y la hora = 07:00:00 indican que la hora de inicio es 2020-10-10 07:00:00 UTC (2020-10-10 00:00:00 PST).

Para la hora, el formato es: HH:mm:SS.

  • Los valores de las horas deben estar entre 0 y 23 (inclusive).
  • Los minutos y los segundos deben estar entre 0 y 59 (inclusive).

Console

  1. En la consola de Google Cloud, ve a la página Instancias de Cloud SQL.

    Ir a Instancias de Cloud SQL

  2. Para abrir la página de Descripción general de una instancia, haz clic en su nombre.
  3. En la sección Mantenimiento, haz clic en Editar preferencias de mantenimiento.
  4. En la sección Período de rechazo del mantenimiento, configura las fechas de inicio y finalización.
  5. En la sección Opciones avanzadas, puedes seleccionar Repetir cada año.
  6. Haz clic en Guardar.

gcloud

Antes de usar el comando de gcloud que se encuentra a continuación, reemplaza lo siguiente:

  • instance-id: Es el ID de la instancia de Cloud SQL.
  • start-date: Es la fecha en la que comienza el intervalo. Por ejemplo: 29-11-2021.
  • end-date: Es la fecha en la que finaliza el intervalo. Por ejemplo: 02-12-2021.
  • time: Es la hora del día para el inicio y la finalización del intervalo. Por ejemplo, 00:00:00.
gcloud sql instances patch instance-id\
 --deny-maintenance-period-start-date=start-date \
 --deny-maintenance-period-end-date=end-date \
 --deny-maintenance-period-time=time

REST v1

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • project-id: el ID del proyecto
  • instance-id: Es el ID de la instancia.
  • start-date: Es la fecha de inicio (dd-mm-aaaa), o (dd-mm) para la recurrencia anual.
  • end-date: Es la fecha de finalización (dd-mm-aaaa), o (dd-mm) para la recurrencia anual.
  • time: Es la hora de inicio y finalización (HH:mm:SS).

Método HTTP y URL:

POST https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id

Cuerpo JSON de la solicitud:

{
  "settings":
  {
    "denyMaintenancePeriods": [{
      "start_date": "start-date",
      "end_date": "end-date"
      "time": "time"
    }]
  }
}

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id",
  "status": "PENDING",
  "user": "user@example.com",
  "insertTime": "2020-01-16T02:32:12.281Z",
  "startTime": "08:00",
  "endTime": "08:01",
  "operationType": MAINTENANCE_DENY_PERIOD,
  "name": "operation-id",
  "targetId": "instance-id",
  "selfLink": "https://sqladmin.googleapis.com/v1/projects/project-id/operations/operation-id",
  "targetProject": "project-id"
}

REST v1beta4

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • project-id: el ID del proyecto
  • instance-id: Es el ID de la instancia.
  • start-date: Es la fecha de inicio (dd-mm-aaaa), o (dd-mm) para la recurrencia anual.
  • end-date: Es la fecha de finalización (dd-mm-aaaa), o (dd-mm) para la recurrencia anual.
  • time: Es la hora de inicio y finalización (HH:mm:SS).

Método HTTP y URL:

POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id

Cuerpo JSON de la solicitud:

{
  "settings":
  {
    "denyMaintenancePeriods": [{
      "start_date": "start-date",
      "end_date": "end-date"
      "time": "time"
    }]
  }
}

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id",
  "status": "PENDING",
  "user": "user@example.com",
  "insertTime": "2020-01-16T02:32:12.281Z",
  "startTime": "08:00",
  "endTime": "08:01",
  "operationType": MAINTENANCE_DENY_PERIOD,
  "name": "operation-id",
  "targetId": "instance-id",
  "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/operations/operation-id",
  "targetProject": "project-id"
}

Quita un rechazo del período de mantenimiento

Console

  1. En la consola de Google Cloud, ve a la página Instancias de Cloud SQL.

    Ir a Instancias de Cloud SQL

  2. Para abrir la página de Descripción general de una instancia, haz clic en su nombre.
  3. En la sección Mantenimiento, haz clic en Editar preferencias de mantenimiento.
  4. En la sección Rechazar período de mantenimiento, haz clic en Borrar.
  5. Haz clic en Guardar.

gcloud

Antes de usar el comando de gcloud que se encuentra a continuación, reemplaza lo siguiente:

  • instance-id: Es el ID de la instancia de Cloud SQL.
gcloud sql instances patch instance-id \
--remove-deny-maintenance-period

REST v1

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • project-id: el ID del proyecto
  • instance-id: El ID de la instancia

Método HTTP y URL:

POST https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id

Cuerpo JSON de la solicitud:

{
  "settings":
  {
    "denyMaintenancePeriods": []
  }
}

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id",
  "status": "PENDING",
  "user": "user@example.com",
  "insertTime": "2020-01-16T02:32:12.281Z",
  "startTime": "08:00",
  "endTime": "08:01",
  "operationType": MAINTENANCE_DENY_PERIOD,
  "name": "operation-id",
  "targetId": "instance-id",
  "selfLink": "https://sqladmin.googleapis.com/v1/projects/project-id/operations/operation-id",
  "targetProject": "project-id"
}

REST v1beta4

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • project-id: el ID del proyecto
  • instance-id: El ID de la instancia

Método HTTP y URL:

POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id

Cuerpo JSON de la solicitud:

{
  "settings":
  {
    "denyMaintenancePeriods": []
  }
}

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id",
  "status": "PENDING",
  "user": "user@example.com",
  "insertTime": "2020-01-16T02:32:12.281Z",
  "startTime": "08:00",
  "endTime": "08:01",
  "operationType": MAINTENANCE_DENY_PERIOD,
  "name": "operation-id",
  "targetId": "instance-id",
  "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/operations/operation-id",
  "targetProject": "project-id"
}

Notificaciones del rechazo del período de mantenimiento

Las notificaciones del período de mantenimiento no se envían cuando el tiempo de mantenimiento planificado se encuentra dentro del rechazo del período de mantenimiento y están prohibidas por la configuración del rechazo del período de mantenimiento.

Si cambias la configuración del período de rechazo del mantenimiento para evitar el mantenimiento en un momento programado con anterioridad, la instancia de Cloud SQL omite el mantenimiento y envía una notificación sobre la cancelación del mantenimiento. Cloud SQL envía este aviso de cancelación cada vez que la instancia tiene programada una actualización.

Las notificaciones de mantenimiento planificado se envían durante el rechazo del período de mantenimiento, siempre que ese mantenimiento esté programado fuera de ese período.

¿Qué sigue?