Testimonios de clientes CERN
+

El CERN realiza avances en la comprensión del universo con la ayuda de GitLab

Mejora en la calidad de código
Seguridad mejorada
Mayor colaboración global
Sector Ciencia, tecnología y educación
Empleados 10 000 miembros asociados
Ubicación Ginebra, Suiza
Solución

GitLab Ultimate

¿Quiere ver lo que GitLab Ultimate puede hacer por su equipo?

Probar el plan Ultimate gratis

El CERN conecta a los científicos de todo el mundo en algunos de los esfuerzos de colaboración más importantes para descubrir de qué está hecho el universo y cómo funciona. Sus equipos también usan GitLab para desarrollar software que ayuda a los investigadores a estudiar fenómenos como la materia oscura y el bosón de Higgs.

El CERN (el Laboratorio Europeo de Física de Partículas) es una organización intergubernamental conocida a nivel mundial que gestiona el mayor laboratorio de física de partículas del mundo. Físicos e ingenieros de 24 Estados miembro estudian la estructura fundamental de las partículas que componen todo, y buscan comprender los mayores misterios científicos del universo. La comunidad científica del CERN utiliza GitLab para abordar el complejo desafío de hacer funcionar de manera segura y eficiente el acelerador de partículas más grande y potente del mundo, así como procesar la gran cantidad de datos que genera. Los científicos de universidades e institutos de investigación de todo el mundo también utilizan la plataforma para colaborar en proyectos compartidos.

Utilizamos software desarrollado, actualizado y alojado en GitLab como herramientas para nuestra investigación, que se centra en comprender mejor los mayores misterios del universo, incluidos el bosón de Higgs, la materia oscura y la antimateria. GitLab nos ayuda a avanzar en la física.
- Ismael Posada Trobo, Jefe de Tecnología y Gerente de Ingeniería, CERN

Crear software para investigar el universo

El CERN, fundado en 1954, activó por primera vez el Gran Colisionador de Hadrones (LHC, por sus siglas en inglés) en 2008. Considerado «uno de los mayores hitos de ingeniería de la humanidad», el colisionador es un circuito subterráneo sellado al vacío de 27 kilómetros (17 millas) con varias estructuras de aceleración que hace chocar haces de partículas para crear lluvias de nuevas partículas que reproducen las condiciones existentes en el universo instantes después de su concepción. El colisionador se diseñó para explorar conceptos como el Big Bang, la materia oscura y el bosón de Higgs.

Durante años, el CERN había utilizado múltiples herramientas de DevOps, incluido GitHub, para crear el software que necesitaba su comunidad científica. Pero los equipos necesitaban una solución más completa: un cambio a una plataforma de DevSecOps integral que agregara seguridad a todo su ciclo de desarrollo de software y aumentara la eficiencia y velocidad de entrega. Así, en 2015, adoptaron la plataforma de GitLab con GitLab Starter. Con la incorporación de la plataforma, los equipos de la instalación comenzaron a actualizar, iterar y reconstruir todo su software. A partir de entonces, todos los proyectos nuevos se crearon e implementaron con GitLab. Para aumentar aún más la eficiencia y visibilidad, pasaron a GitLab Premium en 2020 y luego a GitLab Ultimate en 2023, para aprovechar su marco de seguridad avanzado.

«Todo nuestro software, el software que hace funcionar nuestro complejo, el que ejecuta el colisionador y el que crea las colisiones, se compila y aloja en GitLab», dice Michi Hostettler, ingeniero a cargo del Gran Colisionador de Hadrones en el CERN. «Es un software importante para nosotros porque la plataforma ofrece integración, automatización, seguimiento de tickets, análisis de seguridad y documentación. Todo el desarrollo se lleva a cabo en ella».

El colisionador es un componente integral de la infraestructura y la misión científica de la instalación, por lo que el uso de software creado por GitLab para mantenerlo funcionando de manera óptima y analizar el exabyte de datos sin procesar que produce cada año es fundamental para las investigaciones de los científicos de renombre internacional. Comprender esos datos es esencial para ampliar el conocimiento que tiene la humanidad sobre el mundo.

«GitLab se considera una parte importante del ecosistema del CERN», afirma Ismael Posada Trobo, jefe de Tecnología de sistemas de control de versiones y director de Ingeniería del CERN. «Con el software desarrollado y alojado en GitLab, simulamos las colisiones de partículas y recreamos las colisiones con los datos del LHC. Esto permite a los científicos investigar e imaginar. GitLab desempeña un papel inestimable para ayudar a los desarrolladores a hacer su trabajo».

