Revisión de estrategias y herramientas de migración

Completado

En el contexto de la migración de SQL Server, es esencial una planificación cuidadosa para garantizar una migración correcta. Esta planificación implica abordar tanto el cómo como el por qué de la migración.

Representación visual del proceso de migración de SQL Server en la que se enfatiza la comprensión de las ventajas, el uso de las herramientas y el equilibrio del tiempo de inactividad para que la migración se realice correctamente.

  1. Comprender el por qué implica reconocer las ventajas una vez completada la migración.
  2. El cómo abarca la selección de las herramientas de migración adecuadas y el desarrollo de un plan de migración completo.
  3. Un paso crítico de este proceso es evaluar la cantidad de tiempo de inactividad que la organización está dispuesta a tolerar. Minimizar el tiempo de inactividad durante el proceso de migración es fundamental para mantener la eficiencia y la continuidad operativas.

En este proyecto de migración, su equipo inició el proceso con una reunión de puesta en marcha. Su rol consiste en explorar las herramientas para migrar algunos servidores de SQL Server y proporcionar información sobre el posible efecto en los costos futuros de licencias de SQL. Además, debe llegar a un acuerdo sobre el nivel aceptable de tiempo de inactividad. El jefe de proyecto también quiere incorporar una fase de prueba, durante la cual se migran algunos servidores para realizar pruebas antes de ejecutar la migración completa.

Descripción de las ventajas de la migración

Probablemente trabaje con máquinas virtuales en su propia infraestructura con Hyper-V o con máquinas virtuales de otros proveedores. Como resultado, la migración a esta plataforma no debería suponer una curva de aprendizaje pronunciada para usted.

El uso de una máquina virtual (VM) le permite tener el control administrativo completo sobre el sistema operativo host y la instancia de SQL Server. Puede configurar y administrar la alta disponibilidad, la recuperación ante desastres y la aplicación de revisiones para SQL Server más fácilmente que en sus máquinas locales. También puede configurar copias de seguridad y actualizaciones automáticas para aliviar su carga administrativa general. La ejecución de SQL Server en una máquina virtual de Azure es totalmente compatible con estos componentes de SQL Server:

  • Replicación transaccional de SQL Server
  • Grupos de disponibilidad AlwaysOn
  • Integration Services
  • Analysis Services
  • Reporting Services
  • Trasvase de registros

SQL Server está optimizado para migrar aplicaciones de SQL Server existentes a máquinas virtuales de Azure, con un máximo de 256 TB de almacenamiento admitido. Todas las versiones y ediciones de SQL Server están disponibles y ofrecen una compatibilidad del 100 % con las versiones locales de SQL Server.

Licencias

Hay tres tipos de modelos de licencia que se pueden usar para las máquinas virtuales de SQL Server hospedadas en Azure. Evalúe cuál es el más adecuado para su escenario de migración.

  • El modelo Pago por uso (PAYG) significa que el costo por segundo de ejecutar la VM de Azure incluye el costo de la licencia de SQL Server.

  • El modelo Traiga su propia licencia (BYOL), también conocido como Ventaja híbrida de Azure (AHB), permite usar su licencia propia de SQL Server con una VM en la que se ejecuta SQL Server y solo paga por la utilización de la VM. Esta opción solo está disponible para los clientes con un Contrato Enterprise.

  • El modelo Licencia de alta disponibilidad o recuperación ante desastres (HA o DR) se usa para la réplica gratuita de HA o DR en Azure. Si tiene Software Assurance, puede implementar planes de recuperación ante desastres híbridos con SQL Server sin incurrir en costos de licencias adicionales para la instancia de recuperación ante desastres pasiva.

Sugerencia

Para obtener información sobre cómo cambiar el modelo de licencia de una máquina virtual de SQL en Azure, consulte Cambio del modelo de licencia de una máquina virtual de SQL en Azure.

Redes

Si aprovisiona una VM con SQL Server en Azure Portal, tiene la opción de especificar el tipo de conectividad SQL, que incluye:

  • Pública: conexión a SQL Server a través de Internet.
  • Privada: conexión a SQL Server en la misma red virtual.
  • Local: conexión a una instancia local de SQL Server en la misma máquina virtual.

Si desea conectarse a su motor de base de datos de SQL Server desde Internet, seleccione Pública. El portal realiza automáticamente los siguientes pasos:

  • Habilita el protocolo TCP/IP para SQL Server.
  • Configura una regla de firewall para abrir el puerto TCP de SQL Server (predeterminado: 1433).
  • Habilita la autenticación de SQL Server, que es necesaria para el acceso público.
  • Configura el grupo de seguridad de red en la máquina virtual para todo el tráfico TCP del puerto de SQL Server.

