Detención e inicio de una instancia: Azure SQL Managed Instance

Se aplica a: Azure SQL Managed Instance

En este artículo se describe cómo detener e iniciar una instancia para ahorrar en los costes de facturación al usar Azure SQL Managed Instance en el nivel de servicio de uso general. Puede detener e iniciar su instancia utilizando el Azure Portal, Azure PowerShell, CLI de Azure o la API de REST.

Nota:

La característica stop (detener) y start (iniciar) controla la facturación y no debe usarse para reiniciar la instancia como un paso de solución de problemas.

Información general

Para ahorrar en costos de facturación, puede detener la instancia administrada de uso general cuando no la esté usando. Detener una instancia es similar a cancelar la asignación de una máquina virtual. Cuando una instancia está en detenida, no se cobrarán los costos de proceso y licencias. En cambio, se siguen cobrando los datos y el almacenamiento de copia de seguridad.

Al detener una instancia administrada se borran todos los datos almacenados en caché.

Esta característica presenta tres nuevos estados de instancia administrada, como indica el siguiente diagrama:




- Deteniéndose
Stopped
- Iniciándose

Diagrama que muestra los distintos estados de una implementación de SQL Managed Instance.

Normalmente la operación de detención tarda unos 5 minutos en detener la instancia después de iniciarse. Sin embargo, el inicio de una instancia tarda unos 20 minutos desde el momento en que comienza la operación de inicio. Solo se pueden detener las instancias administradas en estado listo. Después de detenerse la instancia, permanece en estado detenido hasta que comienza la operación de inicio, ya sea de manera manual o con una programación definida. Solo se pueden iniciar las instancias que se encuentran en estado detenido.

Al crear una instancia administrada, inicie una instancia administrada detenida o cambie el tamaño de una instancia administrada (por ejemplo, cambiar el nivel de servicio, el almacenamiento, la generación de hardware o el número de núcleos virtuales), Azure asigna recursos de proceso al clúster virtual subyacente. Aunque hay una inversión continua en infraestructura adicional para admitir la demanda de los clientes, puede haber errores ocasionales de asignación de recursos a partir de un crecimiento sin precedentes de la demanda de servicios de Azure en regiones específicas. Esto podría dar lugar a una duración prolongada de la operación (aproximadamente 4 horas si se trata de la creación de un nuevo clúster virtual, de acuerdo con las duraciones de las operaciones de administración), o a un fallo en el arranque de la instancia, en cuyo caso deberá volver a intentarlo más tarde.

Importante

Como una plataforma como servicio (PaaS), SQL Managed Instance es responsable del cumplimiento de todos los componentes del sistema. Si hay una necesidad urgente de mantenimiento del sistema que requiera que la instancia esté en línea, Azure puede comenzar la operación de inicio y mantener la instancia en línea hasta que se complete la operación de mantenimiento, momento en el que Azure detiene la instancia. Los cargos de proceso y licencia se aplican durante todo el tiempo que la instancia está en estado en línea.

Tipos de acción

Hay dos maneras de detener e iniciar una instancia: de forma manual a petición o creando una programación.

Comandos manuales

Puede usar comandos manuales para desencadenar inmediatamente una acción de detención e inicio. Los comandos manuales son buenos para instancias que tienen períodos de inactividad más largos sin patrones regulares o con fines de prueba. Alternativamente, también puede usar programaciones de Azure Automation o cualquier otra solución personalizada que cree programaciones personalizadas y más flexibles que no se pueden lograr mediante el programador de detención e inicio integrado en SQL Managed Instance.

Comandos programados

También puede crear una programación con uno o varios puntos de tiempo cuando se desencadene una acción de detención o inicio. Los comandos programados son buenos para instancias que tienen patrones normales, como iniciar una instancia cada día de la semana a las 8 a. m., detenerla a las 5 p. m. y, a continuación, iniciarla los días de fin de semana a las 7 a. m. y detenerla a las 11 p. m. La programación de los comandos elimina la necesidad de crear soluciones personalizadas o Azure Automation para crear programaciones de detención e inicio.

Los elementos programados representan puntos en el tiempo cuando se inician eventos de detención e inicio, no cuando la instancia está en funcionamiento. Al crear una programación, tenga en cuenta la duración de la operación. Por ejemplo, si desea que la instancia esté en funcionamiento a las 8 a. m., puede definir una programación que inicie la operación de inicio a las 7:40 a. m.

