Access Now‎ > ‎Open Call Q&A‎ > ‎

How does the experiment setup procedure usually work?

posted 26 Jan 2012, 09:03 by Vegard Engen   [ updated 1 Feb 2012, 02:57 by Michael Boniface ]

Depending on the type of experiments, the workflows can vary. An example of a simple experiment setup workflow is as follows:

  1. The user defines the experiment on the BonFIRE portal.
  2. The experimenter builds the VM images that they need. To do this, they would need to create VMs using one of the supplied BonFIRE base images, then log on to them to install software and configure them. They should then use the BonFIRE facilities to save the VM image. This needs to be repeated for each different type of VM required by the experiment, although multiple identical instances of the same VM only need one VM image to be pre-configured per site. Alternatively, the user can specify the URI of a file that will be fetched and executed after the compute resource has been initialized.
  3. The user sets up the experiment. This can be done on the BonFIRE portal or using the experiment description language supported by BonFIRE (see options in 5). Experiment descriptions consist of storage and compute resources to be instantiated on one or more BonFIRE sites. These resources correspond to the VM images that the user has pre-configured in step 2. Resources can communicate when linked with each other through BonFIRE-supplied network resources. The Virtual Wall and Cells BonFIRE sites also support internal networks. In the case of the Virtual Wall, these are emulated and highly configurable.
  4. The portal triggers the deployment of the VMs as they are defined in the experiment description. After deployment of the VMs, experimenters are able to access their VMs, adjust, start/stop processes and applications. Additionally, new resources can be added at any time on any BonFIRE site. This logic must be constructed by the experimenter using APIs to the monitoring functionality and BonFIRE’s resource management APIs (OCCI).While BonFIRE gives Experimenters deep control of resources to configure, execute and manage their experiment, we also strive to make this as easy as possible to do.
  5. There are several ways in which Experimenters can use the BonFIRE API, depending on their preference. For example:

a)     Experimenters can create their experiment in a step-by-step manner via the BonFIRE Portal (GUI).

b)     Experimenters can use a command line client tool, such as Restfully, to interact with BonFIRE.

c)     Experimenters can write a script for their experiment deployment, which can be automatically executed by, e.g., Restfully.

d)     Experimenters can write a BonFIRE experiment descriptor, currently based on JSON (OVF available in a future release of BonFIRE).

e)     Experimenters can also issue raw HTTP commands via cURL, which they can also script if they wish.

For more information about using the different client tools, please click [here], or refer to the more comprehensive user documentation.

Of particular note is the “Monitoring Aggregator” compute resource. BonFIRE base images are pre-configured to include monitoring agents of the Zabbixmonitoring suite. Zabbix provides monitoring data for standard metrics (e.g. CPU load) and also allows the user to configure application-specific metrics. The BonFIRE sites also provide infrastructure monitoring data. To access the monitoring data, the user must instantiate one Monitoring Aggregator compute resource per experiment.