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.
En este artículo se describen las tareas predefinidas disponibles para desarrolladores de Java para la modernización de aplicaciones de GitHub Copilot.
Las tareas predefinidas capturan los procedimientos recomendados del sector para usar los servicios de Azure. Actualmente, la modernización de aplicaciones copilot de GitHub ofrece tareas predefinidas que abarcan escenarios comunes de migración. Estas tareas abordan los temas siguientes y mucho más:
- Administración de secretos
- Integración de cola de mensajes
- Monitoring
- Administración de identidades
Note
Esta lista aumentará en función de los comentarios de los clientes y de las necesidades en la nube en evolución.
En el vídeo siguiente se muestra cómo usar la modernización de aplicaciones copilot de GitHub para aplicar una tarea predefinida para migrar un proyecto de Java a Azure:
Lista de tareas
La modernización de aplicaciones copilot de GitHub admite actualmente las siguientes tareas predefinidas:
Spring RabbitMQ a Azure Service Bus
Esta tarea convierte una aplicación que usa marcos de mensajería de Spring, incluidos spring Advanced Message Queuing Protocol (AMQP) y Spring Java Message Service (JMS), con RabbitMQ, cambiando para usar el servicio administrado Azure Service Bus en su lugar. La lógica de interacción de la cola de mensajes se adapta al equivalente de Azure Service Bus, conservando los patrones de mensajería y la semántica al tiempo que habilita mecanismos de autenticación seguros de forma predeterminada.
Identidades administradas para la migración de bases de datos a Azure
Las ofertas de Azure Database: Azure SQL Server, Azure Database for MySQL, Azure Database for PostgreSQL, Azure Cosmos DB para Cassandra API y Azure Cosmos DB para MongoDB admiten el inicio de sesión seguro mediante la identidad administrada. Al migrar una aplicación de una base de datos local a una base de datos en la nube administrada de Azure, esta tarea le ayuda a preparar el código base para la autenticación de identidad administrada en la base de datos.
Identidades administradas para la migración de credenciales en Azure
La autenticación mediante cadenas de conexión presenta vulnerabilidades de seguridad y sobrecarga de mantenimiento. Esta tarea transforma las aplicaciones Java para usar la autenticación de identidad administrada de Azure para servicios de mensajería como Azure Event Hubs y Azure Service Bus. Al integrar con bibliotecas cliente de Microsoft Identity, el código ya no necesita almacenar cadenas de conexión confidenciales ni firmas de acceso compartido en archivos de configuración.
Amazon Web Services (AWS) S3 a Azure Storage Blob
Al migrar el servicio de AWS a Azure, puede pasar de AWS S3 a Azure Storage Blob. Esta tarea le ayuda a convertir la lógica de código que interactúa con AWS S3 en lógica de código que funciona con Azure Storage Blob, al tiempo que mantiene la misma semántica.
Registro en un archivo local
Los servicios de hospedaje de Azure se integran con Azure Monitor de forma predeterminada, recopilando la salida de registros en la consola y permite consultar y supervisar estos registros. Al mismo tiempo, no se recomienda iniciar sesión en archivos en un entorno de nube porque requiere rotación y transferencia de registros adicionales. Esta tarea le ayuda a convertir el registro basado en archivos de la aplicación en el registro basado en la consola, lo que hace que esté listo para la integración con Azure Monitor.
E/S de archivos local en monturas de recursos compartidos de archivos de Azure Storage
Los servicios de hospedaje de Azure ofrecen flexibilidad en el aprovisionamiento, el escalado, la conmutación por error, etc. Al mismo tiempo, el sistema de archivos de un tiempo de ejecución de aplicación determinado es transitorio. Si la aplicación lee o escribe en un archivo local, esta tarea le ayuda a identificar estos casos y convertirlos en acceso unificado de ruta de acceso de montaje. Al hacerlo, puede montar un Azure Storage File Share en la ruta de acceso especificada, lo que permite que su aplicación comparta y conserve datos en diferentes réplicas sin preocuparse por la reubicación de datos, la conmutación por error o problemas similares.
Java Mail al Servicio de Comunicación de Azure
La migración de aplicaciones con dependencias del Protocolo simple de transferencia de correo (SMTP) puede ser difícil porque no todos los entornos de Azure admiten solicitudes salientes en el puerto 25. Esta tarea ayuda a convertir una aplicación que envía correo a través de SMTP para usar Azure Communication Services, que es totalmente compatible con los entornos de hospedaje de Azure.
Secretos y administración de certificados en Azure Key Vault
Esta tarea ayuda a migrar recursos de seguridad confidenciales a Azure Key Vault. Admite secretos codificados de forma rígida en el código base y en los certificados TLS/mTLS locales administrados en Almacenes de claves de Java. En el caso de los secretos, identifica textos secretos sospechosos y los convierte en lógica que recupera los datos de Azure Key Vault. En el caso de los certificados, realiza la transición de la aplicación de administrar certificados localmente al uso del proveedor java Cryptography Architecture (JCA) de Azure Key Vault, a la vez que mantiene la misma funcionalidad y posición de seguridad.
Autenticación de usuario en Microsoft Entra ID
Las aplicaciones Java suelen usar soluciones de autenticación basadas en LDAP que no se migran fácilmente a Azure. Esta tarea le ayuda a realizar la transición del mecanismo de autenticación de usuario local a uno que use el identificador de Entra de Microsoft para la autenticación.
SQL Dialect: De Oracle a PostgreSQL
Al realizar la transición de Oracle a PostgreSQL, las diferencias en los dialectos sql pueden suponer desafíos significativos. Esta tarea convierte consultas SQL, tipos de datos y funciones propietarias específicas de Oracle en el código Java en sus equivalentes de PostgreSQL, lo que garantiza una integración sin problemas con Azure Database for PostgreSQL.
De AWS Secret Manager a Azure Key Vault
El cambio de AWS Secret Manager a Azure Key Vault requiere volver a configurar cómo la aplicación controla la información confidencial. Esta tarea transforma todos los aspectos de la administración de secretos en el código, desde la creación y recuperación hasta la actualización y eliminación, y usa las completas funcionalidades de seguridad y los modelos de autenticación de Azure Key Vault.
De ActiveMQ a Azure Service Bus
Las aplicaciones basadas en Apache ActiveMQ se pueden modernizar para usar el servicio de mensajería administrada de Azure. Esta tarea convierte los productores de mensajes ActiveMQ, los consumidores, las factorías de conexión y las interacciones de cola/tema en sus equivalentes de Azure Service Bus, implementando procedimientos recomendados para la confiabilidad y la autenticación en entornos en la nube.
De Amazon Web Services (AWS) Simple Queue Service (SQS) a Azure Service Bus
La transición de AWS SQS a Azure Service Bus implica volver a implementar las operaciones de cola y los patrones de control de mensajes. Esta tarea traduce construcciones de código específicas de SQS a sus homólogos de Azure Service Bus, conservando la semántica de mensajería crítica, como la entrega al menos una vez, el procesamiento por lotes de mensajes y los comportamientos de tiempo de espera de visibilidad al introducir las características de seguridad mejoradas de Azure.