Blog de Amazon Web Services (AWS)

Actualizando de Amazon RDS para MariaDB version 10.2

Por Vijay Karumajji, arquitecto de soluciones de bases de datos en Amazon Web Services.

La versión mayor de Amazon Relational Database Service (Amazon RDS) para MariaDB 10.2 llegará al final de su vida útil (EOL) el 15 de octubre de 2022. El proceso de fin de vida finaliza el soporte estándar para esta versión. Le recomendamos que actualice todas las instancias de base de datos de MariaDB 10.2 a MariaDB 10.3 o superior lo antes posible. Amazon Relational Database Service (Amazon RDS) proporciona versiones más recientes de bases de datos, poco después del lanzamiento de la comunidad, para que pueda mantener sus instancias de base de datos actualizadas. Las versiones más nuevas de la base de datos incluyen correcciones de errores, mejoras de seguridad y otras optimizaciones.

Cuando Amazon RDS para MariaDB ofrece una nueva versión, puede elegir cómo y cuándo actualizar sus instancias de base de datos. Amazon RDS para MariaDB admite actualizaciones de versiones mayores y menores. Una actualización de la versión mayor del motor puede introducir cambios que no son compatibles con versiones anteriores de las aplicaciones existentes, mientras que las actualizaciones de versiones menores solo incluyen cambios que son compatibles con versiones anteriores de las aplicaciones existentes. Consulte el siguiente enlace para conocer las fechas de lanzamiento de la comunidad y las fechas de EOL de todas las versiones de MariaDB.

Amazon RDS para MariaDB ofrece una opción para automatizar algunas de estas decisiones de aplicación de parches, como las actualizaciones automáticas de versiones menores. Sin embargo, las actualizaciones de versiones mayores deben solicitarse explícitamente. Por lo tanto, es fundamental estar al tanto de los problemas comunes, los pasos involucrados y utilizar las mejores prácticas para actualizar su versión mayor con el menor impacto en sus aplicaciones.
En esta publicación, analizamos los siguientes temas:

  • Línea de tiempo de finalización de Amazon RDS para MariaDB 10.2
  • Opciones de actualización disponibles
  • Mejores prácticas a seguir durante el proceso de actualización

Línea de tiempo de finalización de la vida útil de Amazon RDS para MariaDB 10.2

La línea de tiempo de EOL es la siguiente:

  • Desde hoy hasta el 15 de octubre de 2022 a las 00:00:01 a. m. UTC: Usted puede iniciar actualizaciones de Amazon RDS para instancias de MariaDB 10.2 a MariaDB 10.3 o 10.6 en cualquier momento.
  • 15 de julio de 2022, 00:00:01 a. m. UTC: Después de esta fecha y hora, no puede crear nuevas instancias de RDS con la versión mayor de MariaDB 10.2 desde la consola de administración de AWS o la interfaz de línea de comandos de AWS (AWS CLI). Puede continuar restaurando sus instantáneas de MariaDB 10.2 y crear réplicas de lectura con la versión 10.2 hasta el 15 de octubre de 2022, fecha de finalización del soporte.
  • 15 de octubre de 2022, 00:00:01 a. m. UTC : Amazon RDS actualizará automáticamente las instancias de MariaDB 10.2 a la versión 10.3 dentro de la primera ventana de mantenimiento programada que sigue. Después de esta fecha y hora, cualquier restauración de las instantáneas de la base de datos de RDS para MariaDB 10.2 dará como resultado una actualización automática de la base de datos restaurada a una versión aún compatible en ese momento.
  • 15 de enero de 2023, 00:00:01 a. m. UTC: Amazon RDS actualizará automáticamente las instancias restantes de MariaDB 10.2 a la versión 10.3, estén o no en una ventana de mantenimiento.

Consulte el siguiente enlace para obtener más información sobre las fechas de EOL de Amazon RDS para MariaDB 10.2.

Opciones de actualización de versión en Amazon RDS para MariaDB 10.2

Las actualizaciones de versiones mayores en Amazon RDS para MariaDB solo podían pasar de una versión mayor a la siguiente versión mayor inmediata hasta el lanzamiento de RDS para MariaDB 10.6. Para realizar una actualización de la versión mayor a una versión de MariaDB anterior a la 10.6, actualice en orden a cada versión mayor. Por ejemplo, para actualizar de la versión 10.2 a la versión 10.5, actualice en el siguiente orden: 10.2 a 10.3, 10.3 a 10.4 y luego 10.4 a 10.5.

