Baremetal/VM Topologies
These topologies differ in containerized deployments in their services section, we will go over how to specify the services section in the xml below. The rests of the sections are the same.
Services
IP and Machinename
In this example, we want to deploy a dashboard in one machine (this machine must have ssh to the others) a iperf3-client and one iperf3-server in another. We first need the ips and ssh names of the machines in the xml which will run Kollaps.
<services>
<service name="dashboard" supervisor="true" port="8088"/>
<service name="client" machinename = "machine1" ip = "1.2.3.4" />
<service name="server" machinename = "machine2" ip = "1.2.3.5" />
</services>
Controller IP
In these experiments there must be a machine (that runs Kollaps code) that will run the controller which is responsible for starting and stopping experiments, in the dashboard entry we must specify the IP and ssh name of the machine which is responsible for this (can be one of the others).
<services>
<service name="dashboard" supervisor="true" port="8088" controllername="machine1" controller_ip="1.2.3.4"/>
<service name="client" machinename = "machine1" ip = "1.2.3.4" />
<service name="server" machinename = "machine2" ip = "1.2.3.5" />
</services>
Kollaps Folder and Files
Another necessary to have in the topology file is the location of the baremetal folder which must be in the machines (see Baremetal setup), the name of the topology file, and the name of the script which will run when you press Start (this must be in the Kollaps folder). The script is optional Kollaps will emulate a network state without it.
<services>
<service name="dashboard" supervisor="true" port="8088" controllername="machine1" controller_ip="1.2.3.4"/>
<service name="client" machinename = "machine1" ip = "1.2.3.4" kollaps_folder = "/home/ubuntu/kollaps-private/baremetal" topology_file = "topology.xml" script = "client.sh"/>
<service name="server" machinename = "machine2" ip = "1.2.3.5" kollaps_folder = "/home/ubuntu/kollaps-private/baremetal" topology_file = "topology.xml" script = "server.sh"/>
</services>