Creating your Aggregate Manager (AM): software options

There are some options for the software running on your AM.

Some are full suites that fully manage the entire testbed as well as providing the AM interface. Others are thin layers that bridge the AM interface to existing testbed management software.

Lightweight AM interface

GCF - Geni Control Framework

Site: https://github.com/GENI-NSF/geni-tools

This python AM can be used to wrap existing testbed software.

Based on GCF, the docker AM example was created: https://github.com/open-multinet/docker-am

This AM provides resources using docker containers. Note that this is meant as a demo: the aim is not to offer the containers as actual testbed resources. This is a useful as a starting point, for testbeds that need to:

  • implement a wrapper between the Geni AM API v3 and a proprietary testbed API and use this docker AM as a template/example.
  • Host resource management software in a container. Users will connect to this container and then use testbed specific tools to manage the testbed resources. This docker AM provides then a docker container per user and the needed authentication/authorisation/reservation.
  • Provide access to resources through a “skip node”/”proxy”/”jumphost”/”gateway” (which runs in a container). This can substitute a vpn solution with ssh proxying.

Testbed management software with AM interface

Emulab

Site: https://www.emulab.net

Emulab is powerful testbed management software, that includes support for hardware network links. It is written mostly in perl, and is quite complex to install. This can be used if you have only hardware and no testbed management software.