OPNFV Functional Testing, TOSCA Orchestration, and vIMSUseCases
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.
About FunctestOPNFV puts a lot of emphasis on ensuring all components are fully tested and ready for production. TheFunctest 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
Choosing an Orchestrator for TestingThe 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
But what did they actually test?
vIMS Test CasesFunctest 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