pawelld edited this page Oct 5, 2015 · 5 revisions

WeBIAS is a web server for publishing services. A service is a standalone command line program, which has to be supplied with certain parameters, and its output should be returned. Computations may require significant resources and time, and may have to be scheduled for later execution. Users are informed when their requests are finished and can peruse results at their convenience.

Services are defined in XML format which includes form definition and layout, a template for converting arguments to an OS command for running the actual program, description of its output, and other technical parameters such as access control lists. Optionally templates for presenting parameters and results can be supplied along with definitions of custom form elements and validator routines.

All data (requests and results) are stored in a database backend.

Users are allowed to register at the site to gain access to additional features, such as:

  • access to all requests, their status and results (anonymous users have to use a link received during submission)
  • tagging and starring requests
  • running modified instances of once submitted requests
  • access to applications restricted to certain users

Users may be also assigned a Poweruser role which enables them to perform administration tasks on particular applications and schedulers. These include:

  • access to all requests for an application or scheduler
  • enabling/disabling applications
  • monitoring activity of the computational backend (schedulers)
  • various access and usage statistics
  • comprehensive information on eventual errors

Administrator is provided with a web interface enabling:

  • access to all requests
  • blocking and reactivating users
  • enabling/disabling applications
  • monitoring activity of the computational backend (schedulers)
  • various access and usage statistics
  • comprehensive information on eventual errors

Administrator and powerusers mar request reports pertaining to server and scheduler activities to be e-mailed at selected intervals.

Actual computations are performed by so-called request schedulers which grab newly submitted requests, oversee running of the actual application and store results in the database. Schedulers may interface job queueing systems or run tasks directly. Presently three interfaces are available:

  • batch – a scheduler which directly runs a predetermined number of tasks
  • slurm – a scheduler which submits tasks to SLURM workload manager and monitors their progress
  • torque – a scheduler which submits tasks to a PBS queue and monitors their progress

Any number of schedulers may be run concurrently on the same or different servers (access to database is mandatory). Each scheduler may be restricted to handle requests for a specific application or applications.

Architecture overview

Installation and requirements

Deployment of applications

Tutorial covering installation and creating a simple application

Demo site

Clone this wiki locally
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.