Foto de Blai Peidro
Hola

Soy Blai Peidro

Senior Infrastructure Engineer

  • Stack Linux · Bash · Python · Ansible
  • Intereses Automatización · IA · Network
  • Idiomas Español · Català · English
  • Ubicación Barcelona, España
  • Web https://www.blai.blog

Primer vistazo a Amazon Linux 2

Probando Amazon Linux 2: novedades y primeras impresiones.



Amazon Linux es una distribución de GNU/Linux que se lanzó en septiembre de 2010. Fue creada por Amazon Web Services (AWS), basándose en el código fuente de Red Hat Enterprise Linux. A diferencia de Red Hat, que cobra a sus usuarios por ofrecerles soporte sobre su sistema, AWS ofrece actualizaciones y soporte para Amazon Linux a sus clientes sin coste adicional más allá del coste de AWS, lo que convierte a esta distribución en una opción interesante para las empresas, al no tener que asumir licencias adicionales para mantener sus sistemas.

Como contrapartida, hay ciertas voces críticas con Amazon Linux que se han quejado durante años del hecho de que no se pueda descargar una imagen de este sistema operativo para usarlo fuera de AWS. Esto ha obligado a las empresas que trabajan con esta distribución a tener su entorno de desarrollo también en AWS para evitar tener dos entornos diferentes entre desarrollo y producción, aumentando así el gasto en la factura de AWS.

Amazon Linux fuera de AWS


Hasta hace poco, era cierto que no se podían descargar imágenes de Amazon Linux para su uso fuera de AWS; no obstante, con la llegada de Amazon Linux 2, AWS cambió de estrategia y decidió liberar imágenes de Amazon Linux 2 para:

  • Docker
  • KVM
  • VMware
  • Oracle VirtualBox
  • Microsoft Hyper-V


Desde entonces, la afirmación de que no se puede descargar una imagen de Amazon Linux para su uso en local ha dejado de ser cierta.

Versiones


AWS ofrece dos versiones de Amazon Linux: Amazon Linux y Amazon Linux 2 LTS.


Ambos Amazon Linux tal cual aparecen en AWS al desplegar una nueva instancia.

Hace poco tuve la oportunidad de trastear con ambas AMIs.

Amazon Linux:



Amazon Linux 2:



Aquí están listadas las novedades de Amazon Linux 2 respecto a la versión anterior, con la adopción de systemd frente a SysV, como cambio más notable.
Systemd Sistema de inicio (init system) y gestor de servicios utilizado por la mayoría de distribuciones Linux modernas. Se encarga de arrancar el sistema operativo, iniciar y supervisar servicios, gestionar dependencias entre ellos, controlar logs mediante journald, administrar sesiones de usuario y ofrecer herramientas para tareas como temporizadores, montaje de sistemas de archivos o gestión de red. Usa archivos de configuración llamados units (.service, .socket, .timer, etc.) y destaca por su arranque paralelo, lo que suele hacer que el inicio del sistema sea más rápido y eficiente.

SysVinit (System V Init) Sistema de inicio heredado de Unix y utilizado durante muchos años en Linux antes de la adopción masiva de systemd. Funciona mediante scripts de arranque ubicados en directorios como /etc/init.d/, organizados por runlevels (niveles de ejecución) que determinan qué servicios deben iniciarse o detenerse según el estado del sistema. Su funcionamiento es más simple y transparente, pero también más limitado, ya que inicia servicios de forma principalmente secuencial y carece de muchas funciones integradas modernas, como supervisión avanzada de procesos, gestión centralizada de logs o dependencias complejas entre servicios.


Prueba


Lo primero que me llamó la atención de ambas distros es que ambas usan una versión de kernel muy reciente en comparación con los kernels que equipan de serie otras distros comerciales como SLES o Ubuntu. Además, pude comprobar que al igual que está ocurriendo con todas las distribuciones de Linux destinadas a ser usadas en servidores, Amazon Linux sólo se ofrece en versión 64 bits.

Por otro lado, ambas versiones utilizan yum (Yellowdog Updater Modified) como gestor de paquetes del sistema, el mismo que usa su distribución base, Red Hat Enterprise Linux. Gracias a ello, la instalación, actualización y eliminación de paquetes se realiza mediante órdenes conocidas como yum install, yum update o yum remove, lo que facilita la adaptación a administradores acostumbrados a trabajar con entornos RHEL o CentOS.

Al usar comandos como yum update, los sistemas se conectan a repositorios mantenidos por AWS con paquetes optimizados para ejecutarse sobre su infraestructura cloud. Los repositorios a los que se conectan varían en función de la región de AWS donde esté desplegada la instancia (las URLs de cada repositorio usan variables que luego apuntan a uno u otro servidor, por lo que pude ver). Asimismo, todas las órdenes de yum deben introducirse con sudo delante.

Opinión


No pude hacer mucho más que desplegar Apache en ambas instancias y ejecutar cuatro comandos, pero mi primera impresión de Amazon Linux es que se trata de una distro muy mimada, con un especial énfasis en la seguridad (ver Amazon Linux Security Center), pre-cargada con herramientas que permiten acceder a las APIs de AWS directamente, y algo muy interesante: con soporte gratuito.

Si a lo anterior le unimos el poder usar Amazon Linux 2 en entornos on-premise, como laboratorios de pruebas o máquinas de desarrollo, la propuesta gana todavía más interés, ya que permite mantener una mayor homogeneidad entre los entornos de desarrollo y producción, reduciendo diferencias de configuración e incompatibilidades entre ellos y, en definitiva, haciéndonos la vida más fácil.

Fuentes:

AWS - Amazon Linux AMI FAQS
AWS - Amazon Linux 2 FAQS
AWS - Amazon Linux AMI basics
AWS - Amazon Linux Security Center
cloudnaut - Migrating to Amazon Linux 2

No hay comentarios:

Publicar un comentario