Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Migración de la AMI de Linux Amazon (AL1) a AL2 o AL2023
Si la aplicación de Elastic Beanstalk está basada en una ramificación de la plataforma de la AMI de Amazon Linux, utilice esta sección para aprender a migrar los entornos de su aplicación a Amazon Linux 2 o Amazon Linux 2023. Las ramificaciones de la plataforma de la generación anterior basadas en la AMI de Amazon Linux
Se recomienda encarecidamente que migre a Amazon Linux 2023, ya que es más reciente que Amazon Linux 2. El sistema operativo Amazon Linux 2 alcanzará la finalización del soporte antes que Amazon Linux 2023, de modo que si migra a Amazon Linux 2023 se beneficiará de un período de soporte más prolongado.
Merece la pena señalar que existe un alto grado de compatibilidad entre las plataformas Amazon Linux 2 y Amazon Linux 2023 de Elastic Beanstalk. Aunque algunas áreas presentan diferencias: la opción predeterminada Servicio de metadatos de instancia, versión 1 (IMDSv1), la compatibilidad con la herramienta de instancias pkg-repo y algunas configuraciones de Apache HTTPd. Para obtener más información, consultar Amazon Linux 2023
Diferencias y compatibilidad
No se garantiza que las ramificaciones de la plataforma basadas en AL2023/AL2 sean retrocompatibles con su aplicación existente. También conviene saber que aunque el código de la aplicación se implemente correctamente en la nueva versión de la plataforma, es posible que se comporte o funcione de forma distinta debido a las diferencias del sistema operativo y el entorno de ejecución.
Aunque la AMI de Amazon Linux y AL2023/AL2 comparten el mismo kernel de Linux, difieren en los siguientes aspectos: el sistema de inicialización, las versiones de libc
, la cadena de herramientas del compilador y diversos paquetes. Para obtener más información, consulte las Preguntas frecuentes de Amazon Linux 2
El servicio Elastic Beanstalk también ha actualizado versiones específicas de la plataforma del tiempo de ejecución, las herramientas de compilación y otras dependencias.
Por tanto, le recomendamos que se tome su tiempo, pruebe la aplicación a fondo en un entorno de desarrollo y realice los ajustes necesarios.
Proceso de migración general
Cuando esté listo para ir a producción, Elastic Beanstalk necesitará una implementación blue/green para realizar la actualización. Los siguientes pasos generales corresponden a las prácticas recomendadas y se aconsejan para la migración con un procedimiento de implementación azul/verde.
Preparación para realizar una prueba de migración
Antes de implementar su aplicación y comenzar a realizar pruebas, revise la información de Consideraciones aplicables a todas las plataformas Linux, que aparece más adelante en este tema. Además, revise la información que sea aplicable a su plataforma en la sección Consideraciones específicas de la plataforma que sigue. Anote la información específica de este contenido que sea aplicable o pueda aplicarse a la configuración de su aplicación y ajustes.
Pasos de migración de alto nivel
-
Cree un nuevo entorno que esté basado en una ramificación de la plataforma AL2 o AL2023. Se recomienda que migre a una ramificación de la plataforma AL2023.
-
Implemente su aplicación en el entorno de AL2023/AL2 de destino.
El entorno de producción existente permanecerá activo y no se verá afectado, mientras realiza pruebas y ajustes en el nuevo entorno.
-
Pruebe su aplicación a fondo en el nuevo entorno.
-
Cuando su entorno de AL2023/AL2 de destino esté listo para pasar a producción, intercambie los CNAME de los dos entornos para redirigir el tráfico al nuevo entorno.
Prácticas recomendadas y pasos de migración más detallados
Para ver un procedimiento de implementación azul/verde más detallado, consulte Implementaciones Blue/Green (azul/verde) con Elastic Beanstalk.
Para obtener una orientación más específica y pasos detallados de las mejores prácticas, consulte Método azul/verde.
Más referencias para ayudarle a planificar la migración
Las siguientes referencias pueden ofrecer información adicional para planificar la migración.
-
Comparing Amazon Linux 2 and Amazon Linux 2023 Guía del usuario de Amazon Linux 2023.
-
What is Amazon Linux 2023? en la Guía del usuario de Amazon Linux 2023
-
Plataformas compatibles con Elastic Beanstalk en Plataformas de AWS Elastic Beanstalk
Consideraciones aplicables a todas las plataformas Linux
En la tabla siguiente se detallan algunas consideraciones que debe tener en cuenta al planificar la migración de una aplicación a AL2023/AL2. Estas consideraciones se aplican a cualquiera de las plataformas Linux de Elastic Beanstalk, sin tener en cuenta los lenguajes de programación o los servidores de aplicaciones específicos.
Área | Cambios e información |
---|---|
Archivos de configuración |
En las plataformas AL2023/AL2, puede utilizar archivos de configuración como antes, y todas las secciones funcionan del mismo modo. Sin embargo, es posible que algunas opciones no funcionen igual que lo hacían en las plataformas anteriores de la AMI de Amazon Linux. Por ejemplo:
Es conveniente utilizar enlaces de plataforma para ejecutar código personalizado en las instancias del entorno. Puede seguir utilizando comandos y comandos de contenedor en los archivos de configuración Tendrá que seguir utilizando los archivos de configuración |
Enlaces de la plataforma |
Las plataformas AL2 incorporaron un nuevo mecanismo para ampliar la plataforma de su entorno agregando archivos ejecutables a directorios de enlaces de las instancias del entorno. Es posible que, en las versiones anteriores de la plataforma Linux, haya utilizado enlaces de plataforma personalizados. Aunque estos enlaces no estaban diseñados para plataformas administradas y no eran compatibles, podían resultar útiles en algunos casos. En las versiones de la plataforma AL2023/AL2, los enlaces de plataforma personalizados no funcionan. Debe migrar estos enlaces a los nuevos enlaces de plataforma. Para obtener más información, expanda la sección Enlaces de plataforma de Ampliación de las plataformas Linux de Elastic Beanstalk. |
Servidores proxy compatibles |
Las versiones de la plataforma AL2023/AL2 admiten los mismos servidores proxy inversos que cada plataforma admitida en sus versiones de la plataforma de la AMI de Amazon Linux. Todas las versiones de la plataforma AL2023/AL2 utilizan nginx como servidor proxy inverso predeterminado, con la excepción de las plataformas ECS y Docker. Las plataformas Tomcat, Node.js, PHP y Python también admiten Apache HTTPD como alternativa. Todas las plataformas habilitan la configuración del servidor proxy de manera uniforme, como se describe en esta sección. Sin embargo, la configuración del servidor proxy es ligeramente diferente de lo que era en la AMI de Amazon Linux. Estas son las diferencias para todas las plataformas:
Para obtener información sobre los cambios de configuración de proxy específicos de la plataforma, consulte Consideraciones específicas de la plataforma. Para obtener información sobre la configuración del proxy en plataformas AL2023/AL2, expanda la sección Configuración del proxy inverso de Ampliación de las plataformas Linux de Elastic Beanstalk. |
Cambios en la configuración del proxy |
Hay cambios de configuración del proxy que se aplican uniformemente a todas las plataformas, además de los cambios de configuración del proxy que son específicos de cada plataforma. Es importante referirse a ambos para configurar con precisión sus entornos.
|
Perfil de instancia |
En las plataformas AL2023/AL2 es necesario configurar un perfil de instancia. Si se crea un entorno sin un perfil de instancia, este podría funcionar temporalmente; sin embargo, es posible que pronto se produjeran errores, cuando las acciones que requieren un perfil de instancia no pudieran ejecutarse correctamente. Para obtener más información, consulte Administración de perfiles de instancia de Elastic Beanstalk. |
Estado mejorado |
Las versiones de la plataforma AL2023/AL2 habilitan el estado mejorado de manera predeterminada. Esto supone un cambio si no utiliza la consola de Elastic Beanstalk para crear sus entornos. De forma predeterminada, siempre que es posible, la consola habilita el estado mejorado, independientemente de la versión de la plataforma. Para obtener más información, consulte Informes y monitorización de estado mejorados. |
AMI personalizada |
Si su entorno utiliza una AMI personalizada, cree una nueva AMI basada en AL2023/AL2 para el nuevo entorno que utilice una plataforma AL2023/AL2 de Elastic Beanstalk. |
Plataformas personalizadas |
Las AMI administradas de las versiones de la plataforma AL2023/AL2 no son compatibles con plataformas personalizadas. |
Consideraciones específicas de la plataforma
En esta sección se describen consideraciones de migración específicas de determinadas plataformas Linux de Elastic Beanstalk.
La familia de ramificaciones de la plataforma Docker basada en la AMI de Amazon Linux (AL1) incluye tres ramificaciones de plataforma. Se recomienda una ruta de migración distinta para cada una.
Ramificación de la plataforma AL1 | Ruta de migración a AL2023/AL2 | ||||||||
---|---|---|---|---|---|---|---|---|---|
Multicontainer Docker administrado por Amazon ECS que se ejecuta en la AMI de Amazon Linux (AL1) |
Ramificaciones de la plataforma AL2023/AL2 de Docker basado en ECSLa ramificación de la plataforma AL2023/AL2 de Docker basado en ECS ofrece una ruta de migración directa para los entornos que se ejecuten en la ramificación de la plataforma Docker multicontenedor AL1.
Para obtener más información sobre cómo migrar las aplicaciones que se ejecuten en la ramificación de la plataforma Docker multicontenedor Amazon Linux a una ramificación de la plataforma Amazon ECS sobre AL2023/AL2, consulte Migración de Docker multicontenedor sobre Amazon Linux a ECS sobre Amazon Linux 2023. |
||||||||
Docker que se ejecuta en la AMI de Amazon Linux (AL1) Docker preconfigurado (Glassfish 5.0) que se ejecuta en la AMI de Amazon Linux (AL1) |
Ramificación de la plataforma Docker sobre AL2023/AL2Se recomienda migrar las aplicaciones que se ejecuten en entornos basados en Docker preconfigurado (GlassFish 5.0) o Docker sobre la AMI de Amazon Linux (AL1) a entornos que estén basados en las ramificaciones de la plataforma Docker sobre Amazon Linux 2 o Docker sobre AL2023. Si su entorno está basado en la ramificación de la plataforma del Docker preconfigurado (Glassfish 5.0), consulte Implementación de una GlassFish aplicación en la plataforma Docker: una ruta de migración a Amazon Linux 2023. La siguiente tabla muestra información sobre la migración específica de la ramificación de la plataforma Docker sobre AL2023/AL2.
|
La siguiente tabla muestra información sobre la migración de las versiones de la plataforma AL2023/AL2 en la plataforma Go.
Área | Cambios e información |
---|---|
Transferencia de puertos |
En las plataformas AL2023/AL2, Elastic Beanstalk no pasa ningún valor de puerto al proceso de la aplicación a través de la variable de entorno |
La siguiente tabla muestra información sobre la migración de las ramificaciones de la plataforma Corretto en la plataforma Java SE.
Área | Cambios e información |
---|---|
Corretto en comparación con OpenJDK |
Para implementar la plataforma Java, Standard Edition (Java SE), las ramificaciones de la plataforma AL2023/AL2 utilizan Amazon Corretto |
Herramientas de compilación |
Las plataformas AL2023/AL2 tienen versiones más recientes de las herramientas de compilación: |
Administración de archivos JAR |
En las plataformas AL2023/AL2, si su paquete de código fuente (archivo ZIP) contiene un único archivo JAR y ningún otro archivo, Elastic Beanstalk ya no cambia el nombre del archivo JAR a |
Transferencia de puertos |
En las plataformas AL2023/AL2, Elastic Beanstalk no pasa ningún valor de puerto al proceso de la aplicación a través de la variable de entorno |
Java 7 |
Elastic Beanstalk no admite una ramificación de la plataforma Java 7 de AL2023/AL2. Si tiene una aplicación Java 7, mígrela a Corretto 8 o a Corretto 11. |
La siguiente tabla muestra información sobre la migración de las versiones de la plataforma AL2023/AL2 en la plataforma Tomcat.
Área | Cambios e información | ||||||
---|---|---|---|---|---|---|---|
Opciones de configuración |
En las versiones de la plataforma AL2023/AL2, Elastic Beanstalk solo admite un subconjunto de las opciones de configuración y los valores de opción en el espacio de nombres
La opción |
||||||
Ruta de la aplicación |
En las plataformas AL2023/AL2, la ruta del directorio de la aplicación en las instancias de Amazon EC2 de su entorno es |
La siguiente tabla muestra información sobre la migración de las versiones de la plataforma AL2023/AL2 en la plataforma Node.js.
Área | Cambios e información | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Versiones de Node.js instaladas |
En las plataformas AL2023/AL2, Elastic Beanstalk mantiene varias ramificaciones de la plataforma Node.js y solo instala la versión más reciente de la versión principal de Node.js correspondiente a la ramificación de la plataforma de cada versión de la plataforma. Por ejemplo, cada versión de plataforma de la ramificación de la plataforma Node.js 12 solo tiene la versión Node.js 12.x.y instalada de forma predeterminada. En las versiones de la plataforma de la AMI de Amazon Linux, hemos instalado las múltiples versiones de varias versiones de Node.js en cada versión de la plataforma y hemos mantenido únicamente una ramificación de la plataforma. Seleccione la ramificación de la plataforma Node.js que se corresponda con la versión principal de Node.js que necesita su aplicación. |
||||||||||
Nombres de archivos de registro HTTPD de Apache |
En las plataformas AL2023/AL2, si utiliza el servidor proxy Apache HTTPD, los nombres de archivo de registro de HTTPD son Para obtener más información sobre los nombres de archivos de registro y las ubicaciones de todas las plataformas, consulte Cómo Elastic Beanstalk configura CloudWatch Logs. |
||||||||||
Opciones de configuración |
En las plataformas AL2023/AL2, Elastic Beanstalk no admite las opciones de configuración en el espacio de nombres
|
La siguiente tabla muestra información sobre la migración de las versiones de la plataforma AL2023/AL2 en la plataforma PHP.
Área | Cambios e información |
---|---|
Procesamiento de archivos PHP |
En las plataformas AL2023/AL2, los archivos PHP se procesan mediante PHP-FPM (un administrador de procesos CGI). En las plataformas de la AMI de Amazon Linux utilizábamos mod_php (un módulo Apache). |
Servidor proxy |
Las versiones de la plataforma PHP de AL2023/AL2 admiten los servidores proxy nginx y Apache HTTPD. El valor predeterminado es nginx. Las versiones de la plataforma PHP de la AMI de Amazon Linux solo admiten Apache HTTPD. Si agregó archivos de configuración personalizados de Apache, puede establecer la opción |
La siguiente tabla muestra información sobre la migración de las versiones de la plataforma AL2023/AL2 en la plataforma Python.
Área | Cambios e información |
---|---|
Servidor WSGI |
En las plataformas AL2023/AL2, Gunicorn Alternativamente, puede utilizar un |
Ruta de la aplicación |
En las plataformas AL2023/AL2, la ruta del directorio de la aplicación en las instancias de Amazon EC2 de su entorno es |
Servidor proxy |
Las versiones de la plataforma Python de AL2023/AL2 admiten los servidores proxy nginx y Apache HTTPD. El valor predeterminado es nginx. Las versiones de la plataforma Python de la AMI de Amazon Linux solo admiten Apache HTTPD. Si agregó archivos de configuración personalizados de Apache, puede establecer la opción |
La siguiente tabla muestra información sobre la migración de las versiones de la plataforma AL2023/AL2 en la plataforma Ruby.
Área | Cambios e información |
---|---|
Versiones de Ruby instaladas |
En las plataformas AL2023/AL2, Elastic Beanstalk solo instala la versión más reciente de una sola versión de Ruby, correspondiente a la ramificación de la plataforma, en cada versión de la plataforma. Por ejemplo, cada versión de la plataforma en la ramificación de la plataforma Ruby 2.6 solo tiene Ruby 2.6.x instalado. En las versiones de la plataforma de la AMI de Amazon Linux, instalamos las versiones más recientes de varias versiones de Ruby, por ejemplo, 2.4.x, 2.5.x y 2.6.x. Si su aplicación utiliza una versión de Ruby que no se corresponde con la ramificación de la plataforma que está utilizando, le recomendamos que cambie a una ramificación de la plataforma que tenga la versión correcta de Ruby para su aplicación. |
Servidor de aplicaciones |
En las plataformas AL2023/AL2, Elastic Beanstalk solo instala el servidor de aplicaciones Puma en todas las versiones de la plataforma Ruby. Puede usar un En la plataforma de la AMI de Amazon Linux, admitíamos dos tipos de ramificaciones de la plataforma para cada versión de Ruby: una con el servidor de aplicaciones Puma y la otra con el servidor de aplicaciones Passenger. Si su aplicación utiliza Passenger, puede configurar su entorno de Ruby para instalar y usar Passenger. Para obtener más información y ejemplos, consulte Uso de la plataforma Elastic Beanstalk Ruby. |