Amazon RDS para MariaDB 10.6, lanzado en febrero de 2022, admite la actualización de varias versiones mayores. Es decir, puede actualizar desde cualquier versión mayor anterior de MariaDB (10.2, 10.3, 10.4, 10.5) a Amazon RDS para MariaDB 10.6 en un solo paso. Además, puede tomar una instantánea de una instancia de MySQL 5.6 o 5.7 existente y usar la función de restauración de instantáneas RDS para convertirla en una instancia de MariaDB 10.6.

En resumen, Amazon RDS admite las siguientes actualizaciones para las versiones mayores del motor de base de datos MariaDB:

  • Cualquier versión de MariaDB compatible con MariaDB 10.6
  • MariaDB 10.4 a MariaDB 10.5
  • MariaDB 10.3 a MariaDB 10.4
  • MariaDB 10.2 a MariaDB 10.3

También puede obtener una lista de todas las versiones de destino de actualización válidas para una versión de base de datos en una region determinada, utilizando el siguiente comando en AWS CLI: describe-db-engine-versions:

aws rds describe-db-engine-versions --output=table --engine mariadb --engine-version 10.2

Tiene las siguientes opciones para decidir a qué versión actualizar:

  • MariaDB 10.3 : EOL de la comunidad planificado para mayo de 2023
  • MariaDB 10.4 : EOL comunitario planificado para junio de 2024
  • MariaDB 10.5 : EOL comunitario planificado para junio de 2025
  • MariaDB 10.6 : EOL comunitario planificado para julio de 2026

Amazon RDS para MariaDB 10.3, 10.4, 10.5 y 10.6 estará disponible con soporte estándar al menos hasta la fecha de EOL de la comunidad. Si tiene instancias de MariaDB 10.2 en su cuenta, puede actualizarlas antes del 15 de octubre de 2022. Consulte el siguiente enlace para obtener instrucciones sobre cómo actualizar una instancia de base de datos: Actualización del motor de base de datos de MariaDB .

Elección de la versión del motor de destino para la actualización

Le recomendamos que actualice cualquiera de sus instancias de base de datos de RDS para MariaDB 10.2 a versiones 10.3 (o superiores) porque son compatibles al menos hasta la fecha de EOL de la comunidad. Tenemos la intención de admitir versiones de versiones mayores (por ejemplo, MariaDB 10.3, MariaDB 10.6) durante al menos 3 años después de que Amazon RDS las admita inicialmente.

Al actualizar las versiones mayores de cualquier motor de base de datos, juega un papel crucial en el éxito general de la actualización el verificar la compatibilidad de su aplicación con la nueva versión y sus características. Las versiones de la base de datos de MariaDB pueden diferir en la forma en que funcionan e interactúan con las aplicaciones, lo que podría generar problemas de compatibilidad. Por lo tanto, es crucial actualizar su RDS para instancias de base de datos MariaDB a una versión que sea compatible, certificada y admitida por su aplicación.

En ciertos casos, las mejoras de funciones y las optimizaciones de rendimiento en las nuevas versiones también juegan un papel fundamental en la elección de una versión de motor de destino para su actualización.

Por ejemplo, MariaDB 10.3 ofrece compatibilidad mejorada con Oracle, soporte para consultar estados históricos de la base de datos, funciones que aumentan la flexibilidad para desarrolladores y administradores de bases de datos, y capacidad de administración mejorada.

MariaDB 10.4 introdujo varias funciones nuevas, que incluyen una operación de columna de eliminación instantánea, capacidades de autenticación adicionales y la capacidad de recargar nuevos certificados SSL sin reiniciar el servidor.

MariaDB 10.5 introdujo varias funciones nuevas, como soporte nativo para el tipo de datos JSON y funciones JSON integradas, y mejoras en el rendimiento de las consultas a través de la mejora del optimizador, lo que resultó en un mejor análisis y explicación de los planes. También introdujo el cambio de tamaño del grupo de búfer dinámico y el descubrimiento mejorado del espacio de tabla para minimizar la duración de la recuperación de fallas.