Tenga en cuenta las siguientes reglas para una programación de detención e inicio:

  • Los elementos programados se definen como un par deteción/inicio y deben tener los valores de detención e inicio rellenados. No es posible tener un valor de detención rellenado sin que lo esté el valor de inicio y viceversa.
  • No puede haber una superposición de pares programados. Si hay una superposición de horas programadas, la API devuelve un error.
  • El intervalo de tiempo entre dos acciones sucesivas (es decir, un inicio después de una detención o una detención después de un inicio) debe ser de al menos una hora. Por ejemplo, si un inicio está programado para las 10 a. m., la acción de detención no se puede programar antes de las 11 a. m.
  • Si hay operaciones en conflicto cuando se desencadena una detención (por ejemplo, que el escalado de núcleos virtuales esté en curso), el mecanismo vuelve a intentarlo pasados 10 minutos. Si después de 10 minutos la operación en conflicto sigue activa, se omite la operación de detención.

Facturación

Las instancias detenidas no se facturan por núcleos virtuales y la licencia de SQL, solo se cobran por el almacenamiento de datos y copias de seguridad. Sin embargo, los núcleos virtuales y la facturación de licencias se cobran por cada hora de inicio. Por ejemplo, a las 12:01, se le cobrará la hora completa, incluso si la instancia se detiene dentro de la hora.

Ventaja híbrida de Azure

La Ventaja híbrida de Azure (AHB) se aplica por recurso. Si la instancia usa la Ventaja híbrida de Azure para ahorrar en los costos de licencia, para aplicar esa ventaja a otro recurso cuando la instancia se encuentra en un estado detenido, primero debe deshabilitar la AHB en la instancia y, a continuación, detener la instancia. De forma similar, después de reiniciar la instancia, tendrá que volver a habilitar la AHB en ella para aplicar la ventaja de licencia.

Precios de instancias reservadas

Los precios de instancias reservadas (capacidad reservada) se aplican a las horas y a los núcleos virtuales emitidos. Cuando se detiene una instancia que es apta para los precios reservados, estos se redirigen automáticamente a otra instancia, si existe. Puede usar la característica de detención e inicio para realizar un exceso de aprovisionamiento de los precios de las instancias reservadas.

Por ejemplo, supongamos que ha adquirido una instancia administrada con una capacidad reservada de 16 núcleos virtuales. Puede ejecutar dos instancias con 8 núcleos virtuales cada una de 1 p. m. a 2 p. m., detener ambas instancias y, a continuación, ejecutar dos instancias diferentes con 8 núcleos virtuales cada una de 2 p. m. a 3 p. m. Este enfoque consumiría el límite de 16 núcleos virtuales para cada hora, distribuidos entre cuatro instancias en total.

Los descuentos de reserva se ofrecen sobre la base de "usarlo o perderlo". Es decir, si no tiene recursos coincidentes durante una hora especificada, la cantidad de reserva de esa hora se pierde. Las horas reservadas no utilizadas no se pueden transferir.

Limitaciones de la característica de detención e inicio

Tenga en cuenta las limitaciones siguientes:

  • Detener e iniciar una instancia solo es posible actualmente para las instancias del nivel de servicio De uso general.
  • No se pueden detener instancias que:
  • Aunque una instancia administrada esté en estado detenido, no es posible cambiar sus propiedades de configuración. Para cambiar las propiedades, debe iniciar la instancia.
  • Aunque la instancia esté en un estado detenido, no es posible realizar copias de seguridad. Por ejemplo, supongamos que tiene configuradas copias de seguridad a largo plazo, con copias de seguridad anuales implementadas. Si detiene la instancia durante el período de copia de seguridad anual definido, se omitirá la copia de seguridad. Se recomienda mantener la instancia en funcionamiento durante el período de copia de seguridad anual.
  • No es posible cancelar la operación de detención o inicio después de que se haya iniciado.
  • Si hay un examen de evaluación de vulnerabilidades programado para SQL Managed Instance y se detiene la instancia, la operación de examen se seguirá iniciando y se producirá un error en la ejecución del examen.
  • Las notificaciones de mantenimiento no se activarán para instancias que estén en estado detenido. Esto da como resultado:
    • Secuencia incompleta de notificaciones (por ejemplo, no se envía una notificación avanzada, se envía la notificación en curso).
    • SQL Managed Instance no aparece en la lista de recursos afectados en el contenido de la notificación.
  • Los registros de errores que están disponibles en SQL Managed Instance no se conservan y se borran automáticamente en la detención de la instancia.

