This is a collaborative space. In order to contribute, send an email to maximilien.chaumon@icm-institute.org
On any page, type the letter L on your keyboard to add a "Label" to the page, which will make search easier.

How to register a resource on Brainlife

To run Apps on Brainlife, you need to use resources. It is possible to use shared compute resources but because these resources are available to all BL users, users must often wait on the queue for requested tasks to get executed. To circumvent this issue, it is possible, if you have resource owner privilege, to register your own compute resources. To get more details, check out the Brainlife documentation.

 

Get the resource owner privilege

When you have an IU email address (ask Aina to create one for you), you can go there https://access.iu.edu/Accounts/Create, and follow the steps to create your IU account. Then request for slate, slate-project, bigred3, carbonate, and other accounts:

Then, you also have to request to enable ssh key login. To do so you have to agree to this form: https://hpceverywhere.iu.edu/forms/agree#/agree

Next step is to ask to the ICM IT team to enable the connection to a host outside the lab by creating a ticket (see Problem encountered when connecting via SSH to a UI remote server).

Finally, you can follow the steps described here: https://kb.iu.edu/d/aews to add you ssh public key to the authorized_keys of the remote server.

To log in to the remote system (for instance carbonate), use:

$ ssh <userID>@carbonate.uits.iu.edu

 

Configure resources

Once you are logged in the remote system:

 

  1. Install Brainlife's default ABCD hooks:

git clone https://github.com/brain-life/abcd-spec

Add one of following to your remote ~/.bashrc according to the account you have requested in the “Get the resource owner privilege” step:

  • For PBS and Slurm clusters

export PATH=~/abcd-spec/hooks/slurm:$PATH

  • For direct execution

export PATH=~/abcd-spec/hooks/direct:$PATH

 

2. Add common binaries in your .bashrc:

export PATH=$PATH:/N/u/brlife/BigRed3/app/node-v12.13.0-linux-x64/bin export PATH=$PATH:/N/u/brlife/Carbonate/bin module load singularity 2>/dev/null export SINGULARITY_CACHEDIR=/N/slate/$USER/singularity export SINGULARITY_BINDPATH=/N/slate/$USER/scratch,/geode2/home export PATH=/N/u/brlife/Carbonate/abcd-spec/hooks/slurm:$PATH

3. Create directories:

 

Register resources

To register your resource, go to the Resource page on BL, and click "Add New Account". If you don’t see that button, ask Soichi to update your BL account. A resource entry form should appear and you have to fill the following fields:

  • Name: enter the name of the resource, you can name your resource whatever you like, but you should make it clear that it's your personal resource - not shared

  • Hostname: the hostname of your compute resource (usually a login/submit host). For Carbonate, use carbonate.uits.iu.edu

  • Username: username used to ssh to this resource

  • Workdir: directory used to stage and store generated datasets by Apps: /N/slate/<userid>/scratch

  • SSH Public Key: copy the content of this key to your resource's ~/.ssh/authorized_keys.

 

You can leave the rest of the fields empty for now.

Once you are finished with copying ssh key and make sure the workdir exists, click "Test" button to see if Brainlife can access your resource. You should see a green checkbox if everything is good.

 

From now on, you are able to add your Apps to your private resource by editing it: