Herramientas de software · 3 min read · Dec 10, 2025
Génesis, una nueva herramienta de automatización de centros de datos de Tumblr
Tumblr lanza una nueva herramienta de automatización de centros de datos - “GENESIS”
Génesis, una herramienta para la automatización de centros de datos, ha sido lanzada por Tumblr, la cual agilizará el proceso de descubrimiento de nuevas máquinas e informes de detalles de hardware a Collins, una parte del sistema de gestión de inventario de Tumblr. La herramienta es muy conveniente para realizar configuraciones de hardware, como alterar la configuración de BIOS y configurar tarjetas RAID antes de aprovisionar un sistema operativo en el host.
Génesis fue desarrollado por los equipos de Ingeniería de Fiabilidad del Sitio y Datacenter en Tumblr y ahora Génesis es de código abierto bajo la Licencia Apache y está disponible en Github.
También lee - Mejores alternativas a Tumblr
La herramienta incluye una imagen de Linux simplificada adecuada para arrancar por PXE y un lenguaje específico de dominio (DSL) basado en Ruby para describir tareas que se ejecutarán en el host. El DSL de Génesis crea la tarea en función de los paquetes que están instalados y los comandos se ejecutan fácilmente. Ejemplos de tareas son la tarea TimedBurnin, que realiza una prueba de estrés en el sistema para descartar errores de hardware antes de ponerlo en producción, y BiosConfigrR720, que configura el BIOS en Dell R720s justo como lo queremos.
Hay pocos sistemas además de Génesis que deben estar en su lugar para un despliegue exitoso. Estos son
- un servidor DHCP,
- un servidor TFTP,
- un servidor HTTP,
El proyecto de Github de Génesis INSTALL.md proporciona más instrucciones y también incluye las opciones de configuración del servidor necesarias.
Cuando una máquina arranca, el servidor DHCP le dice al firmware PXE que arranque en cadena en iPXE. Luego se utiliza iPXE para presentar una lista de opciones de menú, obtenidas de un servidor remoto. Cuando el usuario ha hecho una elección, se carga el núcleo de Génesis y initrd (del servidor de archivos) junto con parámetros en la línea de comandos del núcleo. Una vez que se ha cargado el sistema operativo de Génesis, el cargador de arranque de génesis obtiene y ejecuta un script de ruby que describe una segunda etapa donde instalamos gemas, algunos RPM base y obtenemos nuestras tareas de un servidor remoto. Finalmente, ejecutamos las tareas relevantes.
Tomemos un ejemplo; consideremos un servidor completamente nuevo que se inicia. Hace una solicitud DHCP y carga el menú iPXE. En este caso, debemos recordar que no conocemos la dirección MAC de antemano, por lo que debe ser una máquina nueva. Luego arrancamos Génesis en modo de descubrimiento, donde las tareas que ejecuta están escritas para obtener toda la información de hardware que necesitamos y reportarla de vuelta a Collins. En nuestra configuración, esto incluye información como discos duros y su capacidad y el número de CPUs, pero si deseas obtener información detallada sobre etiquetas de servicio, los bancos de memoria en uso, el nombre de los puertos de conmutación, debemos seguir esto con 48 horas de prueba de estrés de hardware utilizando la tarea TimedBurnin.
La página web del proyecto de Github de Collins afirma que esta aplicación es muy vital, ya que proporciona una fuente de verdad y conocimiento para toda la infraestructura de Tumblr. Todos los datos relacionados con los entornos de producción de Tumblr se almacenan y codifican en Collins, y estos datos se utilizan para impulsar toda la automatización del centro de datos de Tumblr.
La herramienta fue creada como un sistema que se encargará de todos los servidores físicos, conmutadores y racks en los entornos de producción de Tumblr, y ha evolucionado para también soportar el inventario de hardware, direcciones IP y software. La demostración muestra que Tumblr, la API de Collins y los datos son un excelente mecanismo para impulsar procesos de automatización. Recientemente, Collins proporciona implementación de clústeres con un botón, impulsa la generación de configuraciones cuando cambian las topologías de clúster de hardware, impulsa actualizaciones de infraestructura cuando cambian las configuraciones de software y ayuda a gestionar implementaciones de software.
“Génesis aún está en las primeras etapas de desarrollo y, aunque hemos alcanzado muchos de los objetivos que nos propusimos, aún queda mucho por hacer”, dice el blog de Tumblr. Tumblr agregó además que “si encuentras un error o tienes una idea genial, háznoslo saber y participa contribuyendo código y documentación o participando con preguntas y sugerencias.”
Recibe nuevas publicaciones en tu bandeja de entrada.
No spam. Cancela la suscripción en cualquier momento.