The entire purpose of OPNFV, an open source project from the Linux Foundation that brings together the work of the various standards bodies and open source NFV projects into a single platform, is the provide a way for carriers and vendors to easily test and release virtual network functions (VNFs), and for users to understand what components will work together, so it’s especially important that the Functest team can provide appropriate test coverage.
This week Cloudify Director of Product, Arthur Berezin, together with OPNFV’s Morgan Richomme and Valentin Boucher of Orange Labs, spoke at the OpenStack Summit in a session titled “Project: OPNFV – Base System Functionality Testing (Functest) of a vIMS on OpenStack,” so we thought we’d take a moment to look at what that means.
OPNFV puts a lot of emphasis on ensuring all components are fully tested and ready for production. The Functest group, specifically, is the team that tests and verifies all OPNFV Platform functionality, which covers the VIM and NFVI components.
The key objectives of the Functest project in OPNFV are to:
- Define tooling for tests
- Define test suites (SLA)
- Installation and configuration of the tools
- Automate test with CI
- Provide API and dashboard functions for Functest and other test projects
But doing all that involves orchestration, and that involves having an appropriate tool.
Choosing an Orchestrator for Testing
The Functest team, as part of their use case testing, sought an orchestration tool based on certain criteria. They were looking for an open source orchestrator and VNF Manager. The tool had to satisfy a number of different requirements:
“To manage a complex VNF, it’s necessary to use an orchestrator and we selected Cloudify because it fits all the vIMS test-case requirements (open source solution, workflow, TOSCA modeling, good integration with OpenStack components, openness with plugins…).”
To satisfy these requirements, the team chose the open source Cloudify tool.
The second OPNFV release, Brahmaputra, includes test cases for more complete platform capacity checks of the OPNFV platform to host complex VNFs. In order to truly verify that everything is working properly, however, the tests needed a use case that was sufficiently complex.
The team needed a VNF that:
- Includes various components
- Requires component configuration for communication between VMs
- Involves a basic workflow in order to properly complete setup
The team chose Clearwater, open source vIMS from MetaSwitch.
But what did they actually test?
vIMS Test Cases
Functest team runs a number of different vIMS test cases, including:
- Environment preparation, such as creating a user/tenant, choosing a flavor, and uploading OS images
- Orchestrator deployment, including creating the Cloudify manager router, network and VM
- VNF deployment with Cloudify, including create 7 VMs and installing and configuring software
- VNF tests, including creating users and launching more than 100 tests
- Pushing deployment duration and test results