Virtualized Infrastructure Deployment Policies
The overall goal of this project is to support the ability to ensure virtualized infrastructure complies with policies related to how that infrastructure is deployed, e.g. affinity and partitioning (e.g. per regulation, control/user plane separation, cost…).
The initial goal is to assess “off the shelf” basic OPNFV platform support for policy management, using existing open source projects such as OpenStack Congress and OpenDaylight Group-Based Policy (GBP).
In the process, the project will assess what policy-related features are currently supported through research into the related projects in OpenStack and ODL, and testing of integrated vanilla distributions of those and other dependent open source projects in the OPNFV’s NFVI platform scope.
Based upon the analysis and testing, prioritized gaps will be identified and a feasible set selected for development in OPNFV Release 1 or subsequent release, as time permits.
Describe the problem being solved by project:
Policy management seeks to ensure compliance with constraints. For NFVI deployment, it can direct and validate the provisioning of resources by infrastructure managers, per the needs of an application / VNF. Such validation is necessary to enable reliable, programmatic deployment of NFVI resources, a fundamental enabler of the service deployment agility promised by NFV. “Deployment” as used here refers primarily to initial resource provisioning for VNF instantiation, but also to provisioning in response to events in the lifecycle of a VNF. Deployment-focused policies appear to be somewhat addressed by existing open source projects, although the degree of support is unclear at this time. Further analysis and testing is required to assess supported approaches to policy monitoring and enforcement, e.g.:
Specify any interface/API specification proposed:
Policies and their processing may affect the Nf-Vi, Vi-Vnfm, and Or-Vi interfaces, and functions of the VIM and NFVI. Details are TBD.
Specify testing and integration:
Initially, a use case driver application will be built to execute policy-related actions via the published interfaces of VIM components, in a sandbox test environment. This will be used to assess operational capabilities of the VIM components. As upstream-focused development activities are initiated:
The project will be integrated with the CI infrastructure/process that OPNFV has developed by that time. This project intends to serve as a driver for the Macro Test Plan and Micro Test Plan developed by the VNF Deployment Test Cases project proposal.
Identity a list of features and functionality will be developed:
VIM (e.g. OpenStack) shall be able to configure resources (compute, network, storage) per defined policies for initial usage. VIM (e.g. OpenStack) northbound interfaces (Or-Vi, Vi-Vnfm) shall be able to receive and respond to such policy-constrained configuration requests for NFVI. In this regard, the following interfaces shall be implemented taking GS NFV-MAN 001 V0.6.4 (2014-10) into account:
Identify what is in or out of scope. So during the development phase, it helps reduce discussion:
Out of scope: this project intends to avoid overlap with other proposed projects, e.g.
Policy is a complex, multi-faceted concept, with many purposes and related methods. It is highly likely that OPNFV Release 1 will be able to deliver only the most basic of deployment policy support, and that future releases will be needed to help drive broader policy support goals.
Continuous integration test support where feasible, will be developed for all high-priority use cases. Additional automated and manual testing will be developed where necessary. The project will leverage the basic OPNFV test tools and platform distribution, and customize it as needed to enable special focus testing e.g. OpenStack / ODL integrated policy tests. Policy management performance tests will be a key objective, as will the reliability of the policy management system in HA environments and fault scenarios.
This project intends to produce the following documentation supporting Deployment Policy as a capability of the OPNFV platform:
The project will depend upon the Get Started project for establishing the basic OPNFV platform that will be used for gap analysis testing.
Some underlying platform capabilities of this project (e.g. pub/sub interfaces for event-driven policy enforcement) may be common with other proposed policy-related projects, e.g. Resource Reservation (Promise) and Fault Management (Doctor). These common capabilities may be factored out into new dependent projects, in order to optimize the scope of this project.
Upstream project dependencies may include:
Open source upstream projects and release timeline include:
Specific development staged with respect to upstream projects and releases is TBD.
External fora or standard development organization dependencies:
In the first release, the goal will be to:
This project is planned for the first release of OPNFV platform. Alignment with upstream release cadences is TBD pending identified and prioritized gaps.