Al elegir Privada para el tipo de conectividad SQL en el portal, Azure configura la mayoría de los valores para que sean idénticos a los de Público. La única diferencia es que no hay ninguna regla de grupo de seguridad de red para permitir el tráfico externo en el puerto de SQL Server (el 1433 es el predeterminado). Puede cambiar la configuración de conectividad de la máquina virtual de SQL Server en Azure Portal.

Administración de claves

SQL Server proporciona características de cifrado que requieren la administración y el almacenamiento de las claves criptográficas. El servicio Azure Key Vault (AKV) está diseñado para mejorar la seguridad y la administración de estas claves en una ubicación segura y con gran disponibilidad. El Conector de SQL Server permite que SQL Server use estas claves desde Azure Key Vault.

Puede ahorrar tiempo mediante la característica de integración de AKV. Cuando esta característica está habilitada, instala automáticamente el Conector de SQL Server. Después, la característica configura el proveedor de Administración extensible de claves (EKM) para acceder a AKV y crea las credenciales para que pueda acceder al almacén.

Ajuste del tamaño de la máquina virtual

Para empezar, puede elegir una imagen de máquina virtual de SQL Server con la versión, la edición y el sistema operativo requeridos. Además, puede configurar el número de CPU y la memoria para el tamaño adecuado para las cargas de trabajo.

Muchas de las opciones de optimización del rendimiento de las bases de datos que se usan para garantizar SQL Server funciona bien para las cargas de trabajo locales todavía se aplican a las instancias de SQL Server que se ejecutan en una máquina virtual de Azure. Hay otras consideraciones que debe tener en cuenta para incluir el tamaño de la VM y la configuración de los discos. Use la siguiente lista de comprobación como guía para asegurarse de que tiene el rendimiento óptimo configurado para una instancia de SQL Server que se ejecuta en una máquina virtual de Azure.

Métrica de rendimiento Opción de optimización
Máquina virtual
  • El tamaño mínimo de la máquina virtual que se debe seleccionar para las ediciones Enterprise de SQL Server es DS3_v2 o superior
  • Para la edición Standard o Web, use DS2_v2 como tamaño mínimo
Storage
  • Se recomienda usar SSD prémium para las cargas de trabajo de producción
  • Almacenamiento estándar para entornos de desarrollo y pruebas
  • Asegúrese de que el almacenamiento se encuentre en la misma ubicación que la máquina virtual
Discos
  • Use un mínimo de 2 discos P30 (1 para archivos de registro y 1 para archivos de datos, incluido TempDB)
  • Para cargas de trabajo que requieran aproximadamente 50 000 IOPS, considere la posibilidad de usar un disco SSD Ultra
  • Evite el uso del sistema operativo o de discos temporales para el registro o almacenamiento de bases de datos
  • Habilite el almacenamiento en caché de lectura en los discos que hospedan los archivos de datos y archivos de datos de TempDB
  • No habilite el almacenamiento en caché en los discos que hospedan el archivo de registro
  • Seccione varios discos de datos de Azure para obtener un mayor rendimiento de E/S
  • Formatee con tamaños de asignación documentados
  • Coloque TempDB en el disco SSD local para cargas de trabajo de SQL Server críticas (después de elegir el tamaño de máquina virtual correcto)
E/S
  • Habilite la compresión de páginas de bases de datos.
  • Habilite la inicialización instantánea de archivos para archivos de datos
  • Limite el crecimiento automático de la base de datos
  • Deshabilite la reducción automática de la base de datos
  • Mueva todas las bases de datos a discos de datos, incluidas bases de datos del sistema
  • Mueva los directorios de archivos de seguimiento y registros de errores de SQL Server a discos de datos
  • Configure ubicaciones predeterminadas para los archivos de base de datos y de copia de seguridad
  • Habilite páginas bloqueadas
  • Aplique correcciones de rendimiento de SQL Server

Puede haber una configuración de rendimiento concreta que desee aplicar que sea específica de la carga de trabajo. Asegúrese de que la configuración se prueba en un entorno de prueba antes de la migración.

Herramientas y características para admitir la migración

Hay varias formas distintas de migrar las instancias de SQL Server a una máquina virtual de Azure. El primer paso del proceso es aprovisionar una VM de Azure que tenga SQL Server instalado.

Para obtener el mejor rendimiento de transferencia de datos, migre los archivos de base de datos a la VM de Azure mediante un archivo de copia de seguridad comprimido.

Para minimizar el tiempo de inactividad durante el proceso de migración de la base de datos, use la opción Always On o la opción de replicación transaccional. Si no es posible usar ninguno de los métodos anteriores, puede migrar la base de datos manualmente.

