The Fenix User and Resource Management Service (FURMS) has recently been put to production usage by several partners of the Fenix consortium. The FURMS service facilitates the intuitive management of federated resources in the Fenix Research Infrastructure.
In the FURMS approach of federated resource management, sites register their services and associated resources in the central FURMS instance. According to an agreement among the providers of the Fenix infrastructure, these resources are distributed among a set of communities by fixed portions. Initially, 25% of the available resources are allocated to the Human Brain Project (HBP) and 15% go to PRACE to support European researchers at large. The remaining budget is distributed at the discretion of the participating sites.
Resources allocated to communities are further distributed to projects within the community scope. It is up to the communities to establish appropriate review processes for granting resources to projects. Whenever a project is equipped with resources in FURMS, it will be provisioned at the originating site of these resources. This includes the provisioning of any users within the project that have access to the corresponding services in the project scope, as well as the allocation of appropriate local resources. In order to allow users to access HPC systems via SSH, corresponding keys must be installed at each of the sites. This is supported by FURMS. It can also be configured to respect any site-specific requirements, particularly specific extra options for the keys, such as the from-clause to restrict the set of potential source hosts for SSH connections. Users may change their SSH keys from the central FURMS instance, upon which the updated keys will be distributed to the target sites.
To facilitate the interactions between the central FURMS instance and the sites, each site is running a local agent, accepting messages via the message broker and responding via the same path. The communication among FURMS and the sites is largely based on a messaging architecture to better decouple the central FURMS instance and the sites. This allows for greater independence when it comes to maintenance or outages of either the central FURMS instance or the site local agent. Furthermore, both the central FURMS instance as well as the site-local agents need to be able to initiate communication, such that there is no clear distinction of fixed client and server roles. The processes involved require collaboration not only among FURMS and the sites. During development, there are multiple staff groups involved at each of the sites to implement the entirety of expected actions. Among others, project and user provisioning and de-provisioning must be handled as well as resource allocations including updated allocations and accounting of consumed resources. These interactions are available via the protocol among FURMS and the site-local agents.
At the time of writing, two out of five partners have put FURMS into full production usage with two more partners in their final stages of development and to follow soon.
Figure 1: FURMS landscape including site-local agents, central FURMS instance and message broker.
Watch the recorded webinar below in order to know more about this service.