Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Connect to netopeer docker container and execute the following commands to initialise the pg.yang model. You can leave this terminal up and running.


In the below steps we just initialise the Yang model with one pg-stream record. We will be using CDS to perform the day-1 configuration and day-2 configuration changes.


cd /opt/dev/Netopeer2/cli/build
./netopeer2-cli
> connect --host localhost --login netconf
> edit-config --target running --config=/dev-models/pg-data.xml
> get --filter-xpath /sample-plugin:*> quit

> edit-config --target running --config=/dev-models/sample-plugin-data.xml
OK
> get --filter-xpath /sample-plugin:*
DATA
<sample-plugin xmlns="urn:opendaylight:params:xml:ns:yang:sample-plugin">
<pg-streams>
<pg-stream>
<id>1</id>
<is-enabled>true</is-enabled>
</pg-stream>
</pg-streams>
</sample-plugin>



  • You can use the attached PNF-DEMO-ENRICHED-CBA.zip file to enrich, save, publish and deploy from CDS UI. Otherwise you can clone the CDS source code 


...

  • After Verify if you can see CDS k8s PODs

kubectl get pods -n onap

NAME READY STATUS RESTARTS AGE
dev-cds-blueprints-processor-b8656f584-dhj58 1/1 Running 0 4m2s
dev-cds-command-executor-78b98dff4f-qzf4j 1/1 Running 0 4m2s
dev-cds-db-0 1/1 Running 0 4m2s
dev-cds-py-executor-5667f84d8-n6j5h 1/1 Running 0 4m2s
dev-cds-sdc-listener-749896d795-4r9vp 0/1 Init:0/1 0 4m2s
dev-cds-ui-77f74ff6db-8m6t2 1/1 Running 0 4m2s
dev-mariadb-galera-0 1/1 Running 0 4m2s


CDS Boot strap

The below script will load the CDS model artifacts into CDS DB. You should get HTTP status 200 for the below command.

cd PNF_DEMO/Scripts/

bash -x ./bootstrap-cds.sh


Get the default model "artifactName": "vFW-CDS"  loaded by bootstrap

bash -x ./get-cds-blueprint-models.sh


Load PNF CDS blueprint model data dictionary

cd PNF_DEMO/Scripts

bash -x ./dd-microk8s.sh ./dd.json


Check CDS database for PNF data dictionaries

You should see 6 rows as shown below

./connect-cds-mariadb.sh


select name, data_type from RESOURCE_DICTIONARY where updated_by='Aarna service <vmuthukrishnan@aarnanetworks.com>';

+---------------------+-----------+
| name | data_type |
+---------------------+-----------+
| netconf-password | string |
| netconf-server-port | string |
| netconf-username | string |
| pnf-id | string |
| pnf-ipv4-address | string |
| stream-count | integer |
+---------------------+-----------+

quit

exit


Create PNF CDS Blueprint archive pnf-demo.zip

cd PNF_DEMO/


rm pnf-demo.zip

zip -r pnf-demo.zip *

# You should see the below ZIP file
ls -l pnf-demo.zip


Enrich PNF Bluerprint archive

cd PNF_DEMO/Scripts


bash -x ./enrich-and-download-cds-blueprint.sh ../pnf-demo.zip


Verify Enriched Blue pring archive /tmp/CBA/ENRICHED-CBA.zip

cd /tmp/CBA/

unzip ENRICHED-CBA.zip

tree 


Deploy/Save the Blueprint into CDS database

cd PNF_DEMO/Scripts
bash -x ./save-enriched-blueprint.sh ../pnf-demo.zip

# You should see the new model "artifactName": "pnf_netconf"
bash -x ./get-cds-blueprint-models.sh


Config-Assign

# The assumption is that we are using the same host to run PNF NETCONF simulator as well as CDS
# bash -x ./create-config-assing-data.sh day-1 LOCAL_HOST_IP_ADDRESS 5

  • Create PNF configuration for day-1 (stream-count = 5)

You can verify the CURL command JSON pay load file  /tmp/day-n-pnf-config.json

cd PNF_DEMO/Scripts


bash -x ./create-config-assing-data.sh day-1 10.128.0.86 5


Verify the day-1 NETCONF RPC payload in CDS DB you should see the NETCONF RPC with 5 streams (fw_udp_5)


./connect-cds-mariadb.sh


MariaDB [sdnctl]> select * from TEMPLATE_RESOLUTION where resolution_key='day-1' AND artifact_name='netconfrpc';




  • Create PNF configuration for day-2 (stream-count = 10)

Config-Deploy


  • config-deploy request will send the Day-0 or Day-1 resolution key as part of the REST call.

...