Estas son las principales herramientas y características para admitir y migrar las bases de datos de SQL Server a instancias de SQL Server que se ejecutan en una máquina virtual de Azure.

  • La extensión de migración de Azure SQL para Azure Data Studio: la extensión de migración de Azure SQL se basa en la versión más reciente de Azure Database Migration Service y ayuda a valorar la preparación para la migración, proporcionar las recomendaciones de SKU adecuadas para los recursos de Azure y facilitar la migración de la base de datos de SQL Server a Azure, y es ideal para bases de datos pequeñas y medianas. Cuenta con la tecnología de la versión más reciente de Data Migration Service y también proporciona una característica de valoración avanzada que evalúa las bases de datos de SQL Server que están listas para la migración a Azure SQL.

  • Copia de seguridad y restauración con Azure Blob Storage: puede restaurar una base de datos de Azure Blob Storage en la instancia de SQL Server que se ejecuta en una máquina virtual de Azure.

  • Desasociar y asociar desde una URL: puede desasociar la base de datos y los archivos de registro y transferirlos a una cuenta de Azure Storage. A continuación, asocie la base de datos desde la dirección URL del blob a la máquina virtual de Azure.

  • Trasvase de registros: el trasvase de registros es un método para migrar una base de datos de SQL Server a una VM de Azure. Implica sincronizar continuamente una copia secundaria de la base de datos en el servidor de destino mediante copias de seguridad del registro de transacciones desde el servidor de origen. Cuando tenga todo listo, la copia de seguridad de registros final se aplica a la VM de Azure, lo que permite una migración sin problemas con un tiempo de inactividad mínimo.

  • Azure Migrate: Azure Migrate es un servicio de migración completo que admite una amplia gama de escenarios de migración, incluida la migración de SQL Server. Azure Migrate proporciona un conjunto de herramientas diseñadas para la valoración y migración de servidores locales, infraestructura, aplicaciones y datos a gran escala, con el fin de migrarlos a Azure.

  • Asistente para experimentación con bases de datos (DEA): use el asistente para evaluar si el servidor de destino puede controlar la carga de trabajo si tiene dudas sobre el rendimiento. Puede usar las métricas de análisis para proporcionar datos comparativos que le permitan decidir si la versión de destino proporcionará una mejor experiencia después de la migración.

  • Data Migration Assistant (DMA): use esta herramienta para migrar el esquema de base de datos, los datos, los usuarios, los roles del servidor y los inicios de sesión de SQL Server y Windows desde una instancia de SQL Server local a una instancia de SQL Server en una máquina virtual de Azure. La herramienta ejecuta primero una evaluación que le pedirá que solucione los problemas de compatibilidad. Después, puede usar la misma herramienta para migrar los datos y el esquema de la base de datos evaluados a Azure.

Nota:

Aunque Database Migration Assistant es una herramienta útil que está disponible, se recomienda usar Azure Database Migration Service para migraciones de gran tamaño y una experiencia general mejorada.

Sugerencia

Para obtener información sobre cómo evaluar instancias de SQL Server locales para migrar a Azure SQL y cómo detectar nuevas características en la plataforma de SQL Server de destino de las que la base de datos pueda beneficiarse después de una actualización, consulte el módulo Valoración de las bases de datos de SQL Server para la migración a Azure SQL.

Definición del enfoque de migración

Es importante tener en cuenta los requisitos de tiempo de inactividad de negocio asociados con la migración, tanto si va a migrar a SQL Server en una máquina virtual o a una instancia de Azure SQL Database.

El método elegido para migrar la base de datos suele depender de la cantidad de tiempo que las bases de datos de SQL Server pueden estar sin conexión. Otro factor de decisión podría ser la cantidad del proceso que le gustaría automatizar, en lugar de realizar la migración manualmente. Hay tres tipos de migraciones según el tiempo de inactividad:

  • Migración con tiempo de inactividad cero
  • Migración con una ventana de mantenimiento pequeña
  • Migración con una ventana de mantenimiento grande

Migración con tiempo de inactividad cero

Normalmente, las cargas de trabajo críticas requieren migración sin tiempo de inactividad. Puede usar Grupos de disponibilidad Always On para replicar datos de una base de datos de SQL Server en SQL Server en una máquina virtual de Azure.

Migración con una ventana de mantenimiento pequeña

Las ventanas de mantenimiento pequeñas suelen medirse en minutos. Use Azure Database Migration Service para replicar y migrar datos de una base de datos de SQL Server local a una instancia de SQL Server que se ejecuta en una máquina virtual de Azure.

Nota:

Para migrar una aplicación completa, considere el uso de Azure Site Recovery.

Migración con una ventana de mantenimiento grande

Las ventanas de mantenimiento grandes suelen medirse en horas o días y son adecuadas para las bases de datos de aplicación que cambian con poca frecuencia, o donde la carga de trabajo no es crítica para el negocio. Tiene varias opciones para usar archivos de exportación e importación BACPAC de SQL Server Management Studio: usar un enfoque de copia de seguridad y restauración o desasociar y volver a asociar la base de datos.