BonFIRE logo and link to main BonFIRE site

Table Of Contents

Previous topic

Getting Monitoring Data After Experiment Lifetime

Next topic

BonFIRE EaaS - Elasticity as a Service

This Page

Discovering Physical Hosts and their Status

Since release 4.1, it is possible to list the physical hosts of the different locations. Privileged users (member of a privileged group) can also get details about the status of these hosts.

It is important to note here that all testbeds provide a description of their physical infrastructure to support reservation, but it is only required that this description accuratly describes capacity, not real machines. For testbeds that do not describe real machines, or that do not support compute creation on specific hosts or clusters, the information available about host status can be quite different from real hosting conditions.

Nevertheless, for all practical purposes, the folowing testbeds are currently exposing accurate information through this interface:

  • fr-inria
  • uk-epcc
  • be-ibbt

Hosts of a given location

Assuming that you have installed and set up cURL to post OCCI HTTP messages to the BonFIRE API, this is how you list hosts.

$ curl -k -i https://api.bonfire-project.eu/locations/<location_id>/hosts -u BONFIRE_USER \
  -H 'Content-Type: application/vnd.bonfire+xml'

Details about a host

$ curl -k -i https://api.bonfire-project.eu/locations/<location_id>/hosts/<host_id> -u BONFIRE_USER \
  -H 'Content-Type: application/vnd.bonfire+xml'


  <?xml version="1.0" encoding="UTF-8"?>
  <host xmlns="http://api.bonfire-project.eu/doc/schemas/occi" href="/locations/fr-inria/hosts/node-1" name="node-1">
    <link rel="metrics"
    href="/locations/fr-inria/hosts/node-1/hostmetrics/aliases"
    type="application/vnd.bonfire+xml"/>
    <link rel="raw_metrics" href="/locations/fr-inria/hosts/node-1/hostmetrics/raws" type="application/vnd.bonfire+xml"/>
    <link rel=" status" href="/locations/fr-inria/hosts/node-1/status" type="application/vnd.bonfire+xml"/>
    <cpu_model>Intel(R)_Xeon(R)_CPU_5148_@_2.33GHz</cpu_model>
    <cpu_smt_size>4</cpu_smt_size>
    <cpu_smp_size>2</cpu_smp_size>
    <cpu_ht_enabled>false</cpu_ht_enabled>
    <memory_total_available>3238956</memory_total_available>
    <net_bandwidth>1*1Gb</net_bandwidth>
    <cluster>pe-1950</cluster>
    <allocation_blocs>16</allocation_blocs>
    <name>node-1</name>
  </host>

Status of a host

Privileged users can get additional information: the API will return precise information about the status of the host, namly

  • the number of allocation block held by a reservation, and not used by VMs using that reservation
  • the number of allocation blocks held by VMs
  • the list of reservations using that host
  • the list of experiments using that host, with the list of VMs running under that experiment.
$ curl -k -i https://api.bonfire-project.eu/locations/<location_id>/hosts/<host_id>/status -u BONFIRE_USER \
  -H 'Content-Type: application/vnd.bonfire+xml'


<?xml version="1.0" encoding="UTF-8"?>
<host xmlns="http://api.bonfire-project.eu/doc/schemas/occi"
      href="/locations/fr-inria/hosts/node-1/status">
  <used_allocation_blocks>2</used_allocation_blocks>
  <reserved_allocation_blocks>2</reserved_allocation_blocks>
  <tcpu>400</tcpu>
  <acpu>300</acpu>
  <tmem>3238956</tmem>
  <amem>2429217</amem>
  <reservations>
    <reservation href="/reservations/40695">
      <allocation_blocs>2</allocation_blocs>
      <start_time>1427877640</start_time>
      <name/>
      <walltime>7196</walltime>
      <scheduled_start>1427877640</scheduled_start>
      <group>dmargery</group>
    </reservation>
  </reservations>
  <experiments>
    <experiment href="/experiments/56230">
      <vms>
        <vm>
          <name>vm0</name>
          <allocation_blocs>2</allocation_blocs>
        </vm>
      </vms>
    </experiment>
  </experiments>
</host>