3. Installation

For virtual node simulating server or PDU, either bare-metal machine (server, laptop, desktop) or virtual machine can host one. It requires configuring network (either corresponding physical one or virtual one, even mixing physical and virtual network together for hybrid configuration) in order to compose one infrastructure containing virtual servers, PDUs and specified network topology.

Here’s requirement on hardware environment and virtualization environment running InfraSIM:

3.1. Requirement

3.1.1. Pre-requisite

Several mandatory configuration has to be made as below which is required to accommodate InfraSIM virtualization-nesting design. How to install VMWare ESXi describes a example of how to achieve them when installing and configuring VMWare ESXi.

  1. Virtual InfraSIM servers runs in the best performance if hardware-assisting technology has been enabled on underlying physical machines. These technology includes VT-d feature and AMD-V for processors from Intel and AMD.


    Physical machine - enable VT-d in BIOS

  2. When virtual server is running inside VM, it also requires underlying hypervisor passing down the hardware-virtualization-assisting to virtual machine it spawn.


    VMWare ESXi hypervisor - Set “vhv.enable = “TRUE”


    InfraSIM running on VirtualBox will have performance penalty when running specific work load (deploying operating system, running compute-intensive application inside virtual server). This is because VirtualBox doesn’t support simulating a platform which is capable of supporting hardware-virtualization-assisting feature.

  3. Ensure Promiscuous Mode of virtual switch, virtual network controller has been enabled for underlying hypervisors hosting virtual machines running InfraSIM inside. Here’s example on how to achieve it on top VMWare ESXi


    Promiscuous Mode - How to install VMWare ESXi

3.1.2. Resource Requirement

  • 1 physical CPU or 1 virtual CPU
  • 4GB memory
  • 16GB disk space
  • 1 virtual or physical NIC

3.1.3. Software environment

Ubuntu Linux 64-bit - 16.04 is recommended

3.2. Virtual Server

3.2.1. As Python Application

  1. Ensure sources.list integrity then install dependency:

    sudo apt-get update
    sudo apt-get install python-pip libpython-dev libssl-dev libaio-dev bridge-utils git
  2. Install setuptools:

    sudo pip install setuptools
  3. Select either one of below ways to install infrasim:

    • install infrasim from source code:

      git clone https://github.com/InfraSIM/infrasim-compute.git
      cd infrasim-compute
      sudo pip install -r requirements.txt
      sudo python setup.py install
    • install infrasim from python library:

      sudo pip install infrasim-compute

3.2.2. As Docker Image

We also provide docker support in `InfraSIM tools<https://github.com/InfraSIM/tools/tree/master/docker>`_.

You can get:

  • Dockerfile to build your InfraSIM docker image
  • docker.py to setup a self-defined InfraSIM cluster in your environment, it has several docker runtimes hosting

InfraSIM virtual node respectively, with openvswitch connection powered by pipework