First steps
From Grid5000
Contents |
How to start ?
Using a scientific instrument, distributed over different sites is far more complex than a single machine, and than a cluster.
On Grid'5000, you can only make resources reservations/submit jobs when connected on a site
(unless you use the API), on its frontend.
Basic Workflow
- (1) Connect to Grid'5000 through one of its External access
- Refer to your site homepage for further details about restrictions regarding SSH, LDAP authentication, or basically source IP
- (2) Connect to site's
frontend
- (3) Reserve some resources with OAR 2 :
oarsub ...- Exclusive access to reserved resources is guaranteed.
- (4) Deploy (eventually):
kadeploy3 ... - (5) Experiment
- (6) Enjoy !
Note
On some sites, access and frontend
are the same machine.
Both names are always defined however, to preserve homogeneous workflow.
Prepare your experiment
Interconnection between Grid'5000 sites
During the experiment setup you may need to access several Grid'5000 site, to prepare data for instance.
In order to access a site from one other, you can use the internal frontals:
-
frontend.site.grid5000.fr- Or shorter:
site.grid5000.fr.
- Or shorter:
Data setup
Each site features NFS-mounted home directories.
- All NFS servers are aliased to :
nfs.site.grid5000.fr - Home directories paths are everywhere :
/home/login
Besides, there is no synchronization of home directories between the sites.
In other words, it is up to you to handle data synchronization between your home directories.
You can use rsync or scp for instance to perform your synchronization between the frontend.site.grid5000.fr machines of the sites (FAQ).
Compilations
Please use a compute node to proceed (don't forget to reserve it before !)
- This will ensure you some homogeneity between the compilation environment and the execution environment.
Reservation
Why ?
- To gain access on a node, reservation is mandatory.
- It ensures an exclusive use of the requested resources.
How ?
Resources reservation and Jobs submission are handled by OAR2. Each site features its own OAR2 service.
- Through 1 OAR2 instance, you can reach all the clusters of a single site.
All the cluster services (reservation, deployment) are available from the site's frontend.
For a grid usage (several clusters from several sites at once), consider switching to OARGrid2 :
- A wrapper built upon OAR2 for Grid usage.
- In the backend, it relies on site's OAR2 servers for issueing the reservations.
Deployment
One of Grid'5000's strength relies on its capability to deploy a system image on user's demand.
Any user has a fine-grain control over the entire software stack on its reserved nodes:
- kernel/OS
- libraries
- frameworks
- applications
- configurations
Methodology
- Reserve your nodes
- Issue a submission of deploy type :
oarsub -t deploy ...
- Issue a submission of deploy type :
- Deploy your environment :
kadeploy3 ...
Standard or customized ?
It's a matter whether the default environment is sufficient for your experiment or it lacks some of specific librairies, softwares, ... ?
Grid'5000 staff maintain a set of system images ready to deploy and tested on each site.
- Inspect images descriptions to know what's inside and choose the one that will be the base of your customization.
User Interface (UI)
Grid'5000 interface was formerly CLI commands through ssh connections
(oarsub, kadeploy, ...).
Aside from those legacy methods, Grid'5000 services are programmatically browsable through a set of REST APIs:
- Reference API : about Grid'5000 description
- Monitoring API : about Grid'5000 resources statuses
- Metrology API : about the various metrics gathered from the nodes
- Jobs API : for jobs submissions (oarsub service)
- Deployments API : for deployments (kadeploy3 service)
On top of those APIs, a web browsable user interface has been built:
Next tutorial
- Interactive jobs on a cluster: Cluster_experiment-OAR2
