This page is deprecated. There is no support for devstack based setups. Use Bring-up A-CORD in CORD POD environment

Running on CloudLab (optional)

If bringing the setup on a cloudlab machine, set up extra disk space for devstack by running the following commands:

$ sudo mkdir -p /opt/stack
$ sudo /usr/testbed/bin/mkextrafs -f /opt/stack

Devstack Mitaka Installation

Clone devstack:

$ git clone
$ cd ~/devstack
$ git checkout stable/mitaka


Go to devstack folder and create a local.conf with following contents:

# A single node devstack configuration for use with XOS

enable_plugin ceilometer stable/mitaka

disable_service n-net
enable_service q-svc
enable_service q-agt
enable_service q-dhcp
enable_service q-l3
enable_service q-meta
# Optional, to enable tempest configuration as part of devstack
enable_service tempest

## Neutron options


run ./ script.

With this step devstack should be installed successfully.

Uninstall devstack

Whenever the devstack needs to be reinstalled, ensure always the following commands are used:

$ ./

$ ./

$ ./ ---> To reinstall

Install XOS

Go through the instructions in the below links to familiaize with CORD contributions work-flow:

Getting the Source Code

Working with Gerrit


Pull the CORD service-profile repository

$ #NOTE: If you are planning to commit any changes on any of the CORD repos, use SSH URLs instead of http URLs as described in above work-flow links
$ git clone
$ #To make the below work around in openstack synchronizer repository, clone the repo first
$ #mkdir -p ~/xos_services && cd ~/xos_services
$ #git clone 
$ #Comment out the line ~57 (nova.quotas.update  method call)   in ~/xos_services/openstack/xos/synchronizer/steps/ 
$ cd ~/service-profile/acord
$ make devstack

Issue with Docker Install

During the make devstack, if the command hangs around installing docker, for the time being, install docker via this method: 

Open XOS portal (at port 9999)

 Verify the Deployment/Sites/User objects are created in XOS successfully

On-boarding XOS Monitoring Service

$ cd ~/service-profile/acord
$ make cord-monitoringservice
  • Ensure "ceilometer-trusty-server-multi-nic" image is downloaded to devstack glance as part of above step (`glance image-list`)
  • Verify XOS Slices with name 'mysite_ceilometer' is created successfully and an VM instance is created under 'mysite_ceilometer' slice. The instance should have two IP addresses.
  • Verify if ssh to VM instance with 10.0.0.* and 'ubuntu' as user is working fine from the host machine.
  • Verify 'Services/Ceilometer_Service' is launched successfully in XOS portal
  • Under Service/Ceilometer_Service, goto Adminstration tab, click monitoring channels -> Verify the monitoring channel is launched successfully (Green Tick mark next to the entry in UI)
  • Click on the monitoring channel entry and note down the Ceilometer URL from that entry
  • Using Curl command, with URL as Ceilometer URL retrieved from above + /v2/meters. For ex. if the ceilometer URL is, then do curl on ''
  • Verify curl output is able able to display the meters retrieved

Installing A-CORD Custom Plug-ins

Install vSG/vCPE plugins in devstack ceilometer and verify if u r able to inject them and retrieve those events:

Installing A-CORD PUB/SUB Service

A-CORD PUB/SUB service requires Kafka to be installed. Use the following instructions to install Kafka:

  • Download kafka:
  • install java
    • sudo apt-get update
    • sudo apt-get install default-jre
  • install kafka package
    • sudo easy_install pip
    • sudo pip install kafka-python
  • tar -xzf kafka_2.11-
  • Start the zookeeper server:
    • bin/ config/
  • Start Kafka Server
    • bin/ config/

Configure Mitaka ceilometer to publish events to PUB/SUB service (Below example is to publish ceilometer 'cpu_util' events):

  • Change /etc/ceilometer/pipeline.yaml to publish meters to kafka.
    • - name: cpu_sink
              - name: "rate_of_change"
                            name: "cpu_util"
                            unit: "%"
                            type: "gauge"
                            scale: "100.0 / (10**9 * (resource_metadata.cpu_number or 1))"
          - notifier://
          - kafka://<kafkaip>:9092?topic=<topic name configured in PUB/SUB service>

    • ex:kafka://<IP>:9092?topic=test9

  • Restart the ceilometer-agent-notification, ceilometer-agent-compute, ceilometer-agent-central screens in devstack

Follow README from the below link to install PUB/SUB daemon (Note:If Kafka is running as part of above step, ignore running kafka in this step):

Changes needed in pub_sub.conf:
webserver_host = <IP on which PUB/SUB daemon running>
webserver_port = 4455

target = kafka://<kafkaip>:9092?topic=test9