Depending on the type of
experiments, the workflows can vary. An example of a simple experiment setup
workflow is as follows:
- The user defines the
experiment on the BonFIRE portal.
- 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.
- 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.
- 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.
- 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.
|