Bottlenecks - Release Notes

Bottlenecks Release Notes for OPNFV Danube Release

Abstract

This document describes the release notes of Bottlenecks project.

License

OPNFV release notes for Bottlenecks Docs are licensed under a Creative Commons Attribution 4.0 International License. You should have received a copy of the license along with this. If not, see <http://creativecommons.org/licenses/by/4.0/>.

The Bottlenecks software is opensource software, licensed under the terms of the Apache License, Version 2.0.

Version History

Date Version Comment
Sept 22nd, 2016 1.0 Bottlenecks Colorado release 1.0
Feb 17nd, 2017 1.1 Bottlenecks Danube release 1.0
Mar 24nd, 2017 1.2 Bottlenecks Danube release 1.0
Mar 24nd, 2017 1.3 Bottlenecks Danube release 1.0
Apr 25th, 2017 1.4 Bottlenecks Danube release 2.0
Jun 19th, 2017 1.5 Bottlenecks Danube release 3.0
Sept 15th, 2017 1.6 Bottlenecks Euphrates release 5.0

Summary

  • Documentation generated with Sphinx
    • Release
      • Release Notes
    • Testing
      • User Guide
      • Developer Guide

The Bottlenecks software is developed in the OPNFV community, by the Bottlenecks team.

Release Data

Euphrates Release Data

Project Bottlenecks
Repo/tag
  • Bottlenecks/5.0.0
Bottlenecks Docker image tag
  • 5.0.0
Release designation
  • 5.0.0
Release date
  • Sept 15th 2017
Purpose of the delivery Euphrates stable release

Danube Release Data

Project Bottlenecks
Repo/tag
  • Bottlenecks/danube.1.0
  • Bottlenecks/danube.2.0
Bottlenecks Docker image tag
  • danube.1.0
  • danube.2.0
Release designation
  • Danube 1.0
  • Danube 2.0
Release date
  • March 31st 2017
  • May 1st 2017
Purpose of the delivery Danube stable release

Colorado Release Data

Project Bottlenecks
Repo/tag Bottlenecks/colorado.1.0
Bottlenecks Docker image tag
  • colorado.1.0
Release designation
  • Colorado 1.0
Release date
  • September 22 2016
Purpose of the delivery Colorado stable release

Bramaputra Release Data

Project Bottlenecks
Repo/tag Bottlenecks/brahmaputra.1.0
Bottlenecks Docker image tag
  • brahmaputra.1.0
Release designation
  • Brahmaputra 1.0
Release date
  • February 25 2016
Purpose of the delivery Brahmaputra stable release

Reason for Euphrates

  • Introduction of a simple monitoring module, i.e., Prometheus+Collectd+Node+Grafana to monitor the system behavior when executing stress tests.
  • Support VNF scale up/out tests to verify NFVI capability to adapt the resource consuming.
  • Extend Life-cycle test to data-plane to validate the system capability to handle concurrent networks usage.
  • Testing framework is revised to support installer-agnostic testing.

These enhancements and test cases help the end users to gain more comprehensive understanding of the SUT. Graphic reports of the system behavior additional to test cases are provided to indicate the confidence level of SUT. Installer-agnostic testing framework allow end user to do stress testing adaptively over either Open Source or commercial deployments.

Known restrictions/issues

  • Bottlenecks uses Yardstick to do stress tests by iteratively calling yardstick running test cases and in the meantime increasing load.

    • Sometimes, Yardstick just waits for the test environment preparing.

    This cause troubles since it seams to get Yardstick into a loop to keep waiting. For OPNFV CI, this loop will be automatically stopped because of the default timeout setting. However, for local testing, user should stop this loop manually.

    • Sometimes, Yardstick will return empty test results with test flag indicating test is excuted succefully.

    It maybe due to the environment issue or poor internet connection causing testing tools are not installed successfully.

  • Sometimes, a process will go to sleep state. In this case when a running tool go to sleep state, we try to call it twice. Normally, it will response.

Test results

Test results are available in:

The test results are reported to MongoDB. An example is given below.

