From 1f4592919df6acf4545d6c54b41beb85f6c85ad3 Mon Sep 17 00:00:00 2001 From: XingXiaocheng Date: Fri, 30 Mar 2018 09:42:43 +0000 Subject: create PNF doc Issue-ID: CLI-93 Change-Id: Iefcbb34e6d0aaf14a42b0fbd2d5df7498546256c Signed-off-by: xingxiaocheng --- docs/step_to_import_PNF.rst | 404 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 404 insertions(+) create mode 100644 docs/step_to_import_PNF.rst (limited to 'docs/step_to_import_PNF.rst') diff --git a/docs/step_to_import_PNF.rst b/docs/step_to_import_PNF.rst new file mode 100644 index 00000000..e8a4f351 --- /dev/null +++ b/docs/step_to_import_PNF.rst @@ -0,0 +1,404 @@ +.. This work is licensed under a Creative Commons Attribution 4.0 International License. +.. http://creativecommons.org/licenses/by/4.0 +.. Copyright 2017 Huawei Technologies Co., Ltd. + +.. Step to import VNF/PNF: + + +Step to import VNF/PNF +============================================== + +This document describe how to insert existing PNF/VNF to AAI with CLI project. + +The main step will include: +1. create customer and service instance in AAI. This step could be done by UUI or VID, OR user can insert customer/service instance node by CLI cmd. +2. create PNF/VNF +3. create relation-ship between service-instance and created PNF/VNFs +4. check the Topology graph through AAI portal + + +create customer +================ +optional,since the customer/subscription/service-instance may already exist + +create customer: +-------------------- + +:: + + onap>customer-create -u AAI -p AAI -m https://172.19.44.123:8443 --customer-name testCustomer --subscriber-name EC + +Check if customer created successfully: +------------------------------------------- + +:: + + onap>customer-list -u AAI -p AAI -m https://172.19.44.123:8443 + + +--------------+------------------+ + |name |resource-version | + +--------------+------------------+ + |testCustomer |1521772326346 | + +--------------+------------------+ + |Orange1 |1521771120855 | + +--------------+------------------+ + |Orange |1520304126184 | + +--------------+------------------+ + |test |1521098144163 | + +--------------+------------------+ + +delete customer cmd: +------------------------------------------- + +:: + + onap>customer-delete -u AAI -p AAI -m https://172.19.44.123:8443 --customer-name testCustomer --resource-version 1521772326346 + + +create subscription (optional) +============================== + +create subscription cmd: +------------------------- + +:: + + + onap>subscription-create-with-template -u AAI -p AAI -m https://172.19.44.123:8443 --customer-name testCustomer --service-type EC --template /opt/oclip/template/sub-create.json + + content of /opt/oclip/template/sub-create.json: + { + "service-subscription": [ + { + "service-type": "EC", + } + ] + } + + + +Check if subscription created successfully: +-------------------------------------------- + +:: + + onap>subscription-list -u AAI -p AAI -m https://172.19.44.123:8443 --customer-name testCustomer + + output: + +--------------+------------------+ + |service-type |resource-version | + +--------------+------------------+ + |EEC |1521773231094 | + +--------------+------------------+ + |EC |1522058350020 | + +--------------+------------------+ + +delete subscription cmd: +-------------------------------------------- + +:: + + onap>subscription-delete -u AAI -p AAI -m https://172.19.44.123:8443 --customer-name testCustomer --service-type EC --resource-version 1521772326346 + +create service instance(optional) +================================= + +create service instance with template cmd: +------------------------------------------ + + +:: + + onap>service-instance-create-with-template -u AAI -p AAI -m https://172.19.44.123:8443 --service-instance-id 176d9eba-1662-4289-8396-0097b50fd486 --template /opt/oclip/open-cli-schema/service-instance-template.json --global-customer-id testCustomer --service-type EC + + content of /opt/oclip/open-cli-schema/service-instance-template.json: + + { + "global-customer-id": "testCustomer", + "subscriber-name": "EC", + "subscriber-type": "INFRA", + "service-subscriptions": { + "service-subscription": [ + { + "service-type": "EC", + "service-instances": { + "service-instance": [ + { + "service-instance-id": "176d9eba-1662-4289-8396-0097b50fd486", + "service-instance-name": "template-service", + "service-type": "NetworkService", + "relationship-list": { + } + } + ] + } + } + ] + } + } + + +Create PNF +========== + + there are many ways to create PNF, cmd: + +A: create pnf with pnf name: +---------------------------- + +:: + + onap>pnf-create -u AAI -p AAI -m https://172.19.44.123:8443 -n testcmdpnfname + +B: create pnf with all option (including relationship json): +------------------------------------------------------------ + + +:: + + onap>pnf-create -u AAI -p AAI -m https://172.19.44.123:8443 -n testcmdpnfname -q MME -x generic --in-maint false --prov-status PROV --relationship /opt/oclip/open-cli-schema/pnf-sub-relation.json + + Sample content of /opt/oclip/open-cli-schema/pnf-sub-relation.json: + + { + "relationship": [ + { + "related-to": "logical-link", + "related-link": "/aai/v11/network/logical-links/logical-link/S11-00001", + "relationship-data": [ + { + "relationship-key": "logical-link.link-name", + "relationship-value": "S11-00001" + } + ] + } + ] + } + +C: create pnf with template +---------------------------- +since pnf contains logs of parameters , user can put all the parameters in a json file.e.g to create a PNF with p-interface,user should use this cmd: + + +:: + + onap>pnf-create-with-template -u AAI -p AAI -m https://172.19.44.123:8443 -n pnf_template -r /opt/oclip/open-cli-schema/pnf-template.json + + Sample content of /opt/oclip/open-cli-schema/pnf-template.json + + { + "pnf-name" : "pnf_template", + "equip-type" : "pnf_template", + "equip-vendor" : "Generic", + "in-maint" : "false", + "prov-status" : "PROV", + "p-interfaces" : { + "p-interface" : [ + { + "interface-name" : "pnf_template-p-interface", + "speed-value" : "1", + "speed-units" : "Gbps", + "port-description" : "downstream port 1", + "interface-type" : "port", + "prov-status" : "PROV", + "in-maint" : "false", + "l-interfaces" : { + "l-interface" : [ + { + "interface-name" : "pnf_template-i-interface", + "interface-role" : "Eth logical interface", + "is-port-mirrored" : "false", + "prov-status" : "PROV", + "in-maint" : "false" + } + ] + } + } + ] + } + } + +List Created PNF cmd: +----------------------- + + +:: + + onap>pnf-list -u AAI -p AAI -m https://172.19.44.123:8443 + output: + +----------------+--------------------------------------+------------------+ + |pnf-name |pnf-id |resource-version | + +----------------+--------------------------------------+------------------+ + |batch-name-2 |176d9eba-1662-4289-8396-0097b50fd470 |1521790894608 | + +----------------+--------------------------------------+------------------+ + |pnf_template |176d9eba-1662-4289-8396-0097b50fd467 |1521702068121 | + +----------------+--------------------------------------+------------------+ + |testcmdpnfname |176d9eba-1662-4289-8396-0097b50fd466 |1521687589914 | + +----------------+--------------------------------------+------------------+ + |batch-name-1 |176d9eba-1662-4289-8396-0097b50fd470 |1521790894391 | + +----------------+--------------------------------------+------------------+ + |SPGW-0001 | |1520304310122 | + +----------------+--------------------------------------+------------------+ + |test | |1520417818047 | + +----------------+--------------------------------------+------------------+ + |MME-000111 | |1520417147010 | + +----------------+--------------------------------------+------------------+ + |MME-0001 | |1520303982165 | + +----------------+--------------------------------------+------------------+ + |SP GW-0001 | |1520304000840 | + +----------------+--------------------------------------+------------------+ + +Delete PNF cmd: +---------------- + +:: + + onap>pnf-delete -n testname -b 1521685031379 -u AAI -p AAI -m https://172.19.44.123:8443 + +Create VNF +=========== + + there are many ways to create VNF, cmd: + +A: create VNF with VNF id: +--------------------------- + +:: + onap>vnf-create -u AAI -p AAI -m https://172.19.44.123:8443 --name vn1 --vnf-id d9b1b05f-44c8-45ef-89aa-d27ad060ceb8 --vnf-type t1 --debug + +B: create VNF with template: +----------------------------- + +:: + + onap>vnf-create-with-template -u AAI -p AAI -m https://172.19.44.123:8443 --vnf-id d9b1b05f-44c8-45ef-89aa-d27ad060ceb9 --template /opt/oclip/open-cli-schema/vnf-template.json + + Sample content of /opt/oclip/open-cli-schema/vnf-template.json + { + "vnf-id": "d9b1b05f-44c8-45ef-89aa-d27ad060ceb9", + "vnf-name": "vvnf-name", + "vnf-type": "vnf-type-1", + "in-maint": true, + "is-closed-loop-disabled": false + } + +Create relationship between service instance and PNF/VNF: +========================================================= + +:: + + onap>service-instance-relationship-create -u AAI -p AAI -m https://172.19.44.123:8443 -g Orange -z EC -i 176d9eba-1662-4289-8396-0097b50fd485 -r /opt/oclip/open-cli-schema/relation.json + + Sample content of /opt/oclip/open-cli-schema/relation.json: + + { + "related-to": "pnf", + "related-link": "/aai/v11/network/pnfs/pnf/pnf_template", + "relationship-data": [ + { + "relationship-key": "pnf.pnf-name", + "relationship-value": "pnf_template" + } + ] + } + +List Service-instance relationship: +------------------------------------ + +:: + + onap>service-instance-relationship-list -u AAI -p AAI -m https://172.19.44.123:8443 -g Orange -z EPC -i 176d9eba-1662-4289-8396-0097b50fd485 + + Output: + + +--------------+----------------------------------------------------+ + |related-to |related-link | + +--------------+----------------------------------------------------+ + |pnf |/aai/v11/network/pnfs/pnf/pnf_template | + +--------------+----------------------------------------------------+ + |pnf |/aai/v11/network/pnfs/pnf/testcmdpnfname | + +--------------+----------------------------------------------------+ + |logical-link |/aai/v11/network/logical-links/logical-link/S11-00 | + | |001 | + +--------------+----------------------------------------------------+ + |pnf |/aai/v11/network/pnfs/pnf/MME-0001 | + +--------------+----------------------------------------------------+ + |pnf |/aai/v11/network/pnfs/pnf/SP%20GW-0001 | + +--------------+----------------------------------------------------+ + +Delete Service-instance relationship: +-------------------------------------- + +:: + + onap>service-instance-relationship-delete -u AAI -p AAI -m https://172.19.44.123:8443 -g Orange -z EPC -i 176d9eba-1662-4289-8396-0097b50fd485 -r /opt/oclip/open-cli-schema/relation.json + + Sample content of /opt/oclip/open-cli-schema/relation.json is same as the one used to create relation. + +batch import PNF/VNF: +===================== + Since all the cmd support batch model, user can import multi-PNF/VNF one time: + This CMD should be run on system terminal: + +cmd: +------- + +:: + + onap>oclip -p create-batch.yaml pnf-create + + Sample content of create-batch.yaml: + + pnf1: + - name: batch-name-1 + - host-username: AAI + - host-password: AAI + - host-url: https://172.19.44.123:8443 + + pnf2: + - name: batch-name-2 + - host-username: AAI + - host-password: AAI + - host-url: https://172.19.44.123:8443 + - template: | + { + "relationship": [ + { + "related-to": "logical-link", + "related-link": "/aai/v11/network/logical-links/logical-link/S11-00001", + "relationship-data": [ + { + "relationship-key": "logical-link.link-name", + "relationship-value": "S11-00001" + } + ] + } + ] + } + +User can also use create with template cmd for batch execute: + +sample cmd: +---------------- + +:: + + oclip -p create-batch.yaml pnf-create-with-template + +Checke AAI topology through portal: +==================================== + +Typing the key word, (service,PNF,generic-vnf,customer),the search text box will pup up auto suggestion of the search key word. +e.g. +:: + + service-instance called 176d9eba-1662-4289-8396-0097b50fd485 + customer called test + pnf called MME-0001 + generic-vnf called d9b1b05f-44c8-45ef-89aa-d27ad060ceb4 + + + + + + -- cgit 1.2.3-korg