Ventana de mantenimiento: servicios de datos habilitados para Azure Arc

Configure una ventana de mantenimiento en un controlador de datos para definir un período de tiempo para las actualizaciones. En este período de tiempo, se actualizarán las instancias de SQL Managed Instance habilitadas para Arc en ese controlador de datos que tengan la propiedad desiredVersion establecida en auto.

Durante la configuración, especifique una duración, una periodicidad y una fecha y hora de inicio. Una vez iniciada la ventana de mantenimiento, se ejecutará durante el período de tiempo establecido en la duración. Las instancias adjuntas al controlador de datos comenzarán a actualizarse (en paralelo). Al final de la duración establecida, las actualizaciones que estén en curso seguirán hasta su finalización. Las instancias que no comenzaron la actualización en la ventana comenzarán a actualizarse en la siguiente periodicidad.

Requisitos previos

una SQL Managed Instance habilitada por Azure Arc con la propiedad desiredVersion establecida en auto.

Limitaciones

La duración de la ventana de mantenimiento puede ir de 2 horas hasta 8 horas.

Solo se puede establecer una ventana de mantenimiento por controlador de datos.

Configuración de una ventana de mantenimiento

La ventana de mantenimiento tiene esta configuración:

  • Duración: el tiempo durante el que se ejecutará la ventana, expresado en horas y minutos (HH:mm).
  • Periodicidad: la frecuencia con la que se producirá la ventana. Todas las palabras distinguen entre mayúsculas y minúsculas y deben ir en mayúsculas. Puede establecer ventanas semanales o mensuales.
    • Semanal
      • [Semana | Semanal][día de la semana]
      • Ejemplos:
        • --recurrence "Week Thursday"
        • --recurrence "Weekly Saturday"
    • Mensual
      • [Mes | Mensual] [Primero | Segundo | Tercero | Cuarto | Último] [día de la semana]
      • Ejemplos:
        • --recurrence "Month Fourth Saturday"
        • --recurrence "Monthly Last Monday"
    • Si no se especifica la periodicidad, será una ventana de mantenimiento única.
  • Inicio: la fecha y hora en la que se producirá la primera ventana, con el formato YYYY-MM-DDThh:mm (formato de 24 horas).
    • Ejemplo:
      • --start "2022-02-01T23:00"
  • Zona horaria: la zona horaria asociada a la ventana de mantenimiento.

CLI

Para crear una ventana de mantenimiento, use el siguiente comando:

az arcdata dc update --maintenance-start <date and time> --maintenance-duration <time> --maintenance-recurrence <interval> --maintenance-time-zone <time zone> --k8s-namespace <namespace> --use-k8s

Ejemplo:

az arcdata dc update --maintenance-start "2022-01-01T23:00" --maintenance-duration 3:00 --maintenance-recurrence "Monthly First Saturday" --maintenance-time-zone US/Pacific --k8s-namespace arc --use-k8s

Supervisión de las actualizaciones

Durante la ventana de mantenimiento, puede ver el estado de las actualizaciones.

kubectl -n <namespace> get sqlmi -o yaml 

Los campos status.runningVersion y status.lastUpdateTime mostrarán la versión más reciente y cuándo cambió el estado.

Visualización de una ventana de mantenimiento existente

Puede ver la ventana de mantenimiento en la especificación datacontroller.

kubectl describe datacontroller -n <namespace>

Salida:

Spec:  
  Settings:
    Maintenance:
      Duration:    3:00
      Recurrence:  Monthly First Saturday
      Start:       2022-01-01T23:00
      Time Zone:   US/Pacific

Actualizaciones con errores

No hay reversión automática para las actualizaciones con errores. Si una instancia no se pudo actualizar automáticamente, se necesitará intervención manual para anclar la instancia a su versión en ejecución actual, mediante az sql mi-arc update. Una vez resuelto el problema, la versión se puede volver a establecer en "auto".

az sql mi-arc upgrade --name <instance name> --desired-version <version> 

Ejemplo:

az sql mi-arc upgrade --name sql01 --desired-version v1.2.0_2021-12-15

Deshabilitación de la ventana de mantenimiento

Cuando la ventana de mantenimiento está deshabilitada, no se ejecutarán las actualizaciones automáticas.

az arcdata dc update --maintenance-enabled false --k8s-namespace <namespace> --use-k8s

Ejemplo:

az arcdata dc update --maintenance-enabled false --k8s-namespace arc --use-k8s

Habilitación de la ventana de mantenimiento

Cuando se habilite la ventana de mantenimiento, se reanudarán las actualizaciones automáticas.

az arcdata dc update --maintenance-enabled true --k8s-namespace <namespace> --use-k8s

Ejemplo:

az arcdata dc update --maintenance-enabled true --k8s-namespace arc --use-k8s

Cambio de las opciones de la ventana de mantenimiento

El comando "update" se puede usar para cambiar cualquiera de las opciones. En este ejemplo, actualizaré la hora de inicio.

az arcdata dc update --maintenance-start <date and time> --k8s-namespace arc --use-k8s

Ejemplo:

az arcdata dc update --maintenance-start "2022-04-15T23:00" --k8s-namespace arc --use-k8s

Habilitación de las actualizaciones automáticas de una instancia de Azure SQL Managed Instance