Desarrollador(es) | NorduGrid , NeIC, proyectos de la UE |
---|---|
Lanzamiento inicial | 13 de abril de 2004 ( 13 de abril de 2004 ) |
Versión estable | 6.21 / 7 de noviembre de 2024 ( 07/11/2024 ) |
Repositorio | github.com/nordugrid/arc |
Escrito en | C++ , PHP , Perl , Python , Shell |
Sistema operativo | Linux , Microsoft Windows , Mac OS X |
Disponible en | Inglés, ruso, sueco |
Tipo | Computación en red |
Licencia | Licencia Apache 2.0 [1] |
Sitio web | www.nordugrid.org |
Advanced Resource Connector ( ARC ) es un middleware de computación en red introducido por NorduGrid . Proporciona una interfaz común para el envío de tareas computacionales a diferentes sistemas de computación distribuida y, por lo tanto, puede habilitar infraestructuras de red de diversos tamaños y complejidades. El conjunto de servicios y utilidades que proporciona la interfaz se conoce como ARC Computing Element (ARC-CE). [2] La funcionalidad de ARC-CE incluye almacenamiento en caché y almacenamiento de datos, desarrollados para respaldar la computación distribuida con uso intensivo de datos. [3] ARC es un software de código abierto distribuido bajo la Licencia Apache 2.0. [1]
ARC apareció (y todavía se menciona a menudo) como el middleware NorduGrid , propuesto originalmente como una arquitectura sobre el Globus Toolkit [4] optimizado para las necesidades de computación de física de alta energía para los experimentos del Gran Colisionador de Hadrones . [5] La primera implementación de ARC en el banco de pruebas NorduGrid tuvo lugar en el verano de 2002, y en 2003 se utilizó para respaldar cálculos complejos. [6]
La primera versión estable de ARC (versión 0.4) salió en abril de 2004 bajo la Licencia Pública General GNU . [7] El nombre "Advanced Resource Connector" se introdujo para esta versión para distinguir el middleware de la infraestructura. Ese mismo año, el proyecto nacional sueco de red eléctrica Swegrid se convirtió en la primera infraestructura multidisciplinaria de gran tamaño basada en ARC. [8]
En 2005, NorduGrid se estableció formalmente como una colaboración para apoyar y coordinar el desarrollo de ARC. [9] En 2006 se lanzaron dos proyectos estrechamente relacionados: Nordic Data Grid Facility , que implementa una infraestructura pan-nórdica de e-ciencia basada en ARC, y KnowARC, centrado en transformar ARC en un middleware Grid de próxima generación. [10]
ARC v0.6 se lanzó en mayo de 2007, convirtiéndose en la segunda versión estable. [11] Su característica principal fue la introducción de la biblioteca de cliente que permite un desarrollo sencillo de aplicaciones de nivel superior. También fue la primera versión de ARC que hizo uso de estándares abiertos, ya que incluía soporte para JSDL . Más tarde ese año, se puso a disposición la primera vista previa de la tecnología del middleware ARC de próxima generación, aunque no se distribuyó con ARC en sí. [12] El nuevo enfoque implicó cambiar a una arquitectura basada en servicios web y, en general, una refactorización muy sustancial del código central. [13]
En 2008, el consorcio NorduGrid adoptó la licencia Apache para todos los componentes ARC. [14]
La última versión estable de la línea 0 fue ARC v0.8, enviada en septiembre de 2009. [15] Finalmente incluyó una versión preliminar del nuevo servicio de ejecución ( A-REX ) y varios otros componentes, como Chelonia , ISIS , Charon y la GUI arcjobtool . [16]
En paralelo a ARC v0.8, el proyecto KnowARC de la UE lanzó en noviembre de 2009 la suite conceptual ARC NOX , que era una solución Grid completa, totalmente basada en tecnologías de servicios web . [17] El nombre NOX en realidad indica la fecha de lanzamiento: noviembre del Año del Buey . [17]
En mayo de 2011, NorduGrid lanzó ARC v11.05 (adoptando esta vez el esquema de versiones de Ubuntu). Esta versión marcó la transición completa del antiguo servicio de ejecución a A-REX y los servicios que lo acompañan. Para lograr compatibilidad con las infraestructuras existentes, se conservaron las interfaces antiguas para el servicio de ejecución y el sistema de información. [18]
ARC 6 se lanzó en mayo de 2019 [19] y, si bien tiene las mismas interfaces, presenta una configuración completamente rediseñada y una nueva herramienta de administración. [20]
ARC es un software libre disponible en el repositorio público de NorduGrid, tanto en forma de paquetes binarios para una variedad de sistemas Linux y fuentes, como en GitHub. [21] El desarrollo de código abierto del middleware ARC está coordinado por la colaboración NorduGrid . Las contribuciones al software, la documentación y las actividades de difusión provienen de la comunidad y de varios proyectos, como los proyectos EU KnowARC y EMI, NDGF , NeIC y varios proyectos nacionales de infraestructura e investigación.
Entre 2011 y 2018, ARC utilizó un esquema de control de versiones similar al de Ubuntu para las versiones agrupadas que constan de componentes individuales. Los componentes individuales tienen su propia versión, que corresponde a las etiquetas de código. [22] La versión de los paquetes principales de ARC se utiliza a menudo en lugar del número de versión formal en la comunicación cotidiana. A partir de ARC6 (2019), el número de versión de la versión coincide con el de la etiqueta.
ARC implementa varios estándares del Open Grid Forum , en particular, JSDL , Glue2, BES, UR/RUS y StAR. [23]
Entre 2010 y 2013, varios componentes clave de ARC (en particular, HED, A-REX, clientes y bibliotecas) se incluyeron en la pila de software de la Iniciativa Europea de Middleware (EMI). A través de la EMI, ARC pasó a formar parte de la Distribución Unificada de Middleware (UMD) de la Infraestructura de Red Europea (EGI).
ARC es la base de la infraestructura informática de Nordic Data Grid Facility (NDGF), que constituye un centro de nivel 1 de WLCG . Entre 2006 y 2010, NDGF contribuyó activamente al desarrollo de ARC y, desde 2010, proporciona experiencia en la implementación de ARC dentro de EGI . Desde 2012, NDGF pasó a formar parte de Nordic e-Infrastructure Collaboration como un proyecto de nivel 1 nórdico (NT1). [24]
La tecnología de intercambio de conocimientos técnicos basada en servicios ARC y estándares abiertos (KnowARC) fue un proyecto de investigación específico del Sexto Programa Marco , financiado con la prioridad IST-2005-2.5.4 "Tecnologías, sistemas y servicios avanzados de red" desde junio de 2006 hasta noviembre de 2009. [25] [26] En muchos sentidos, este proyecto fue el que dio forma a ARC. El objetivo principal era hacer que ARC se basara en estándares comunitarios abiertos y, entre los resultados clave, se encontraba la creación del entorno de alojamiento estandarizado para los servicios ARC (HED).
Además de su objetivo principal de seguir desarrollando ARC, [13] contribuyó al desarrollo de estándares, [27] y aumentó el uso de Grid y ARC en medicina y bioinformática. [28] [29]
En julio de 2009, KnowARC anunció que contribuía a la integración de las tecnologías Grid en los repositorios oficiales de Linux agregando componentes Globus Toolkit a los repositorios de Fedora y Debian . [30]