Skip to content

Installation

Carolina Fernández edited this page Oct 19, 2015 · 23 revisions

Home > Installing > Installation manual


The present document describes how to install the whole FELIX Management Stack package, including Expedient, SDNRM (Opt-in manager), CRM (VT AM) and its XEN agent.

Requirements

Please meet the following requirements strictly, or you may find several and unknown problems (e.g. in Ubuntu 12.04):

  • One (or more) GNU/Linux Debian-based distros (FELIX Management Stack) (see Note1)

    • Developed and ensured to work on Debian 7.8 (Wheezy)

    • Among others, it uses the following packages:

      • GIT
      • Apache 2.2
      • Python 2.7.3
      • Django 1.4.5 (automatically installed)
      • MySQL server (automatically installed)
      • FlowVisor (automatically installed, requires min. 2GB RAM)
    • The following packages must be installed beforehand:

      apt-get install python-pip
      pip install xmltodict==0.9.0
      pip install pytz==2014.1.1
      
  • One (or more) GNU/Linux Debian-based distros to be virtualized by XEN (server/s for C RM)

    • Developed and ensured to work on Debian 6.0.4 and 6.0.8 (Squeeze)
    • Among others, it uses the following packages:
      • GIT
      • Python 2.6.6
      • XEN hypervisor 4.0.1

    Note1: the FMS upgrading system (OFVER) [1] supports Debian-based distributions only. For other distros you may try installing the components manually and under your sole responsibility.

Installing

  1. Clone the FMS repository under folder /opt:

    su root # Installation requires root access
    git clone https://github.com/dana-i2cat/felix.git /opt/felix_git
    mkdir /opt/felix
    

    If you have not installed Git previously, do it now

  2. For Expedient, SDNRM (Opt-in), CRM (VT manager): choose the components to install as a root user. This will implicitly trigger OFVER:

    cp -Rp /opt/felix_git /opt/felix/ocf
    cd /opt/felix/ocf
    git checkout ocf
    cd /opt/felix/ocf/deploy
    python install.py
    

    You will see now a graphical interface where you can choose the software modules by pressing the space key. For a typical FELIX installation you should install expedient, optin_manager and vt_manager.

    Now, the following actions will take place:

    • Install dependencies (e.g. FlowVisor)
    • Build Certificates (see Note 2)

    For each component, the following actions will take place:

    • Configure Apache
    • Set file permissions
    • Modify the localsettings.py or mySettings.py depending on the component being installed
    • Populate database

    Note2: When installation starts, ofver will ask if it is an OFELIA project installation or not. This has a number of implications, such as the type of templates downloaded and so on. Select no for FELIX (non-OFELIA) testbeds.

    Note3: When installing the component, you will need to create the certificates for the Certification Authority (CA) first and for the server later. Do not use the same Common Name (CN) for both of them, and make sure that the CN you use in the server later certificate (you can use an IP) is the same you then set in the SITE_DOMAIN field in the localsettings.py file.

  3. For SERM, access the deploy folder and run the installation script:

    cd modules/resource/manager/stitching-entity/deploy
    ./install.sh
    
  4. For TNRM, refer to its README document.

  5. For RO, access the deploy folder and run the installation script:

    cd modules/resource/orchestrator/deploy
    ./install.sh
    
  6. For CBAS, follow its Wiki page for details on installation and configuration.

  7. For OXAD (XEN agent for virtualization purposes):

    Create the directory, clone the repository and checkout to the ocf branch:

    mkdir -p /opt/ofelia/oxa
    git clone https://github.com/dana-i2cat/felix.git /opt/ofelia/oxa/repository
    cd /opt/ofelia/oxa/repository
    git checkout ocf
    

    The tree should look like:

    marc@foix:/opt/ofelia/oxa$ tree . -L 1
    └── repository    
    

    Trigger OFVER[1] install by performing the following as a root user (see Note 3):

    cd /opt/ofelia/oxa/repository/vt_manager/src/python/agent/tools
    ./ofver install
    

    Note4: Depending on the OS and Python version you use (2.6 is recommended for OXAD), you may need to install some missing packages. For instance, @DamianParniewicz reported that python-argparse is missing).

    Finally, the tree should look like:

    marc@foix:/opt/ofelia/oxa$ tree . -L 1  
    ├── bin -> /opt/ofelia/oxa//repository/vt_manager/src/python/agent/
    ├── cache
    ├── log
    ├── remote (see Note 5)
    └── repository
    
    

    Note5: A Network File System (NFS) can be mounted on the remote folder, replacing it. This is useful if you have limited disk space on your server, since any VM image not being currently used by users is stored under that path.

Additional notes

Note6: C RM (VT AM) will show also a config file for SFA settings. You may only change there the attributes starting with LDAP and null them (i.e. set to blank strings or lists).

Please have a look to the wiki Configuration section for detailed component configuration.

Running

  1. Expedient, SDN RM (Opt-in), C RM (VT manager) run by default if Apache is running.

  2. RO/MRO needs to be started via its corresponding UNIX init script:

    # Starting RO
    /etc/init.d/felix-ro start
    # Starting MRO
    /etc/init.d/felix-mro start
    

    (In case the init script was not found under /etc/init.d/, create there a symbolic link to the proper init script: felix-ro -> modules/resource/orchestrator/deploy/bin/felix-ro.sh or felix-mro -> modules/resource/orchestrator/deploy/bin/felix-mro.sh)

  3. SERM needs to be started via its corresponding UNIX init script:

    # Starting SERM
    /etc/init.d/felix-serm start
    

    (In case the init script was not found under /etc/init.d/, create there a symbolic link to the proper init script: modules/resource/manager/stitching-entity/deploy/bin/felix-serm.sh)

  4. OXAD is also to be started via its corresponding UNIX init script:

    /etc/init.d/oxad start
    

References

Clone this wiki locally