De manera similar, MariaDB 10.6 presenta múltiples características de MariaDB para mejorar el rendimiento, la escalabilidad, la confiabilidad y la capacidad de administración de sus cargas de trabajo, como el motor de almacenamiento MyRocks, la integración de AWS Identity and Access Management (IAM), actualizaciones flexibles, replicación retrasada, compatibilidad con Oracle PL/SQL, DDL atómico y otras mejoras como la función JSON_TABLE para transformar datos JSON a formato relacional dentro de SQL, carga de datos de tabla vacía más rápida con Innodb, nuevo sys_schema para análisis y resolución de problemas, mejoras del optimizador para ignorar índices no utilizados y mejoras de rendimiento.

Amazon RDS para MariaDB, versiones 10.4 y posteriores, admite las clases de instancias más recientes que utilizan los procesadores Graviton2 de AWS , como r6g y m6g, que ofrecen hasta un 35 % más de rendimiento y una mejora de hasta un 52 % en la relación precio-rendimiento para las bases de datos de código abierto de RDS, según pruebas internas de cargas de trabajo con diferentes características de requisitos de cómputo y memoria.

Las versiones 10.4 y posteriores de Amazon RDS para MariaDB también se ofrecen en las instancias M6i y R6i más recientes , con tecnología de procesadores Intel Xeon Scalable de tercera generación con una frecuencia turbo en todos los núcleos de 3,5 GHz, lo que ofrece hasta un 20 % más de rendimiento de transacciones que el M5 equivalente. e instancias R5.

Consideraciones sobre el tiempo de inactividad para una actualización de versión mayor

Amazon RDS para MariaDB le permite iniciar manualmente una actualización de versión mayor modificando la instancia de base de datos, ya sea a través de la consola de administración de AWS , la CLI de AWS o la API de Amazon RDS . Esta es una actualización en el lugar y requiere tiempo de inactividad para sus aplicaciones durante el proceso de actualización. La duración del proceso de actualización depende de la versión del motor y la clase de instancia de base de datos. Puede determinar la cantidad de tiempo que lleva realizar la actualización realizando ejercicios de actualización de prueba con una restauración de instantáneas en un entorno de ensayo. Actualizar su instancia de base de datos de producción es un proceso irreversible. Si ocurre algún problema durante o después del proceso de actualización, la única opción alternativa es restaurar desde la última instantánea. Como práctica recomendada, siempre tome una instantánea antes de iniciar la actualización.

Si está ejecutando su instancia de base de datos en una implementación Multi-AZ, Amazon RDS for MariaDB actualiza simultáneamente la instancia de reserva sincrónica primaria y Multi-AZ.

Si su instancia de base de datos RDS para MariaDB está en uso con una aplicación de producción, puede reducir la cantidad de tiempo de inactividad de su aplicación mediante el uso de una réplica de lectura para realizar la mayoría de sus tareas de mantenimiento con anticipación. Este método implica configurar una réplica de lectura lógica que tenga la misma versión mayor y menor que la instancia mayor, luego actualizar la réplica de lectura a una versión más nueva y asegurarse de que todos los pasos de validación de la aplicación se realicen. Una vez hecho esto, asegúrese de que la replicación se haya recuperado por completo deteniendo las escrituras adicionales de la aplicación para garantizar la integridad de los datos. Luego, promueva la réplica de lectura a una instancia independiente y dirija su aplicación a la instancia mejorada y promovida que tiene los datos actualizados.

Cómo Amazon RDS for MariaDB realiza una actualización de versión mayor

Cuando se invoca una actualización de versión mayor en la consola o a través de la AWS CLI o la API de Amazon RDS, la automatización de Amazon RDS completa los siguientes pasos:

  1. Comprueba si es necesario actualizar alguna réplica de lectura.
  2. Toma una instantánea previa a la actualización (si las copias de seguridad están habilitadas en el RDS para la instancia de base de datos MariaDB). Esta instantánea se puede utilizar con fines de reversión si la actualización encuentra algún problema.
  3. Cierra la instancia y la prepara para la actualización.
  4. Ejecuta el script mysql_upgrade para actualizar las tablas a la versión más nueva.
  5. Toma una instantánea posterior a la actualización.

Consideraciones clave y mejores prácticas

