- Created by Yuriy Malakov, last modified on May 25, 2020
You are viewing an old version of this page. View the current version.
Compare with Current View Page History
« Previous Version 29 Next »
Introduction
The purpose of this article is to describe the vLB use case distribution in Frankfurt Release.
What's new in Frankfurt Release
The Controller Blueprint Archive CBA is a zip archive that hosts all the service model related artifacts (heat templates, blueprints, vtl templates, workflows, etc ... ) that can enable ONAP to assign and instantiate the service.
In Frankfurt release, the cds community introduce the following new functionality:
- CDS Integration with ONAP Components
- SO ControllerExeuctionBB allows the ONAP operator to execute any action into CDS for a given scope of vnf, vfmodule, and pnf.
- Policy CDS Actor support allows the ONAP operator to executor any action into CDS for a given scope of vnf, vfmodule and pnf.
- Additional Details click on the link: CDS actor support in Policy
- Multcloud indirect integration with CDS for CNF instantiation and Post instantiation
- Lukas/Konrad to provide TBD
The CBA and Data Dictionary are explained in the Modelling Concepts page here: Modeling Concepts
CDS will require a main component to be able to build a service instance.
In Frankfurt release, preloaded the imperative restconf CBA and Data Dictionary into Blueprint processor by running the following bootstrap command:
curl --location --request POST 'http://10.12.5.250:30087/api/v1/blueprint-model/bootstrap' \ --header 'Content-Type: application/json' \ --header 'Authorization: Basic Y2NzZGthcHBzOmNjc2RrYXBwcw==' \ --header 'Content-Type: text/plain' \ --data-raw '{ "loadModelType" : true, "loadResourceDictionary" : true, "loadCBA" : true }'
Controller Blueprint Package [Deploy the cba using CDS UI by following the steps of Enrich, Save, Deploy] | Data Dictionary | |||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
In Frankfurt release, different CBA Package flavors are available to be executed.
NOTE:
| All the data dictionary required to run the vLB E2E Automation and Scale Out use case leveraging CDS is preload in CDS DB: |
Within the E2E automation provided by CDS, we have a capability that can generate a name for a component, like a VNF or VF Module or CNF.
This capability runs with ONAP Naming mS & POLICY component, where POLICY has the rule that will be used to generate the names
To check that the naming policy is created and pushed OK, we can run the commands below.
root@sb00-nfs:~# kubectl -n onap get pod |grep policy dev-dcae-policy-handler-6db65dd449-p7lmv 2/2 Running 0 5d10h dev-policy-8674d866d8-mqbpg 2/2 Running 0 3d7h dev-policy-apex-pdp-0 1/1 Running 0 3d7h dev-policy-api-bcdd7cc77-j5m6s 1/1 Running 0 3d7h dev-policy-distribution-84854cd6c7-28cr4 1/1 Running 0 3d7h dev-policy-mariadb-0 1/1 Running 0 3d7h dev-policy-xacml-pdp-659bd78bb7-lvz2k 1/1 Running 0 3d7h root@sb00-nfs:~# kubectl -n onap exec -it dev-policy-xacml-pdp-659bd78bb7-lvz2k bash bash-5.0$ curl -k --silent -X POST --header 'Content-Type: application/json' --user 'healthcheck:zb!XztG34' -d '{ "ONAPName": "SDNC", "ONAPComponent":"SNDC-component", "ONAPInstance": "SDNC-component-instance", "requestId": "unique-request-sdnc-1", "action": "naming", "resource": { "policy-id": "SDNC_Policy.ONAP_NF_NAMING_TIMESTAMP"}}' 'https://policy-xacml-pdp:6969/policy/pdpx/v1/decision' {"policies":{"SDNC_Policy.ONAP_NF_NAMING_TIMESTAMP":{"type":"onap.policies.Naming","type_version":"1.0.0","properties":{"naming-models":[{"naming-type":"VNF","naming-recipe":"AIC_CLOUD_REGION|DELIMITER|CONSTANT|DELIMITER|TIMESTAMP","name-operation":"to_lower_case()","naming-properties":[{"property-name":"AIC_CLOUD_REGION"},{"property-name":"CONSTANT","property-value":"onap-nf"},{"property-name":"TIMESTAMP"},{"property-value":"-","property-name":"DELIMITER"}]},{"naming-type":"VNFC","naming-recipe":"VNF_NAME|DELIMITER|NFC_NAMING_CODE|DELIMITER|SEQUENCE","name-operation":"to_lower_case()","naming-properties":[{"property-name":"VNF_NAME"},{"property-name":"SEQUENCE","increment-sequence":{"max":"zzz","scope":"ENTIRETY","start-value":"1","length":"3","increment":"1","sequence-type":"alpha-numeric"}},{"property-name":"NFC_NAMING_CODE"},{"property-value":"-","property-name":"DELIMITER"}]},{"naming-type":"VF-MODULE","naming-recipe":"VNF_NAME|DELIMITER|VF_MODULE_LABEL|DELIMITER|VF_MODULE_TYPE|DELIMITER|SEQUENCE","name-operation":"to_lower_case()","naming-properties":[{"property-name":"VNF_NAME"},{"property-value":"-","property-name":"DELIMITER"},{"property-name":"VF_MODULE_LABEL"},{"property-name":"VF_MODULE_TYPE"},{"property-name":"SEQUENCE","increment-sequence":{"max":"zzz","scope":"PRECEEDING","start-value":"1","length":"3","increment":"1","sequence-type":"alpha-numeric"}}]}],"policy-instance-name":"ONAP_NF_NAMING_TIMESTAMP"},"name":"SDNC_Policy.ONAP_NF_NAMING_TIMESTAMP","version":"1.0.0","metadata":{"policy-id":"SDNC_Policy.ONAP_NF_NAMING_TIMESTAMP","policy-version":"1.0.0"}}}} bash-5.0$
Automated Distribution of vLB CDS Service in SDC Model using Robot
The robot script can help the user automate the creation of the VSP and Service model, and also update the resource assignment properties of the service model to run the vLB_CDS blueprint.
To use this feature follow the steps below:
root@olc-rancher:~# cd oom/kubernetes/robot/ root@olc-rancher:~/oom/kubernetes/robot# ./demo-k8s.sh onap init Number of parameters: 2 KEY: init ++ kubectl --namespace onap get pods ++ grep robot ++ sed 's/ .*//' + POD=onap-robot-robot-6998b9988c-cthb7 ++ dirname ./demo-k8s.sh + DIR=. + SCRIPTDIR=scripts/demoscript + ETEHOME=/var/opt/ONAP + '[' ']' ++ kubectl --namespace onap exec onap-robot-robot-6998b9988c-cthb7 -- bash -c 'ls -1q /share/logs/ | wc -l' + export GLOBAL_BUILD_NUMBER=16 + GLOBAL_BUILD_NUMBER=16 ++ printf %04d 16 + OUTPUT_FOLDER=0016_demo_init + DISPLAY_NUM=106 + VARIABLEFILES='-V /share/config/robot_properties.py' + kubectl --namespace onap exec onap-robot-robot-6998b9988c-cthb7 -- /var/opt/ONAP/runTags.sh -V /share/config/robot_properties.py -d /share/logs/0016_demo_init -i InitDemo --display 106 Starting Xvfb on display :106 with res 1280x1024x24 Executing robot tests at log level TRACE ============================================================================== Testsuites ============================================================================== Testsuites.Demo :: Executes the VNF Orchestration Test cases including setu... ============================================================================== Initialize Customer And Models | PASS | ------------------------------------------------------------------------------ Initialize SO Openstack Identity For V3 | PASS | ------------------------------------------------------------------------------ Testsuites.Demo :: Executes the VNF Orchestration Test cases inclu... | PASS | 2 critical tests, 2 passed, 0 failed 2 tests total, 2 passed, 0 failed ============================================================================== Testsuites | PASS | 2 critical tests, 2 passed, 0 failed 2 tests total, 2 passed, 0 failed ============================================================================== Output: /share/logs/0016_demo_init/output.xml Log: /share/logs/0016_demo_init/log.html Report: /share/logs/0016_demo_init/report.html root@olc-rancher:~/oom/kubernetes/robot#
In order to check if the robot is OK, we can check in SDC to check the demoVLB_CDS model exists
Also, we can click on the service model and check the resource assignment properties to ensure that blueprint template name and version are updated.
Manual Distribution of a VNF CBA
Login to ONAP as Designer (cs0008/demo123456!), and click on SDC application.
Part 1 - Create a New Virtual Software Product
In SDC, select the ONBOARD button > click on Create New VSP button > fill in the Name, Vendor, Category , Description and select the Network Package for on-boarding procedure as illustrated below.
Once the forum is populated for New Software Product click on Create.
In Software Product Details Screen in SDC, the users must populate the license information and the software product. For the vLB CDS use case the software product for the heat package is obtain from the following link: vLB CDS HEAT PACKAGE.
Once the for License and Software Product Attachment is populated then click on the Submit button.
Part 2 - Create VF Model and Certify
Click on the Import VSP from the HOME page.
From the list of VSP, select the Specific vLB CDS VSP for IMPORT to create the VF in SDC.
We fill in the VF name and description, etc ..., and click "Create".
Click on "Deployment Artifact", then "Add other arifacts", and select the vDNS.zip CBA.
Check the artifact is uploaded OK, and click on "Certify".
Add a comment, and submit, you should receive a success notification, and we are back in SDC Home Screen.
Part 3 - Create Service Model, Certify and Distribute
Now, let's create a new service model, and add the newly created VF (including CBA artifact) to the new service model. Click on "Add Service"
Add service name and description, and click on "Create". Choose Instantiation Type: Macro.
Click on "Composition", and drag the VF we created from the palette on the left onto the canvas in the middle.
Then, click on "Submit for Testing".
Click on Properties Assignments, then click on the service name, e.g. "CDS-VNF-TEST" from the right bar.
Type "sdnc" in the filter box, and add the sdnc_model_name, sdnc_model_version, and sdnc_artifact_name, and click "Save".
Type "con" in the filter box, and set "skip post instantiation" to FALSE and controller_actor to "CDS" then click "Save".
Distribute the service model once the service is certified.
Click on "Monitor" to check the progress of the distribution, and check that all ONAP components were notified, and downloaded the artifacts, and deployed OK.
Check SDNC distribution concerning CDS
SDNC to find CDS SDNC database should be now populated with CDS model identification.
kubectl exec -n onap onap-mariadb-galera-mariadb-galera-0 -it -- sh mysql -uroot -psecretpassword -D sdnctl MariaDB [sdnctl]> select sdnc_model_name, sdnc_model_version, sdnc_artifact_name from VF_MODEL WHERE customization_uuid = '88e0e9a7-5bd2-4689-ae9e-7fc167d685a2'; +-----------------+--------------------+--------------------+ | sdnc_model_name | sdnc_model_version | sdnc_artifact_name | +-----------------+--------------------+--------------------+ | test | 1.0.0 | cds-vnf-template | +-----------------+--------------------+--------------------+ 1 row in set (0.00 sec) # Where customization_uuid is the modelCustomizationUuid of the VNf (serviceVnfs response in 2nd postman call from SO Catalog DB)
- No labels