Ask Your Question

How to retrieve the port statistics from ceilometer and the ODL lithium driver

asked 2016-04-20 11:41:01 -0600

praveen gravatar image


I have installed OpenStack (Liberty version) on my machine and configured ml2 plugin as an Open daylight controller (Lithium distribution snapshot). I have added the below meters in the /etc/ceilometer/pipeline.yaml file and restart the ceilometer-acentral service. a) switch.port.transmit.bytes b) switch.port.receive.bytes c) switch.port.transmit.packets d) switch.port.receive.packets"

Driver code available in the ceilometer/network/statistics/opendaylight directory is working for all the versions of ODLs(like ithium, beryllium etc).

I am using the "http://localhost:8080/controller/nb/v2/statistics/default/flow" url to fetch the port statistics from the odl and throwing erorr 404.
Please provide some guidances to fetch the port statistics from the ODL lithium distribution.
edit retag flag offensive close merge delete

1 answer

Sort by ยป oldest newest most voted

answered 2016-04-21 03:05:33 -0600

yprokule gravatar image

@praveen - according to the code

"""Driver of network info collector from OpenDaylight.

This driver uses resources in "pipeline.yaml". Resource requires below conditions:

  • resource is url
  • scheme is "opendaylight"

    This driver can be configured via query parameters. Supported parameters:

  • scheme: The scheme of request url to OpenDaylight REST API endpoint. (default http)

  • auth: Auth strategy of http. This parameter can be set basic and digest.(default None)
  • user: This is username that is used by auth.(default None)
  • password: This is password that is used by auth.(default None)
  • container_name: Name of container of OpenDaylight.(default "default") This parameter allows multi vaues.


    opendaylight:// container_name=egg&auth=basic&user=admin&password=admin&scheme=http

    In this case, the driver send request to below URLs:

Hence your pipeline.yaml has to look like:

- name: disk_source
  interval: 600
      - opendaylight://
      - "switch.port.transmit.bytes"
      - ...
      - "switch.port.receive.bytes"
      - your_sink

Also, please enable debug/verbose in ceilometer.conf to have better visibility on what's going on and share your results.

Good luck!

edit flag offensive delete link more


I am using the beryllium open daylight SDN controller. But when I tried to fetch the flow statistics from the ODL with the below url using curl, I got error code 404. curl -u admin:admin http://localhost:8080/controller/nb/v2/statistics/default/flow (http://localhost:8080/controller/nb/v...)

praveen gravatar imagepraveen ( 2016-05-23 04:58:29 -0600 )edit

Even the ceilometer-acentral.log shows the same error message

praveen gravatar imagepraveen ( 2016-05-23 04:59:01 -0600 )edit

Is it running|accessible via localhost ? I haven't played with it and don't have env. Hence I recommend to check the endpoint for ODL and enable debug/verbose for ceilometer to have more data.

yprokule gravatar imageyprokule ( 2016-05-23 05:56:20 -0600 )edit

ODL and Open Stack services are running in the same Machine. ODL can be accessible via localhost.

praveen gravatar imagepraveen ( 2016-05-23 07:36:41 -0600 )edit

what about logs? smth new/odd? what odl's docs say about endpoints and statistics?

yprokule gravatar imageyprokule ( 2016-05-23 09:29:58 -0600 )edit

Get to know Ask OpenStack

Resources for moderators

Question Tools


Asked: 2016-04-20 11:41:01 -0600

Seen: 389 times

Last updated: Apr 21 '16