Rehospedaje de una aplicación local de Linux en máquinas virtuales de Azure
En este artículo se muestra cómo la empresa ficticia Contoso rehospeda una aplicación basada en LAMP de dos niveles mediante máquinas virtuales de infraestructura como servicio (IaaS) de Azure.
La aplicación del departamento de servicios que se usa en este ejemplo, osTicket, se proporciona como software de código abierto. Si quiere utilizarla para sus propias pruebas, puede descargarla desde GitHub.
Impulsores del negocio
El equipo directivo de TI ha trabajado estrechamente con sus socios comerciales para comprender lo quieren lograr con esta migración:
- Abordar el crecimiento del negocio. Contoso está creciendo y, como resultado, sus sistemas locales e infraestructura están bajo presión.
- Limitar el riesgo. La aplicación de consola de servicio es fundamental para la actividad de Contoso. Contoso quiere moverla a Azure sin ningún riesgo.
- Extensión. Contoso no quiere cambiar la aplicación en este momento. Quiere asegurarse de que la aplicación es estable.
Objetivos de la migración
El equipo de la nube de Contoso ha definido los objetivos de esta migración con el fin de determinar el mejor método para llevarla a cabo:
- Tras la migración, la aplicación de Azure debe tener las mismas funcionalidades de rendimiento que las que tiene actualmente en el entorno de VMware local de la empresa. La aplicación seguirá siendo tan imprescindible en la nube como lo ha sido en el entorno local.
- Contoso no quiere invertir en esta aplicación. Es importante para la empresa, pero en su formato actual Contoso solo quiere trasladarla a la nube de forma segura.
- Contoso no quiere cambiar el modelo de operaciones de esta aplicación. Quiere interactuar con la aplicación en la nube de la misma manera que lo hace ahora.
- Contoso no quiere cambiar la funcionalidad de la aplicación. Solo cambiará su ubicación.
- Tras haber completado un par de migraciones de aplicaciones de Windows, Contoso desea aprender a usar una infraestructura basada en Linux en Azure.
Diseño de la solución
Después de precisar los objetivos y requisitos, Contoso diseña y revisa una solución de implementación e identifica el proceso de migración. También se identifican los servicios de Azure que usará Contoso para la migración.
Aplicación actual
- La aplicación osTicket se distribuye en niveles entre dos máquinas virtuales (
OSTICKETWEB
yOSTICKETMYSQL
). - Las máquinas virtuales se encuentran en el host de VMware ESXi
contosohost1.contoso.com
(versión 6.5). - El entorno de VMware se administra con vCenter Server 6.5 (
vcenter.contoso.com
) y se ejecuta en una máquina virtual. - Contoso tiene un centro de datos local (
contoso-datacenter
) con un controlador de dominio local (contosodc1
).
Arquitectura propuesta
- Dado que la aplicación es para una carga de trabajo de producción, las máquinas virtuales de Azure residirán en el grupo de recursos de producción
ContosoRG
. - Las máquinas virtuales se migrarán a la región principal (Este de EE. UU. 2) y se colocarán en la red de producción (
VNET-PROD-EUS2
):- La máquina virtual web residirá en la subred de front-end (
PROD-FE-EUS2
). - La máquina virtual de base de datos residirá en la subred de la base de datos (
PROD-DB-EUS2
).
- La máquina virtual web residirá en la subred de front-end (
- Las VM locales del centro de datos de Contoso se retirarán después de realizar la migración.
Revisión de la solución
Contoso evalúa el diseño propuesto y crea una lista de ventajas y desventajas.
Consideración | Detalles |
---|---|
Ventajas | Las dos máquinas virtuales de aplicaciones se moverán a Azure sin cambios, de forma que se simplifica la migración. Dado que Contoso usa un enfoque lift-and-shift para ambas máquinas virtuales de aplicaciones, no se necesitan herramientas de configuración ni de migración especiales para la base de datos de aplicación. Contoso conservará el control total de las máquinas virtuales de aplicaciones en Azure. Las máquinas virtuales de aplicación ejecutan Ubuntu 16.04-TLS, que es una distribución de Linux aprobada. Obtenga más información sobre Distribuciones de Linux aprobadas en Azure. |
Desventajas | Las capas de datos y web de la aplicación siguen teniendo un único punto de conmutación por error. Contoso deberá seguir utilizando la aplicación en máquinas virtuales de Azure en lugar de moverla a un servicio administrado, como Azure App Service y Azure Database for MySQL. Contoso sabe que al simplificar las cosas con una migración de máquina virtual mediante lift-and-shift, la empresa no está aprovechando al máximo las características proporcionadas por Azure Database for MySQL, entre las que se incluyen alta disponibilidad integrada, rendimiento predecible, escalado sencillo, copias de seguridad automáticas y seguridad integrada. |
Proceso de migración
Contoso completará el proceso de migración como se indica a continuación:
- Como primer paso, contoso prepara y configura componentes de Azure para Azure Migrate: Server Migration y prepara la infraestructura local de VMware.
- La empresa ya tiene la infraestructura de Azure implementada, por lo que solo tiene que configurar la replicación de las máquinas virtuales con la herramienta Azure Migrate: Herramienta de migración del servidor.
- Con todo preparado, Contoso puede comenzar a replicar las máquinas virtuales.
- Una vez que se haya habilitado la replicación y esta se encuentre en funcionamiento, Contoso migrará la máquina virtual, haciendo que conmute por error en Azure.
Servicios de Azure
Servicio | Descripción | Coste |
---|---|---|
Azure Migrate: Server Migration | El servicio orquesta y administra la migración de las aplicaciones y cargas de trabajo locales, así como las instancias de máquinas virtuales de Amazon Web Services (AWS) y Google Cloud Platform (GCP). | Durante la replicación en Azure, se incurre en gastos de Azure Storage. Las VM de Azure se crean, y generan gastos, cuando se produce la migración. Obtenga más información sobre tarifas y precios. |
Requisitos previos
Esto es lo que Contoso necesita para este escenario.
Requisitos | Detalles |
---|---|
Suscripción de Azure | En un artículo anterior de esta serie, Contoso creó suscripciones. Si no tiene una suscripción a Azure, cree una cuenta gratuita. Si crea una cuenta gratuita, será el administrador de su suscripción y podrá realizar todas las acciones. Si usa una suscripción existente y no es el administrador, solicite al administrador que le asigne permisos de propietario o colaborador. Si necesita permisos más específicos, consulte Administración del acceso a Site Recovery con el control de acceso basado en rol de Azure (RBAC de Azure). |
Infraestructura de Azure | Vea cómo Contoso configura una infraestructura de Azure. Más información sobre los requisitos previos específicos para Azure Migrate: Server Migration. |
Servidores locales | La versión de la instalación local de vCenter Server debe ser 5.5, 6.0 o 6.5. Un host ESXi que ejecute la versión 5.5, 6.0 o 6.5. Una o más máquinas virtuales VMware que se ejecuten en el host ESXi. |
Máquinas virtuales locales | Revise las distribuciones de Linux que se han aprobado para ejecutarse en Azure. |
Pasos del escenario
Así es como Azure realizará la migración:
- Paso 1: Preparación de Azure para Azure Migrate: Server Migration. Agregar la herramienta Azure Migrate: Server Migration al proyecto de Azure Migrate.
- Paso 2: Preparación del entorno de VMware local para Azure Migrate: Server Migration. Preparar las cuentas para la detección de máquinas virtuales y preparar la conexión a las máquinas virtuales de Azure tras la migración.
- Paso 3: Replicación de máquinas virtuales. Configurar la replicación y comenzar a replicar las máquinas virtuales en Azure Storage.
- Paso 4: Migración de las máquinas virtuales con Azure Migrate: Server Migration. Ejecutar una migración de prueba para garantizar que todo funciona y, luego, ejecutar una migración para mover las máquinas virtuales a Azure.
Paso 1: Preparación de Azure para Azure Migrate: Herramienta Server Migration
Estos son los componentes de Azure que Contoso necesita para migrar las VM a Azure:
- Una red virtual en la que se encontrarán las máquinas virtuales de Azure cuando se creen durante la migración.
- Azure Migrate: Server Migration aprovisionada.
Estos componentes se configuran como se muestra a continuación:
Configurar una red. Contoso ya configuró una red que se puede usar para Azure Migrate: Server Migration cuando la empresa implementó la infraestructura de Azure.
- La aplicación SmartHotel360 es una aplicación de producción. Las máquinas virtuales se migrarán a la red de producción de Azure (
VNET-PROD-EUS2
) en la región primaria (East US 2
). - Ambas máquinas virtuales se colocarán en el grupo de recursos
ContosoRG
, que se usa para los recursos de producción. - La máquina virtual de front-end de aplicaciones (
OSTICKETWEB
) se migrará a la subred de front-end (PROD-FE-EUS2
), en la red de producción. - La máquina virtual de base de datos de aplicaciones (
OSTICKETMYSQL
) se migrará a la subred de base de datos (PROD-DB-EUS2
), en la red de producción.
- La aplicación SmartHotel360 es una aplicación de producción. Las máquinas virtuales se migrarán a la red de producción de Azure (
Aprovisione la herramienta Azure Migrate:Server Migration: Herramienta de migración del servidor. Con la cuenta de almacenamiento y de red que tiene implementada, Contoso crea un almacén de Recovery Services (
ContosoMigrationVault
) y lo coloca en el grupo de recursosContosoFailoverRG
de la región primaria (East US 2
).
¿Necesita más ayuda?
Aprenda cómo configurar la herramienta Azure Migrate: Server Migration.
Paso 2: Preparación del entorno de VMware local para Azure Migrate: Server Migration
Después de la migración a Azure, Contoso quiere poder conectarse a las VM replicadas de Azure. Hay un par de cosas que los administradores de Contoso deben hacer:
- Para acceder a las máquinas virtuales de Azure a través de Internet, habilitan SSH en la máquina virtual Linux local antes de la migración. En el caso de Ubuntu, este paso se puede realizar mediante el siguiente comando:
sudo apt-get ssh install -y
. - Instale el agente Linux de Azure.
- Después de ejecutar la migración, pueden comprobar los diagnósticos de arranque para ver una captura de pantalla de la VM.
- Si esto no funciona, deberán comprobar que la máquina virtual está en ejecución y revisar estas sugerencias de solución de problemas.
¿Necesita más ayuda?
Más información sobre cómo preparar las máquinas virtuales para la migración.
Paso 3: Replicar máquinas virtuales locales
Para que los administradores de Contoso puedan ejecutar una migración a Azure, tienen que configurar y habilitar la replicación.
Una vez finalizada la detección, inicie la replicación de máquinas virtuales de VMware en Azure.
En el proyecto de Azure Migrate, vaya a Servidores>Azure Migrate: Server Migration y seleccione Replicar.
En Replicar>Configuración de origen>¿Las máquinas están virtualizadas? , seleccione Sí, con VMware vSphere.
En Dispositivo local, seleccione el nombre del dispositivo de Azure Migrate que configuró y, a continuación, seleccione Aceptar.
En Máquinas virtuales, seleccione las máquinas que desea replicar.
- Si ha ejecutado una evaluación para las máquinas virtuales, puede aplicar las recomendaciones de tamaño y tipo de disco (Premium/estándar) de máquina virtual que sugieren los resultados de dicha evaluación. En ¿Quiere importar la configuración de migración de evaluación de Azure Migrate? , seleccione la opción Sí.
- Si no ha ejecutado una evaluación o no desea usar la configuración de la evaluación, seleccione la opción No.
- Si ha decidido usar la evaluación, seleccione el grupo de máquinas virtuales y el nombre de la evaluación.
En Máquinas virtuales, busque las máquinas virtuales que necesite y seleccione todas las que desee migrar. Después, seleccione Next: Configuración de destino.
En Configuración de destino, seleccione la suscripción y la región de destino a la que migrará. Especifique el grupo de recursos en el que residirán las máquinas virtuales de Azure después de la migración. En Red virtual, seleccione la red virtual o la subred de Azure a la que se unirán las máquinas virtuales de Azure después de la migración.
En Ventaja híbrida de Azure:
- Seleccione No si no desea aplicar la Ventaja híbrida de Azure. Luego, seleccione Siguiente.
- Seleccione Sí si tiene equipos con Windows Server que están incluidos en suscripciones activas de Software Assurance o Windows Server y desea aplicar el beneficio a las máquinas que va a migrar. Luego, seleccione Siguiente.
En Proceso, revise el nombre de la máquina virtual, su tamaño, el tipo de disco del sistema operativo y el conjunto de disponibilidad. Las máquinas virtuales deben cumplir los requisitos de Azure.
- Tamaño de la VM: si usa las recomendaciones de la evaluación, la lista desplegable de tamaño de máquina virtual contendrá el tamaño recomendado. De lo contrario, Azure Migrate elige un tamaño en función de la coincidencia más cercana en la suscripción de Azure. También puede elegir un tamaño de manera manual en Tamaño de la máquina virtual de Azure.
- Disco del sistema operativo: especifique el disco del sistema operativo (arranque) de la máquina virtual. Este es el disco que tiene el cargador de arranque y el instalador del sistema operativo.
- conjunto de disponibilidad: si la máquina virtual debe estar incluida en un conjunto de disponibilidad de Azure después de la migración, especifique el conjunto. El conjunto debe estar en el grupo de recursos de destino que especifique para la migración.
En Discos, especifique si los discos de máquina virtual se deben replicar en Azure. Seleccione el tipo de disco (SSD/HDD estándar o SSD prémium) de Azure. Luego, seleccione Siguiente.
- Puede excluir discos de la replicación.
- Si excluye discos, no estarán presentes en la máquina virtual de Azure después de la migración.
En Revisar + iniciar replicación, revise la configuración. A continuación, seleccione Replicar para iniciar la replicación inicial de los servidores.
Nota:
Puede actualizar la configuración de replicación en cualquier momento antes de que esta comience; para ello, vaya a Administrar>Replicación de máquinas. Una vez iniciada la replicación, su configuración no se puede cambiar.
Paso 4: Migrar las VM
Los administradores de Contoso ejecutan una migración de prueba rápida y, a continuación, una migración para mover las máquinas virtuales.
Ejecutar una migración de prueba
En Objetivos de migración>Servidores>Azure Migrate: Server Migration, seleccione Probar servidores migrados.
Mantenga presionada o haga clic con el botón derecho en la máquina virtual que va a probar. Luego, seleccione Migración de prueba.
En Migración de prueba, seleccione la red virtual de Azure en la que se ubicará la máquina virtual de Azure después de la migración. Se recomienda usar una red virtual que no sea de producción.
Comienza el trabajo de Migración de prueba. Supervise el trabajo en las notificaciones del portal.
Una vez finalizada la migración, la máquina virtual de Azure migrada se puede ver en Máquinas virtuales en Azure Portal. El nombre de la máquina tiene el sufijo -Test.
Una vez finalizada la prueba, mantenga presionada o haga clic con el botón derecho en la máquina virtual de Azure, en Replicación de máquinas. A continuación, seleccione Limpiar la migración de prueba.
Migrar las VM
Ahora, los administradores de Contoso ejecutan una migración completa para completar el movimiento.
En el proyecto de Azure Migrate, vaya a Servidores>Azure Migrate: Server Migration y seleccione Replicando servidores.
En Replicación de máquinas, mantenga presionada o haga clic con el botón derecho en la máquina virtual y seleccione Migrar.
En Migrar>¿Quiere apagar las máquinas virtuales y realizar una migración planificada sin perder datos? , seleccione Sí>Aceptar.
- De forma predeterminada, Azure Migrate apaga la máquina virtual local y ejecuta una replicación a petición para sincronizar los cambios que se han producido en la máquina virtual desde la última replicación. Esta acción garantiza que no se pierdan datos.
- Si no desea apagar la VM, seleccione No.
Se inicia un trabajo de migración de la máquina virtual. Realice un seguimiento del trabajo en las notificaciones de Azure.
Una vez finalizado el trabajo, la máquina virtual puede ver y administrar desde la página Máquinas virtuales.
Conexión de la VM a la base de datos
Como último paso del proceso de migración, los administradores de Contoso actualizan la cadena de conexión de la aplicación para que apunte a la base de datos de la aplicación que se ejecuta en la máquina virtual OSTICKETMYSQL
.
Establezca una conexión SSH con la máquina virtual
OSTICKETWEB
mediante PuTTY u otro cliente SSH. La máquina virtual es privada, por lo que debe conectarse mediante la dirección IP privada.Asegúrese de que la máquina virtual
OSTICKETWEB
pueda comunicarse con la máquina virtualOSTICKETMYSQL
. Actualmente, la configuración está codificada de forma rígida con la dirección IP local172.16.0.43
.Antes de la actualización:
Después de la actualización:
Reinicie el servicio con systemctl restart apache2.
Por último, actualice los registros DNS de
OSTICKETWEB
yOSTICKETMYSQL
en uno de los controladores de dominio de Contoso.
¿Necesita más ayuda?
- Más información sobre cómo ejecutar una migración de prueba.
- Más información sobre cómo migrar máquinas virtuales a Azure.
Limpiar después de la migración
Al finalizar la migración, los niveles de la aplicación osTicket se ejecutan en las máquinas virtuales de Azure.
Ahora, Contoso debe hacer las siguientes tareas:
- Quitar las VM locales del inventario de vCenter.
- Quitar las VM locales de los trabajos de copia de seguridad locales.
- Actualizar la documentación interna para mostrar la nueva ubicación y las direcciones IP de
OSTICKETWEB
yOSTICKETMYSQL
. - Revisar todos los recursos que interactúan con las máquinas virtuales. Actualice la configuración o la documentación pertinentes para que reflejen la nueva configuración.
- Contoso usaba el servicio Azure Migrate con la VM de administración para evaluar las VM para la migración. Los administradores deben quitar la máquina virtual de migración y las máquinas virtuales web de VMware ESXi Server.
Revisión de la implementación
Con la aplicación en ejecución, Contoso debe proteger y poner plenamente en funcionamiento la nueva infraestructura.
Seguridad
El equipo de seguridad de Contoso revisa las máquinas virtuales OSTICKETWEB
y OSTICKETMYSQL
para determinar si existe algún problema de seguridad.
- El equipo revisa los grupos de seguridad de red de las máquinas virtuales para controlar el acceso. Los NSG se usan para garantizar que solo el tráfico permitido puede pasar a la aplicación.
- El equipo también se plantea proteger los datos de los discos de máquina virtual mediante Azure Disk Encryption y Azure Key Vault.
Para obtener más información, consulte Procedimientos de seguridad recomendados para cargas de trabajo de IaaS de Azure.
Continuidad empresarial y recuperación ante desastres
Para la continuidad empresarial y la recuperación ante desastres, Contoso realiza las siguientes acciones:
Mantener seguros los datos. Contoso hace una copia de seguridad de los datos de las máquinas virtuales mediante la copia de seguridad de máquina virtual de Azure.
Mantener las aplicaciones en funcionamiento. Contoso replica las máquinas virtuales de aplicaciones en Azure en una región secundaria mediante Site Recovery. Para más información, consulte Inicio rápido: Configuración de la recuperación ante desastres en una región secundaria de Azure de una máquina virtual de Azure.
Optimización de los costos y licencias
- Después de implementar los recursos, Contoso asigna etiquetas de Azure según lo definido durante la implementación de la infraestructura de Azure.
- Contoso no tiene problemas relacionados con las licencias con sus servidores de Ubuntu.
- Contoso usará Azure Cost Management + Billing para que la compañía permanezca dentro de los presupuestos establecidos por la dirección de TI.