{
  "project_name": "bottlenecks",
  "scenario": "os-odl_l2-nofeature-ha",
  "stop_date": null,
  "trust_indicator": null,
  "case_name": "posca_stress_ping",
  "build_tag": "bottlenecks-compass-posca_stress_ping-baremetal-daily-master",
  "version": "master",
  "pod_name": "huawei-pod2",
  "criteria": "PASS",
  "installer": "compass",
  "_id": "58cf4d3e32c829000a1150a8",
  "start_date": "2017-3-9 4:33:04",
  "details": {}
}
For more information, please refer to: https://wiki.opnfv.org/display/testing/Result+alignment+for+ELK+post-processing

Open JIRA tickets

JIRA Description
BOTTLENECK-147 Investigting why calling remote docker client
BOTTLENECK-207 Yardstick loop when executing test cases
BOTTLENECK-208 Yardstick empty results when executing test cases
BOTTLENECK-209 Sleep process when executing test cases

Bottlenecks Requirements Notes for OPNFV Euphrates Release

Installer Requirements

Bottlenecks Euphrates release is installer-agnostic which means that the test cases could be executed over different deployments. However, the pod description file and openstack rc file are required to automatically get the SUT informations.

Hardware Requirements

No specific requirements for hardware, as long as there is external network connection. So that the dependent package could be downloaded.

Software Requirements

Operation System

Ubuntu 14.04 is the default system. However, we do not do any linux core operation or call any system related api directly. The software could be runned in higher versions of Ubuntu with high probability. Thorough tests are not performed.

Cloud OS

Bottlenecks supports OpenStack with compatibility for both OpenStack Keystone V2/V3 API. That is, Bottlenecks could be run over previous versions of OpenStack.

Depending Package

  • appdirs==1.4.0
  • Babel==2.2.0
  • backport-ipaddress==0.1
  • cliff==2.0.0
  • cmd2==0.6.8
  • coverage==4.1b2
  • debtcollector==1.3.0
  • ecdsa==0.13
  • extras==0.0.3
  • fixtures==1.4.0
  • flake8==2.5.4
  • funcsigs==0.4
  • functools32==3.2.3.post2
  • futures==3.0.5
  • iso8601==0.1.11
  • Jinja2==2.8
  • jsonpatch==1.13
  • jsonpointer==1.10
  • jsonschema==2.5.1
  • keystoneauth1==2.3.0
  • linecache2==1.0.0
  • lxml==3.5.0
  • MarkupSafe==0.23
  • mccabe==0.4.0
  • mock==1.3.0
  • monotonic==1.0
  • msgpack-python==0.4.7
  • netaddr==0.7.18
  • netifaces==0.10.4
  • nose==1.3.7
  • openstacksdk==0.8.1
  • os-client-config==1.16.0
  • oslo.config==3.9.0
  • oslo.i18n==3.4.0
  • oslo.serialization==2.4.0
  • oslo.utils==3.7.0
  • paramiko==1.16.0
  • pbr==1.8.1
  • pep8==1.7.0
  • positional==1.0.1
  • prettytable==0.7.2
  • pycrypto==2.6.1
  • pyflakes==1.0.0
  • pyparsing==2.1.0
  • pyrsistent==0.11.12
  • python-cinderclient==1.6.0
  • python-glanceclient==2.0.0
  • python-heatclient==1.0.0
  • python-keystoneclient==2.3.1
  • python-mimeparse==1.5.1
  • python-neutronclient==4.1.1
  • python-novaclient==3.3.0
  • python-openstackclient==2.2.0
  • python-subunit==1.2.0
  • python-swiftclient==3.0.0
  • pytz==2015.7
  • PyYAML==3.11
  • requests==2.9.1
  • requestsexceptions==1.1.3
  • scp==0.10.2
  • simplejson==3.8.2
  • six==1.10.0
  • stevedore==1.12.0
  • testrepository==0.0.20
  • testtools==2.0.0
  • traceback2==1.4.0
  • unicodecsv==0.14.1
  • unittest2==1.1.0
  • warlock==1.2.0
  • wrapt==1.10.6
  • pyroute2==0.4.10
  • elasticsearch==5.0.1
  • docker==2.0.2