ORBIT Services
The services and software running on each of the two servers is listed below. Configuration of individual services is explained in detail as well
Service name | Hosting Machine |
DHCP | dhcp1,dhcp2 |
DNS | dhcp1, dhcp2 |
LDAP | dhcp1, dhcp2 |
NTP | dhcp1 |
TFTP | repository1 |
PXE | repository1 |
Frisbee | repository1 |
NFS | repository3 |
Apt | repository3 |
Mysql | internal1 |
OML collection server | idb1 |
Apache | external3,external1 |
CMC | internal1 |
Aggmgr | repository1 |
XMPP | XMPP1 |
Ejabbberd | Internal1 |
Node Status | Internal3 |
OpenFlow | OFC1, OFC2, Internal2 |
External1 , External3 |
DHCP
Purpose: This software runs a DHCP server that assigns IP addresses to clients on demand
DNS
Purpose: Services.orbit-lab.org” hosts the primary DNS service for the zone orbit-lab.org. The DNS server is the standard BIND9 software packaged with Linux
Apache Web Server
Purpose: Apache server is required for maintaining the ORBIT local repository for debian packages and also to view the results of the experiment
Repository
Purpose: This serves as the debian package repository for local ORBIT packages (such as OML, OTG, Libmac, nodeAgent etc). It uses apache services to fetch and distribute debian packages. For this service, it is sufficient to install just the ORBIT packages. There is no need to mirror the entire debian repository which can be easily accessed by syncing with the external debian repository.
NTP
Purpose:
All the machines synchronize their time using the time server as the reference.
TFTP Server
Purpose: TFTP is needed to install PXE images whenever you need to install an image onto the node (using Frisbee). It is also used to load a memory based image that can be used to fetch the current image of the node into the repository
NFS Service
Purpose: This service is used to remotely mount directories on the nodes while fetching their image using imagezip utility. Also, Frisbee service makes use of this directory to install images onto nodes.
Mysql Server
Purpose: This service is used to store the results of the experiments conducted on ORBIT
OML Server (Collection Server)
Purpose:
This service is used to collect the measurements of the experiments at runtime from the nodes and store them into the mysql database.
Installation:
apt-get install oml-collection-server — outdated
We now use oml2 packages for collecting Data on OML Server Configuration:
This service is configured by the corresponding gridservice.
Gridservices
Purpose:
This service is for fetching and installing images from and to the nodes and used the Frisbee utility from University of Utah to distribute the image in the form of chunks using multicast.
Node Handler (runs on console machine for the grid and all the sandboxes)
Purpose: NodeHandler is used to run the experiments from the console using reliable multicast to disseminate commands to the nodes. It also initializes measurement collection appropriately. It primarily uses ruby scripts to do the same.
XMPP
OMF now uses the xmpp protocol to communicate between console and nodes. Currently we are using 2 different softwares Openfire for
omf-5.2 and Ejabber for omf-5.3