Posibilitar grandes iniciativas de investigación en colaboración a escala mundial

Los equipos de DevSecOps del CERN no solo utilizan la plataforma de GitLab para crear software. Según Trobo, el 30 % del uso de GitLab es para conectar a investigadores de universidades, laboratorios e institutos de investigación de todo el mundo a fin de que puedan comunicarse y colaborar en proyectos científicos.

Por ejemplo, los investigadores que trabajan en el experimento ATLAS, uno de los mayores esfuerzos de colaboración jamás realizados en la ciencia, utilizan la plataforma para su software Athena. El proyecto, diseñado para estudiar los componentes fundamentales de la materia, mediante el uso de todo el potencial de descubrimiento del colisionador del CERN, involucra a aproximadamente 6000 miembros y 3000 autores científicos de 182 instituciones y 42 países. Este amplio grupo de investigadores distribuidos por todo el mundo necesitaba una forma de visualizar el trabajo de los demás, ofrecer información y trabajar en conjunto en la resolución de los problemas. La plataforma de DevSecOps de GitLab les proporcionó las herramientas para lograrlo.

«El proyecto ATLAS Athena no solo es grande en términos de líneas de código, datos que se analizan o la cantidad de científicos que participan», dice Zach Marshall, coordinador de computación del experimento ATLAS y científico sénior del Laboratorio Nacional Lawrence Berkeley. «Sin dudas, es el proyecto de mayor envergadura e impacto que hemos emprendido, en todos los sentidos. En última instancia, necesitábamos una solución eficaz y colaborativa para abordar un proyecto tan grande y dinámico. Por eso, todo lo que hacemos se concentra en GitLab. Es importante para nuestros científicos. Ya sea que estén desarrollando software o escribiendo artículos, podemos compartir conocimientos, iterar y colaborar fácilmente en tiempo real.

«Esto permite que la investigación se lleve a cabo con mayor rapidez y eficacia», agrega. «Gran parte de nuestro trabajo colaborativo se realiza a través de GitLab. Los investigadores pueden trabajar en GitLab, consultar el proyecto y ver los progresos. Pueden agregar comentarios y dar su opinión. La plataforma acelera nuestro trabajo».

Reducir de la cadena de herramientas y aumentar la seguridad a la vez

Los equipos de DevSecOps del CERN redujeron su cadena de herramientas que antes incluía soluciones como Jenkins, Bamboo y GitHub. Según Trobo, la cadena compuesta de 5 herramientas se reemplazó por completo por la plataforma única de GitLab.

Al deshacerse de su cadena de herramientas, evitan cambiar el contexto, así como tener que actualizar, administrar y pagar por múltiples herramientas. Además, el uso de una plataforma integral también mejora la seguridad de la cadena de suministro de aplicaciones y software de la instalación. Y eso significa que también aumenta la seguridad para la investigación científica, los científicos y la valiosa reputación del CERN.

«Como cualquier otra organización, universidad o empresa, el CERN enfrenta ataques constantes. Respetando el carácter académico de nuestra organización, adaptamos un enfoque de seguridad para garantizar nuestra protección», explica Trobo. «GitLab nos ayuda a definir políticas de seguridad y marcos de cumplimiento para todos los desarrolladores y para toda la comunidad. Eso es esencial para nosotros».

Un beneficio de seguridad significativo que el CERN obtuvo con GitLab, junto con el análisis automatizado, la detección de secretos y las pruebas estáticas de seguridad de las aplicaciones, fue la capacidad de visualizar el enfoque de seguridad de sus aplicaciones. Gracias a los paneles integrados, los equipos pueden ver automáticamente una recopilación de métricas, valoraciones y gráficos de las vulnerabilidades detectadas por los escáneres de seguridad de la plataforma. Toda la información se reúne en un solo lugar.

«Recibo resultados de análisis para todo, desde vulnerabilidades hasta hallazgos críticos relacionados con políticas y resoluciones de aprobaciones necesarias para políticas de análisis específicas», dice Trobo. «Es muy útil porque los paneles nos brindan una descripción general donde podemos ver todos los hallazgos de seguridad en un solo lugar. Ahora sabemos exactamente lo que está sucediendo en todos nuestros proyectos. Los informes se crean casi de forma automática. Basta con un clic para que un proyecto sea más sólido».

Los runners de GitLab permiten ahorrar tiempo y dinero, así como evitar ineficiencias