Al realizar una actualización, tenga en cuenta lo siguiente:

  • Si su instancia de base de datos de RDS para MariaDB utiliza réplicas de lectura, debe actualizar todas las réplicas de lectura antes de actualizar la instancia de origen.
  • Tome una instantánea manual con el comando de la CLI de AWS create-db-snapshot o a través de la consola antes de comenzar la fase de actualización.
  • Si sus instancias de RDS para MariaDB 10.2 se ejecutan en uno de los tipos de instancia obsoletos t1, m1 o m2, debe cambiar a un tipo de instancia más nuevo antes de iniciar la actualización de la versión mayor. Puede identificar cualquier RDS para instancias de base de datos de MariaDB que ejecute los tipos de instancias anteriores a través de la consola o el comando describe-db-instances AWS CLI.
  • Amazon RDS trunca las tablas slow_log y general_log durante una actualización de versión mayor. Para conservar la información de registro, realice una copia de seguridad del contenido del registro antes de la actualización de la versión mayor. Realice una copia de seguridad a nivel de tabla de las tablas slow_log y general_log con el siguiente código:

mysqldum - h <RDS-instance-endpoint> -u <username> -p --databases mysql --tables slow_log --skip-lock-tables > filename.sql

  • De forma predeterminada, al actualizar de una versión mayor a la siguiente versión mayor superior, Amazon RDS para MariaDB elige el grupo de opciones predeterminado si no se elige el grupo de opciones personalizado correspondiente para la versión de destino. Elija siempre tener un grupo de opciones personalizado creado en la versión de destino que refleje las opciones que tiene de la versión desde la que está actualizando.
  • Amazon RDS crea un nuevo grupo de parámetros para la versión de actualización de destino automáticamente durante una actualización de versión mayor si no se proporciona una. Al actualizar las instancias de base de datos RDS para MariaDB que usan grupos de parámetros personalizados, siempre elija un grupo de parámetros en la versión de destino que coincida con su grupo de parámetros de la versión actual con parámetros similares que tengan valores similares o iguales. Si los parámetros no existen o sus valores predeterminados cambiaron entre versiones, pruebe y valide cuidadosamente los resultados y el comportamiento antes de actualizar la instancia.
  • Deshabilite todos los trabajos antes de la actualización y asegúrese de habilitarlos después de la actualización. Pruebe también el comportamiento del trabajo en un entorno más bajo antes de realizar el proceso de actualización de la base de datos actual.
  • Realice una evaluación comparativa general de la aplicación para comprender si hay dependencias y desviación del comportamiento de la aplicación en un entorno inferior antes de realizar la actualización de la versión mayor en el entorno de producción.
  • Mantenga una lista de los clientes y sus controladores utilizados junto con los números de versión apropiados. Identifique que estos clientes y sus controladores funcionan con versiones más recientes de MariaDB.
  • Después de la actualización, le recomendamos encarecidamente que pruebe su proceso de restauración de copia de seguridad automatizado, recuperación ante desastres o procedimientos de actualización de producción a no producción.

Conclusión

En esta publicación, revisamos el cronograma de soporte de EOL de MariaDB 10.2 en Amazon RDS, evaluamos las opciones de actualización de la versión y asesoramos sobre cómo elegir una versión de destino para la actualización. Finalmente, cubrimos las mejores prácticas y qué esperar durante el proceso de actualización. Dado que Amazon RDS para MariaDB 10.2 llegará al final del soporte estándar el 15 de octubre de 2022, le recomendamos que actualice sus instancias de RDS para MariaDB 10.2 a Amazon RDS para MariaDB 10.3 (o superior) lo antes posible para probar las actualizaciones de versión, valide su aplicaciones y aproveche las características y optimizaciones disponibles en las nuevas versiones.


Sobre el Autor

Vijay Karumajji es arquitecto de soluciones de bases de datos en Amazon Web Services. Trabaja con nuestros clientes para brindar orientación y asistencia técnica en proyectos de bases de datos, ayudándolos a mejorar el valor de sus soluciones cuando usan AWS

 

 

 

 

Sobre el traductor

José Lorenzo Cuéncar Garza es Ingeniero en Sistemas Electrónicos con Maestría en Finanzas Internacionales. Actualmente se desempeña como Arquitecto de Soluciones en Amazon Web Services para el Sector Educativo en México, donde tiene especialidad en Cómputo, Supercómputo y Educación. José colabora con Dependencias de Gobierno, Instituciones Educativas y Organizaciones sin fines de lucro en México, apoyándolos en su camino a la innovación y adopción tecnológica.