WikiPrint - from Polar Technologies

Resource Configuration

The configuration file resources.conf is used to describe computing resources. When you start DRM4G, resources.conf file is copied under ~/.drm4g/etc directory by default if it does not exist or under whatever directory specified with DRM4G_DIR. The file can be edited directly or by executing the drm4g resource edit command.

Configuration format

The configuration resource file consists of sections, each led by a [section] header, followed by key = value entries. Lines beginning with # are ignored. Permitted sections are [DEFAULT] and [resource_name].

DEFAULT section

The DEFAULT section provides default values for all other resource sections.

Resource section

Each resource section has to begin with the line [resource_name] followed by key = value entries.

The name of a resource cannot include this character ":". The DRM4G won't be able to send jobs to a resource with that character in its name.

Configuration keys common to all resources:

Note that for communicator you have two options when it comes to accessing a resource through the ssh protocol. If you don't know which one you prefer use ssh.

Keys for non-grid resources such as HPC resources:

Keys for grid resources:

Keys for FedCloud resources:

FedCloud resources are a bit different than the rest. They are not considered to be hosts so they won't be listed when using the command drm4g host and therefore won't be used to execute jobs. Their only function is to connect to a machine with a cloud proxy certificate (X.509 certificates) capable of giving you access to cloud resources.

The values of the next configuration keys can be customized at your discretion. A new cloud configuration file has been added to the DRM4G called "cloudsetup.json" for this reason. This resource keys reference the information saved in this cloud configuration file.

Where and how to get the correct values for your cloud configuration file as well as a more in depth explanation of some of these configuration keys can be found in the section How to configure an EGI FedCloud VM.


A few extra things to take into consideration:

Examples

By default, DRM4G is going to use the local machine as fork lrms:

[localmachine]
enable            = true
communicator      = local
frontend          = localhost
lrms              = fork
max_jobs_running  = 1

TORQUE/PBS cluster, accessed through ssh protocol:

[meteo]
enable            = true
communicator      = ssh
username          = user
frontend          = mar.meteo.unican.es
private_key       = ~/.ssh/id_rsa
lrms              = pbs
queue             = short, medium, long
max_jobs_running  = 2, 10, 20
max_jobs_in_queue = 6, 20, 40

SGE cluster, accessed through ssh protocol:

[blizzard]
enable            = true
communicator      = op_ssh
username          = user
frontend          = blizzard.meteo.unican.es
private_key       = ~/.ssh/id_rsa
parallel_env      = mpi
lrms              = sge
queue             = long
max_jobs_running  = 20
max_jobs_in_queue = 40

ESR virtual organization, accessed through a grid user interface:

[esrVO]
enable            = true
communicator      = local
username          = user
frontend          = ui.meteo.unican.es
lrms              = cream
vo                = esr
bdii              = bdii.grid.sara.nl:2170
myproxy_server    = px.grid.sara.nl

FedCloud virtual organization

[cesnet_metacloud]
enable         = true
communicator   = ssh
username       = user
vm_communicator= op_ssh
vm_user        = drm4g_admin
frontend       = ui.meteo.unican.es
private_key    = ~/.ssh/id_rsa
lrms           = fedcloud
cloud          = EGI FedCloud - CESNET-METACLOUD
myproxy_server = myproxy1.egee.cesnet.cz
flavour        = Small
virtual_image  = Ubuntu-14.04
nodes          = 1
volume         = 0