Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Set up Control node

  1. Install git and python-pip on the Openstack Controller node

    Code Block
    languagebash
    $ sudo apt-get install -y git
    $ sudo apt-get install -y python-pip
  2. Install devstack on the Openstack Controller node

    Code Block
    languagebash
    $ git clone git://github.com/openstack-dev/devstack.git
    or if you want to install the specific version of Devstack,
    $ git clone -b stable/kilo git://github.com/openstack-dev/devstack.git
  3. Creates local.conf file using the following options

    Code Block
    languagetext
    [[local|localrc]]
    HOST_IP=1.1.1.1 
    SERVICE_HOST=1.1.1.1  
    RABBIT_HOST=1.1.1.1  
    DATABASE_HOST=1.1.1.1  
    Q_HOST=1.1.1.1
    
    ADMIN_PASSWORD=nova
    DATABASE_PASSWORD=$ADMIN_PASSWORD
    RABBIT_PASSWORD=$ADMIN_PASSWORD
    SERVICE_PASSWORD=$ADMIN_PASSWORD
    SERVICE_TOKEN=$ADMIN_PASSWORD
    
    DATABASE_TYPE=mysql
    
    # Log
    SCREEN_LOGDIR=/opt/stack/logs/screen
    
    # Images
    
    IMAGE_URLS="http://download.cirros-cloud.net/0.3.4/cirros-0.3.4-x86_64-disk.img,http://jaist.dl.sourceforge.net/project/gns-3/Qemu%20Appliances/linux-tinycore-3.4.img"
    
    NOVA_VNC_ENABLED=true
    VNCSERVER_PROXYCLIENT_ADDRESS=$HOST_IP
    VNCSERVER_LISTEN=$HOST_IP
    
    NEUTRON_CREATE_INITIAL_NETWORKS=False
    
    Q_ML2_PLUGIN_MECHANISM_DRIVERS=onos_ml2
    Q_PLUGIN_EXTRA_CONF_PATH=~/networking-onos/etc
    Q_PLUGIN_EXTRA_CONF_FILES=(conf_onos.ini)
    
    # Services
    enable_service q-svc
    disable_service n-net
    disable_service n-cpu
    disable_service tempest
    disable_service c-sch
    disable_service c-api
    disable_service c-vol
    
    

    * The IP address 1.1.1.1 needs to be changed to your host IP address of Openstack controller.
    * You can choose a different admin password if you want.
    * If you installed the onos ml2 plugin in a different place, you need to change the Q_PLUGIN_EXTRA_CONF_PATH properly.

  4. Install onos ml2 plugin

    Code Block
    languagebash
     $ git clone https://github.com/openstack/networking-onos.git
     $ cd networking-onos
     ~/networking-onos$ sudo python setup.py install

    If you find the following error, please install python-setuptools using apt-get.

    Code Block
    languagetext
    Traceback (most recent call last):
      File "setup.py", line 17, in <module>
        import setuptools
    ImportError: No module named setuptools
    Code Block
    languagebash
    $ sudo apt-get install python-setuptools
    Info
    titleWhy we need onos-networking plugin ?

    onos-networking plugin just forwards (or calls) REST calls from nova to ONOS, and OpenstackSwitching app receives the API calls and returns OK. Main functions to implement the virtual networks are handled in OpenstackSwitching application.

  5. Configure the onos ml2 plugin by editing the conf_onos.ini file in networking-onos/etc folder, which is just created

    Code Block
    languagetext
    #Configuration options for ONOS driver
    
    [onos]
    # (StrOpt) ONOS ReST interface URL. This is a mandatory field.
    url_path = http://ONOS_HOST_IP:8181/onos/openstackswitching
    
    # (StrOpt) Username for authentication. This is a mandatory field.
    username = onos
    
    # (StrOpt) Password for authentication. This is a mandatory field.
    password = rocks

    You need to set the proper IP address for ONOS controller in ONOS_HOST_IP

  6. Set up devstack

    Code Block
    languagebash
    ~/devstack$ ./stack.sh

    It would take quite long up to 1 hour depending on the network status and host performance. If it is setup correctly, you will see the following message.

    Code Block
    languagetext
    ========================
    DevStack Components Timed
    ========================
    
    apt-get-update - 6 secs
    pip_install - 31 secs
    apt-get - 3 secs
    
    
    
    This is your host IP address: 10.40.101.209
    This is your host IPv6 address: ::1
    Horizon is now available at http://10.40.101.209/dashboard
    Keystone is serving at http://10.40.101.209:5000/
    The default users are: admin and demo
    The password: nova
    2015-12-10 07:32:04.411 | stack.sh completed in 243 seconds.

    Please check if you can log in to the Horizon dashboard with the url and login information as below.

...