Install and Configure OpenContrail 1.06

Robin Naundorf edited this page Feb 18, 2016 · 4 revisions

Install and Configure OpenContrail 1.06

This installation of OpenContrail is based on Ubuntu host installed from ubuntu-12.04.3-server-amd64.iso. Installation option is OpenSSH server. Kernel version is 3.8.0-29-generic #42~precise1-Ubuntu.

Host name with interface IP has to be properly set in /etc/hosts before start installing OpenContrail.

1 Configuration Node

1.1 Install Packages

$ echo "deb http://ppa.launchpad.net/opencontrail/ppa/ubuntu precise main" | sudo tee -a /etc/apt/sources.list.d/opencontrail.list
$ sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 16BD83506839FE77
$ echo "deb http://debian.datastax.com/community stable main" | sudo tee -a /etc/apt/sources.list.d/cassandra.sources.list
$ curl -L http://debian.datastax.com/debian/repo_key | sudo apt-key add -
$ sudo apt-get update
$
$ sudo apt-get install cassandra=1.2.18 zookeeperd rabbitmq-server ifmap-server
$ sudo apt-get install contrail-config

1.2 Configure Services

  • Cassandra
    No additional configuration is required. By default, Cassandra listens to 127.0.0.1:9160 only.

  • Zookeeper
    No additional Configuration is required.

  • RabbitMQ
    No additional Configuration is required.

  • IP-MAP Server
    Add username and password for the user of control.

    $ echo "control:control" | sudo tee -a /etc/ifmap-server/basicauthusers.properties
    $ sudo service ifmap-server restart
    
  • Configuration API Server
    No additional Configuration is required.

  • Schema Transformer
    No additional Configuration is required.

  • Service Monitor
    No additional Configuration is required.

  • Discovery
    No additional Configuration is required.

1.3 Diagnosis

  • Configuration API Server
    This shall show the list of projects (tenants).

    $ curl http://127.0.0.1:8082/projects | python -mjson.tool
    
  • Discovery
    This shall show the list of registered services and the list of clients asking for service info.

    $ curl http://127.0.0.1:5998/services
    $ curl http://127.0.0.1:5998/clients
    

2 Analytics Node

2.1 Install Packages

$ wget http://mirrors.kernel.org/ubuntu/pool/universe/r/redis/redis-server_2.6.13-1_amd64.deb
$ sudo apt-get install libjemalloc1
$ sudo dpkg -i redis-server_2.6.13-1_amd64.deb
$
$ echo "deb http://ppa.launchpad.net/opencontrail/ppa/ubuntu precise main" | sudo tee -a /etc/apt/sources.list.d/opencontrail.list
$ sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 16BD83506839FE77
$ sudo apt-get update
$
$ sudo apt-get install contrail-analytics

2.2 Configure Services

  • Redis

    Update port setting in /etc/redis/redis.conf.

    -port 6379
    +port 6381
    

    Restart Redis server.

    $ sudo service redis-server restart
    
  • Collector

    Update discovery and Redis settings in /etc/contrail/contrail-collector.conf.

    [DISCOVERY]
    port=5998
    server=127.0.0.1
    
    [REDIS]
    port=6381
    server=127.0.0.1
    

    Restart collector.

    $ sudo service contrail-collector restart
    
  • Query Engine

    Update discovery and Redis settings in /etc/contrail/contrail-query-engine.conf.

    [DISCOVERY]
    port=5998
    server=127.0.0.1
    
    [REDIS]
    port=6381
    server=127.0.0.1
    

    Restart query engine.

    $ sudo service contrail-query-engine restart
    
  • Analytics API Server

    Update Redis settings in /etc/contrail/contrail-analytics-api.conf.

    [REDIS]
    server=127.0.0.1
    redis_server_port=6381
    redis_query_port=6381
    

    Restart analytics API server.

    $ sudo service contrail-analytics-api restart
    

2.3 Diagnosis

  • Analytics API Server

    The introspec port for analytics API server is 8090.

    This shall show the list of generators.

    $ curl http://127.0.0.1:8081/analytics/generators | python -mjson.tool
    

    This shall show some logs.

    $ contrail-logs
    
  • Collector

    The introspec port for collector is 8089.

3 Control Node

3.1 Install Packages

$ echo "deb http://ppa.launchpad.net/opencontrail/ppa/ubuntu precise main" | sudo tee -a /etc/apt/sources.list.d/opencontrail.list
$ sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 16BD83506839FE77
$ sudo apt-get update

$ sudo apt-get install contrail-control

3.2 Configure Services

  • Control (BGP)

    Update [DISCOVERY] and [IFMAP] settings in /etc/contrail/control-node.conf.

    [DISCOVERY]
    port=5998
    server=127.0.0.1 # discovery_server IP address
    
    [IFMAP]
    password=control
    user=control
    

    Restart control.

    $ sudo service contrail-control restart
    

3.3 Diagnosis

  • Control

    The introspec port for analytics API server is 8090.
    This shall show the registration of control (xmpp-server) in discovery.

    $ curl http://127.0.0.1:5998/services
    

    This shall show control as a generator in analytics.

    curl http://127.0.0.1:8081/analytics/uves/generators | python -mjson.tool
    

4 Compute Node

4.1 Install Packages

$ echo "deb http://ppa.launchpad.net/opencontrail/ppa/ubuntu precise main" | sudo tee -a /etc/apt/sources.list.d/opencontrail.list
$ sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 16BD83506839FE77
$ sudo apt-get update
$
$ sudo apt-get install contrail-vrouter-agent
$
$ sudo modprobe vrouter
$ echo "vrouter" | sudo tee -a /etc/modules

4.2 Configure Services

  • vRouter Agent

    Update /etc/contrail/contrail-vrouter-agent.conf.

    # IP address of discovery server
    server=10.8.1.10
    
    [VIRTUAL-HOST-INTERFACE]
    # Everything in this section is mandatory
    
    # name of virtual host interface
    name=vhost0
    
    # IP address and prefix in ip/prefix_len format
    ip=10.8.1.11/24
    
    # Gateway IP address for virtual host
    gateway=10.8.1.254
    
    # Physical interface name to which virtual host interface maps to
    physical_interface=eth1
    

    Update /etc/network/interfaces.

    auto eth1
    iface eth1 inet static
            address 0.0.0.0
            up ifconfig $IFACE up
            down ifconfig $IFACE down
    
    auto vhost0
    iface vhost0 inet static
            pre-up vif --create vhost0 --mac $(cat /sys/class/net/eth1/address)
            pre-up vif --add vhost0 --mac $(cat /sys/class/net/eth1/address) --vrf 0 --mode x --type vhost
            pre-up vif --add eth1 --mac $(cat /sys/class/net/eth1/address) --vrf 0 --mode x --type physical
            address 10.8.1.11
            netmask 255.255.255.0
            #network 10.8.1.0
            #broadcast 10.8.1.255
            #gateway 10.8.1.254
            # dns-* options are implemented by the resolvconf package, if installed
            dns-nameservers 8.8.8.8
    

    Restart networking and vRouter agent.

    $ sudo service networking restart
    $ sudo service contrail-vrouter-agent restart
    

    Reboot compute node!

    $ sudo reboot now
    

4.3 Diagnosis

  • vRouter Agent

    The introspec port for vRouter agent is 8085.

Clone this wiki locally
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.