- Created by Yuriy Malakov, last modified on Jul 16, 2018
You are viewing an old version of this page. View the current version.
Compare with Current View Page History
« Previous Version 4 Next »
Overview
The generic-resource-api is used to assign cloud parameter assignment during instantiation flow. The vf-module instantiation flow begins with the main DG, self-serve-vfmodule-assign, when the svc-action = assign in the rpc request.
The main DG will call a series of sub-DGs according to the execution order of all the predefined capability components, such as generate-name, vlan-tag-assignment, eipam-ip-assignment, etc.
For IP assignment, the main DG calls the sub-DG, self-serve-eipam-ip-assignment to start the ip assignment process.
This wiki serves as the blueprint for capability integration with generic-resource-api for ip assignments, and it is used to integrate EIPAM custom plugin to obtain ip address assignments during vf-module orchestration.
Prerequisite
The following parameters must be set in context memory prior to the self-serve-eipam-ip-assignment sub-DG is called.
- ss.capability-name
- value that matches the capability DG name; i.e. self-serve-eipam-ip-assignment
- ss.capability-action
- assign
- vnf-index
- The array index of the vnf that owns this vf-module in config tree
- vf-module-index
- The array index of this vf-module in config tree
- service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[].
Logic
1. Unresolved Parameter Resolution
- Calls self-serve-capability-param-resolution DG to resolve all the unresolved values in vf-module-parameters.param[].resource-resolution-data.resource-key[].value where resource-resolution-data.capability-name matches this DG name.
2. Call EIPAM Plugin
- The EIPAM plugin returns the ip assignment in a context variable, called eipam-ip-block
- eipam-ip-block.plans[].requests[].ip-prefix
- eipam-ip-block.plans[].requests[].ip-prefix-length
- eipam-ip-block.plans[].requests[].ReservedAssignments[0]. ReservedAssignment[3].ReservedKeyIPAddress
- Insert an entry to EIPAM_IP_ASSIGNMENTS table
3. Set Heat Parameters
The sub-DG, self-serve-vfmodule-assign will set value of then heat parameters based on the EIPAM
- vmxvre_oam_ip_0 = eipam-ip-block.plans[].requests[].ip-prefix
- vmxvre_oam_ip_prefix_0 = eipam-ip-block.plans[].requests[].ip-prefix-length
- vmxvre_oam_gateway = eipam-ip-block.plans[].requests[].ReservedAssignments[0].
- ReservedAssignment[3].ReservedKeyIPAddress
Overview
The generic-resource-api is used to unassign cloud parameters during the vf-module unassign flow. The vf-module unassign flow begins with the main DG, self-serve-vfmodule-unassign, when the svc-action = unassign in the rpc request.
The main DG will call a series of sub-DGs according to the execution order of all the predefined capability components, such as generate-name, vlan-tag-assignment, eipam-ip-assignment, etc to unassign cloud parameters. Upon successful unassignment, the main DG will clear the service-data data in MD-SAL
Prerequisites
The following parameters must be set in context memory prior to the self-serve-eipam-ip-assignment sub-DG is called.
ss.capability-name
value that matches the capability DG name; i.e. self-serve-eipam-ip-assignment
ss.capability-action
unassign
vnf-index
The array index of the vnf that owns this vf-module in config tree
vf-module-index
The array index of this vf-module in config tree
service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[].
Logic
1. Set EIPAM_IP_ASSIGNMENTS status
set EIPAM_IP_ASSIGNMENTS.status t0 PENDING_DELETE by service-instance-id and client-key
2. Call EIPAM Plugin unassignIp
Calls EIPAM plugin unassignIp method to unassign ip from EIPAM
3. Set Heat Parameters status
Set service-data … vf-module-parameters.param[].resource-resolution-data.status to DELETED for the following params
vmxvre_oam_ip_0
vmxvre_oam_ip_prefix_0
vmxvre_oam_gateway
- No labels