Requisitos previos

Para usar la característica de detención e inicio de la instancia, la instancia debe encontrarse en el nivel de servicio De uso general.

Las instancias que no cumplen los requisitos previos tienen los controles de detención e inicio deshabilitados en la página Información general del recurso de instancia administrada da SQL en el portal de Azure. Al mantener el puntero sobre el control se explica por qué la instancia no puede usar la característica.

Preparar el entorno de la línea de comandos

Omita este paso si usa Azure Portal.

Si desea detener o iniciar una instancia mediante PowerShell o la CLI de Azure, debe preparar el entorno mediante la configuración de herramientas de línea de comandos y la definición de los parámetros.

Como alternativa, para configurar las herramientas de línea de comandos, también puede usar Azure Cloud Shell, que es un shell interactivo gratuito que puede usar para ejecutar los pasos de este artículo. Tiene las herramientas comunes de Azure preinstaladas y configuradas para usarlas en la cuenta. Si no tiene una suscripción a Azure, cree una cuenta gratuita de Azure antes de empezar.

Para abrir Cloud Shell, seleccione Pruébelo en la esquina superior derecha de un bloque de código. También puede ir a https://shell.azure.com para iniciar Cloud Shell en una pestaña independiente del explorador.

Para detener e iniciar la instancia con PowerShell, puede instalar Azure PowerShell o usar Azure Cloud Shell.

Cuando se abra Cloud Shell, compruebe que PowerShell está seleccionado para el entorno. En las sesiones siguientes se usa la CLI de Azure en un entorno de PowerShell. Seleccione Copiar para copiar los bloques de código, péguelos en Cloud Shell y, luego, presione Entrar para ejecutarlos.

Una vez iniciado PowerShell o Cloud Shell, defina los parámetros:

$SubscriptionId = "<Subscription-ID>"
$SqlMIName = "<SQL-MI-name>"
$RgName = "<SQL-MI-resource-group>"

# Login-AzAccount
Select-AzSubscription -SubscriptionName $SubscriptionID

Detención de la instancia administrada

Puede detener la instancia mediante:

  • Azure Portal
  • PowerShell
  • La CLI de Azure
  • Invocación de la llamada a la API de REST a través de cualquier herramienta

Para detener la instancia administrada mediante Azure Portal, vaya a la página Información general de la instancia y seleccione el botón Detener.

Captura de pantalla de la página

Si la instancia ya está detenida, el botón Detener no está disponible.

Inicio de la instancia administrada

Puede iniciar la instancia mediante:

  • Azure Portal
  • PowerShell
  • La CLI de Azure
  • Invocación de la llamada a la API de REST a través de cualquier herramienta

Después de detener la instancia administrada, para iniciarla mediante Azure Portal, vaya a la página Información general de la instancia y seleccione el botón Iniciar.

Captura de pantalla de la página

Si la instancia ya está iniciada, el botón Iniciar no está disponible.

Administrar una programación de inicio y detención

Puede administrar una programación de detención e inicio mediante:

  • Azure Portal
  • PowerShell
  • La CLI de Azure
  • Invocación de la llamada a la API de REST a través de cualquier herramienta

Para administrar una programación de detención e inicio mediante Azure Portal, vaya a la instancia y, a continuación, seleccione Programación de inicio o detención en el menú de recursos.

Captura de pantalla de la página

En la página Programación de inicio o detención puede hacer lo siguiente:

  • Ver programaciones existentes.
  • Especificar la zona horaria de los eventos programados en la lista desplegable Zona horaria.
  • Crear una nueva programación seleccionando Crear un elemento de programación.
  • Modificar una programación existente seleccionando icono del lápiz.
  • Eliminar una programación existente seleccionando el icono de la papelera.

Nota:

Actualmente, el registro de actividad solo captura las operaciones iniciadas a través de Azure Resource Manager (ARM). No se realiza un seguimiento de las operaciones de inicio y detención programadas en el registro de actividad. Por lo tanto, en este momento, no es posible ver el historial de las operaciones de inicio y detención programadas a través del registro de actividad en Azure Portal ni a través de cualquier supervisión basada en dichos registros.

Pasos siguientes