Hace unos años, los miembros del equipo de DevSecOps del CERN dedicaban mucho tiempo a crear sus propios runners, que operaban las compilaciones en pipelines. Solo tenían alrededor de 40 runners en hasta 80 trabajos simultáneos en todo su ecosistema. Actualmente, esa cifra se triplicó porque confían en los runners de GitLab, que permiten automatizar el proceso de entrega de software. Como resultado, pueden agregar valor más rápidamente y entregar código de calidad con mayor frecuencia.

El CERN comenzó a usar más runners en el verano de 2023 cuando GitLab ofreció actualizaciones de runners como parte del lanzamiento de GitLab 16. Las nuevas instancias de los agentes ligeros y escalables que ejecutan jobs de CI/CD se pueden crear en GitLab, en lugar de que los desarrolladores tengan que crear sus propios runners privados. La plataforma también permite a los equipos reutilizar las configuraciones de runners para registrar varios runners con las mismas capacidades y aprovechar Kubernetes, que automatiza la gestión de contenedores e incluye comandos para la implementación de aplicaciones.

«Ahora toda la comunidad del CERN puede usar los runners de GitLab, en lugar de desperdiciar tiempo creando sus propios runners», dice Trobo. «El uso que hacemos de los runners se está disparando. Esta automatización ahorra tiempo a los desarrolladores, que ahora pueden concentrarse en tareas más importantes. Eso nos ahorra dinero y nos permite ampliar nuestro desarrollo de software de manera más eficiente».

Alejandro Iribarren, miembro del consejo de administración de AlmaLinux y líder de Tecnología de Ingeniería en el CERN, señala que algunos de sus flujos de trabajo automatizados son un buen ejemplo de ello.

«Estos flujos de trabajo nos permiten crear nuevas imágenes en la nube, crear instancias de múltiples máquinas virtuales y físicas, probarlas con varias configuraciones y, si se aprueban todas las pruebas, pasar automáticamente nuevas imágenes a la producción, todo con un solo clic», agrega. «Gracias a estos pipelines de CI, ahora podemos actualizar nuestras imágenes en la nube con mucha más frecuencia y a la vez confiamos mucho más en el resultado final. El mayor beneficio de la CI de GitLab es que nos permite reducir la cantidad de aspectos de los que debemos preocuparnos».

De cara al futuro con software basado en IA

Los equipos de DevSecOps del CERN aún no han comenzado a probar las capacidades de inteligencia artificial (IA) en la plataforma, pero Trobo dice que están ansiosos por comenzar a hacerlo. «Los desarrolladores hablan sobre ese tema. Me preguntan cuándo pueden usar las funcionalidades de IA en GitLab», agrega. «Sabemos que contar con IA ayudará a nuestra comunidad a desarrollar un mejor código».

Trobo dice que gracias a herramientas de GitLab Duo como generación de pruebas, explicación del código y resolución de vulnerabilidades, sus equipos son más eficientes, ahorran dinero y dedican menos tiempo a tareas repetitivas y más tiempo a crear software innovador. «En GitLab Duo, se puede editar el código sobre la marcha, lo que ayuda a ganar mucha velocidad», señala. «Contar con herramientas que ayuden a los desarrolladores a lo largo de todo el ciclo de desarrollo del software mejora notablemente su productividad. Les facilitará el trabajo.

«Aquí hay un claro deseo de utilizar inteligencia artificial», dice Trobo. «El CERN es una de las organizaciones científicas más avanzadas, conocida por utilizar tecnologías de vanguardia. Debemos ser pioneros en el uso de la IA».

Los miembros del equipo del CERN consideran que GitLab es una pieza clave para el desarrollo y la investigación, ya que permite un desarrollo de software, un análisis de datos y una colaboración científica global más eficientes. Dada la diversidad de casos de uso y sus beneficios, Trobo espera ampliar el uso de la plataforma en el CERN. «Cuando alguien desarrolla, revisa, gestiona proyectos, hace un seguimiento de los tickets, realiza análisis de seguridad o implementa, lo hace en GitLab», agrega. «Sea cual sea la tarea, todos trabajan en GitLab. No creo que eso cambie».

«Sabemos que contar con IA ayudará a nuestra comunidad a desarrollar un mejor código», afirma Ismael Posada Trobo, jefe de Tecnología y director de Ingeniería del CERN. «Contar con herramientas que ayuden a los desarrolladores a lo largo de todo el ciclo de desarrollo del software mejora notablemente su productividad. Les facilitará el trabajo.

Toda la información y las personas involucradas en el estudio de caso son precisas en el momento de la publicación.

¿Todo listo para empezar?

Descubra cómo la plataforma de DevSecOps con tecnología de IA más completa puede ayudar a su equipo.