14. Running Simmune on a cluster

This section describes different ways of running the Simmune Analyzer on a cluster. Setting up Simmune requires two steps. First, you'll need to set up MongoDB, next you'll have to set up the simulation servers that to the actual computational work.

14.1. Running MongoDB on Ubuntu 14.04

Mongodb can be set up using the provisioning script that is provided in the Vagrant/mongodb folder. The script itself does not rely on using Vagrant. Simply copy the contents of the folder onto a machine running Ubuntu 14.04 and run bootstrap.sh with root privileges. The script will print the passwords for the 'dbadmin' and 'useradmin' users that were generated. Keep these to access the database.

14.2. Using Vagrant to run MongoDB

Simply run vargant up, to start the VM. By default, the port to mongodb is exposed at 28018, if you prefer a different port edit the line

config.vm.network "forwarded_port", guest: 27017, host: 28018

in the file Vagrantfile. Remember to change the port information when connecting to mongodb to reflect your choice of the forwarded port.

14.3. Running the compute processes.

There are 3 different processes that carry out or distribute computations. The most important one is the "SimmuneRunner" process, which periodically queries the database for pending simulations and starts simCli processes to do the actual computations. Run SimmuneRunner --help to get a description of available options. The Runner expects a hostname, username and password to connect to the database. The username and password should match a user that was created as described in the "Administration of user accounts" section. It is useful to create a dedicated SimmuneRunner process for running preview simulations, by starting one process with the optional --preview 1 argument. This process will run simulations for the previews shown in the "Setup" panel exclusively. Running this with a maximum of four processes, using the option -n 4, is typically sufficient. The other two processes take care of running parameter fits and post-processing of simulation results such as the estimation of parameter sensitivities. The usage of these is the same except for the lack of an option of dedicated preview processes. These processes require the contents of the bin folder.