Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Este artículo forma parte de una serie sobre cómo migrar una carga de trabajo de Amazon Web Services (AWS) a Azure.
La fase de preparación consta de estos pasos:
- Prepare el entorno.
- Prepare la aplicación.
El objetivo de esta fase es preparar la carga de trabajo existente para la migración. Implemente la mayor parte de la infraestructura de carga de trabajo y el código en Azure como sea posible antes de iniciar la migración. La preparación adecuada reduce la cantidad de esfuerzo invertido durante la migración y ofrece amplias oportunidades de prueba.
Durante esta fase, compilará el entorno de Azure, refactorizará cualquier código si es necesario, configurará las herramientas y canalizaciones de entrega continua (CI/CD) y hará pruebas para crear confianza en el enfoque de migración.
Importante
Dedique su tiempo durante esta fase. Cualquier infraestructura mal configurada, pruebas insuficientes o la preparación del equipo puede provocar retrasos, vulnerabilidades de seguridad o implementaciones con errores durante la migración.
Preparación del entorno
Aprovisione zonas de aterrizaje de aplicaciones. Asigne el diseño de la carga de trabajo de Azure al equipo de la plataforma de Azure para que puedan aprovisionar las zonas de aterrizaje de la aplicación de Azure para los entornos de carga de trabajo de preproducción y producción.
Configurar herramientas de migración. Si tiene previsto usar Azure Migrate para la fase de ejecución, implemente el dispositivo de Azure Migrate y configure el proyecto de Azure Migrate. Este enfoque garantiza que todos los recursos de Azure de destino y los procesos de detección estén listos antes de realizar la migración.
Implemente y configure la infraestructura de Azure. Use la infraestructura como código (IaC) para implementar los recursos. Este enfoque garantiza la coherencia y la repetibilidad. Si los equipos quieren seguir usando Terraform para escribir scripts de implementación, deben escribir nuevos scripts y módulos para los recursos de Azure. Si los scripts de implementación existentes usan AWS CloudFormation, use Bicep para realizar la implementación en Azure. Céntrese primero en entornos de no producción y valide todo antes de pasar a entornos de producción.
Actualice las canalizaciones de CI/CD para que Azure mantenga los entornos alineados.
Modifique las canalizaciones de implementación para dirigirse a los servicios de Azure.
Configure las conexiones de servicio y asegúrese de que los flujos de trabajo de compilación y versión pueden implementar los recursos de proceso de Azure seleccionados, como Azure App Service, Azure Kubernetes Service (AKS) o Azure Virtual Machines.
Si usa un enfoque azul-verde, asegúrese de que puede implementar la carga de trabajo en AWS y Azure durante la transición. Por ejemplo, puede que necesite aplicar una corrección urgente o dar soporte a una reversión.
Pruebe la infraestructura. Valide la red de Azure Virtual WAN o del centro y cualquier otro servicio fundamental, como AWS Direct Connect y Azure ExpressRoute o conexiones de red privada virtual (VPN). Asegúrese de que el sistema soporte la carga de trabajo objetivo y el proceso de migración. Valide la conectividad de un extremo a otro en los entornos de Azure y AWS. Use Azure Chaos Studio para simular posibles errores, como máquinas virtuales o interrupciones de red. Asegúrese de que la carga de trabajo migrada sigue siendo resistente en estas circunstancias.
Pruebe las redes y la seguridad. Al configurar grupos de seguridad de red (NSG), firewalls y directivas, compruebe que la aplicación puede comunicarse con todos los servicios necesarios. Realice pruebas de conectividad para asegurarse de que la configuración de seguridad no sea demasiado restrictiva o demasiado permisiva. Ajuste la configuración según sea necesario para mantener la seguridad y la funcionalidad.
Confirme que todos los puertos necesarios están abiertos entre entornos de Azure y AWS.
Valide las reglas de firewall y las configuraciones del grupo de seguridad de red (NSG) o del grupo de seguridad de aplicaciones (ASG).
Documente las excepciones de seguridad temporales necesarias durante la migración.
Asegúrese de que los planes de reversión tengan en cuenta los cambios relacionados con la seguridad.
Preparación de la aplicación
Quite las partes obsoletas de la carga de trabajo. Si la carga de trabajo de AWS tiene características, infraestructura o procesos operativos que no usa, quítelos de la carga de trabajo. Este paso puede reducir la superficie expuesta de la migración y estrechar la infraestructura y las pruebas.
Minimice los cambios en las cargas de trabajo de producción en AWS. A medida que se aproxima a la migración, minimice los cambios en la carga de trabajo. Evite cambios que introducen nuevas infraestructuras, funcionalidades o dependencias que podrían poner en riesgo la migración.
Refactorice el código de la aplicación. Use marcas de características para simplificar la administración de características y configuraciones entre los entornos de AWS y Azure.
Reemplace las bibliotecas y SDK específicos de AWS. Muchas aplicaciones se basan en bibliotecas o SDK nativos de AWS para almacenamiento, mensajería o autenticación. Normalmente, estas bibliotecas y SDK no son compatibles con los servicios de Azure. Durante la refactorización, identifique y reemplace bibliotecas específicas de AWS por equivalentes de Azure o alternativas independientes de la plataforma. Este paso le ayuda a evitar errores en tiempo de ejecución y garantiza que la aplicación se integre con los servicios de Azure.
Sugerencia
Herramientas como GitHub Copilot pueden ayudar a los desarrolladores a identificar y refactorizar código específico de AWS, como llamadas de SDK o integraciones de servicios, a equivalentes compatibles con Azure. Use Copilot para acelerar la transición y reducir el esfuerzo manual.
Coordinar los cambios de configuración del cliente. Asegúrese de implementar y validar todos los cambios de configuración orientados al cliente. Proporcione entornos de preproducción para que los equipos cliente prueben las actualizaciones de puntos de conexión, autenticación y conectividad.
Prepare las funciones operativas. Trabaje con el equipo de operaciones para implementar la supervisión de cargas de trabajo en Azure. Configure Azure Monitor o Application Insights con paneles y reglas de alerta equivalentes a las alarmas de AWS CloudWatch. Entrene al equipo de operaciones en estas herramientas. Colabore con el equipo de seguridad para implementar la supervisión de la seguridad y validar la arquitectura de Azure. Valide que puede realizar tareas operativas de rutina, no planeadas y de emergencia de la carga de trabajo en Azure.
Para más información sobre cómo preparar las cargas de trabajo y compilar el entorno de Azure, consulte Preparación de cargas de trabajo para la nube.
Checklist
| Tareas entregables | |
|---|---|
| ☐ | Aprovisionamiento de zonas de aterrizaje de aplicaciones |
| ☐ | Implementación y configuración de la infraestructura de Azure |
| ☐ | Actualiza las canalizaciones de CI/CD para Azure |
| ☐ | Infraestructura de prueba |
| ☐ | Prueba de las redes y la seguridad |
| ☐ | Eliminación de partes obsoletas de la carga de trabajo |
| ☐ | Minimizar los cambios en la carga de trabajo de producción en AWS |
| ☐ | Refactorización del código de la aplicación |
| ☐ | Reemplazar bibliotecas y SDK específicos de AWS |
| ☐ | Coordinar los cambios de configuración del cliente |
| ☐ | Preparación de funciones operativas |