About Advanced Resource Connector

The Advanced Resource Connector (ARC) middleware integrates computing resources (usually, computing clusters managed by a batch system or standalone workstations), making them available via a secure common Grid layer. Conceptually, ARC provides an edge service to batch systems and temporary file cahes. Through this service, called ARC Compute Element (ARC-CE), users can submit computational tasks to a variety of batch systems in a uniform manner, using a generic job description language. One of the key features of ARC is that it handles input and output data movement on the server side, thus optimising bandwith consumption and increassing overall efficiency of computing resource consumption. ARC is complete with a client toolkit, which relies on resource information in order to select a best matching facility. Information about facilities is collected by dedicate probes an published via ARC-CE. Only authorised users can submit tasks, and authorisation relies on X509 proxy certificates and the concept of Virtual Organisations.

Complete documentation, including component descriptions, installation details, usage instructions, articles and presentations, can be found at the documentation page.


Until recently, ARC relied on largely proprietary technologies based on GridFTP for most communications, and LDAP for information publishing. Today, Web Service based interfaces are being actively promoted. For backwards compatibility with deployed services, both pre-WS and WS-technologies are available in ARC releases.

Background

The ARC middleware by NorduGrid (in the past called NorduGrid middleware) is a software solution that uses Grid technologies to enable sharing and federation of computing resources distributed across different administrative and application domains. ARC is used to create Grid infrastructures of various scope and complexity, from campus to national Grids. It is distributed under the Apache v2.0 license.

In a nutshell, ARC is:

Selected ARC components

ARC design principles

ARC development

 


Internal structure of ARC components


Pre-Web-service ARC

Pre-WS ARC provides a reliable implementation of the fundamental Grid services, such as information services, resource discovery and monitoring, job submission and management, brokering and data management and resource management, using customized and largely proprietary approaches. Most of these services are provided through the security layer of the GSI. The middleware builds upon standard Open Source solutions like the OpenLDAP, OpenSSL, SASL and Globus Toolkit® (GT) libraries. Pre-WS ARC provides solutions essential for creation of a distributed computing infrastructure: the A-REX, the information model and providers (both NorduGrid an GLUE2 schemas), User Interface and broker (a "personal" broker integrated into the comman-line interface), extended Resource Specification Language (xRSL), and the monitoring system.

Pre-WS ARC main components are:

  1. Grid services running on the resources: the A-REX and the information services. Grid jobs are submitted to the cluster through gridftpd and a separate session directory is created for each job. The Grid session directories are made available through the gridftpd server during and after job execution. The A-REX is a service running on a computing resource taking care of jobs, session directories and the input data cache area. Information services are implemented as probes populating the information database stored in OpenLDAP backends.
  2. Indexing services for the resources and data: a special usage of an OpenLDAP database allows to build a hierarchical mesh of Grid-connected sites. For data indexing, ARC middleware relies on 3rd-party solutions, such as e.g. the Rucio service. ARC client tools and the A-REX are capable of interacting with these services.
  3. Clients making intelligent use of the distributed information and data available on the Grid. ARC comes with a light-weight command line client, the User Interface. The ARC User Interface is a set of tools to submit, monitor and manage jobs on the Grid, move data around and query resource information. The User Interface comes with a built-in broker, which is able to select the best matching resource for a job. Grid job requirements are expressed via xRSL. Another special client is the Grid Monitor, which uses any Web browser as an agent to periodically query the distributed information system and present the results as a set of inter-linked Web pages.

ARC is designed to be a scalable, non-intrusive and portable solution. The development is user- and application-driven, with the main requirements being those of performance, stability, useability and portability. As a result of this approach, the standalone client is available for a dozen of platforms and can be installed in a few minutes. The server installation does not require a full site reconfiguration. The middleware can be built on any platform where the external software packages (like GT libraries) are available. While being deployed on a large production Grid and being used by real users, the middleware is naturally undergoing continous real life tests.

Last, but not least, ARC is designed with international users in mind: the client tools are available in several languages. The Grid Monitor is translated to more than 10 languages, and the User Interface is available not just in English, but also in Russian and Swedish. Volunteers to provide more translations are always welcomed!

.

User support, feature/bug reports, documentation

User support and site installation assistance is provided via EGI's GGUS request tracker. In addition, NorduGrid runs several mailing lists among which nordugrid-discuss is a general forum for all kind of issues related to the ARC middleware.

NorduGrid deploys the Bugzilla problem tracking system. Feature and enhancement requests, as well as discovered problems, should be reported there.

Research papers, overview talks, reference manuals, user guides, installation instructions, conference presenations, FAQ and even tutorial materials can be fetched from the documents section.

Re-use of this material is permitted as it is released into the public domain
NorduGrid homepage