add pnf instantiate flows 12/93012/1
authorseshukm <seshu.kumar.m@huawei.com>
Thu, 8 Aug 2019 07:30:41 +0000 (13:00 +0530)
committerseshukm <seshu.kumar.m@huawei.com>
Thu, 8 Aug 2019 07:30:41 +0000 (13:00 +0530)
Issue-ID: SO-608

Signed-off-by: seshukm <seshu.kumar.m@huawei.com>
Change-Id: Ifa375512d97aa5f9c56156a20eae5e220ef0039c

docs/developer_info/instantiate/instantiation/pnf_instance/index.rst [new file with mode: 0644]

diff --git a/docs/developer_info/instantiate/instantiation/pnf_instance/index.rst b/docs/developer_info/instantiate/instantiation/pnf_instance/index.rst
new file mode 100644 (file)
index 0000000..7fbfdbe
--- /dev/null
@@ -0,0 +1,107 @@
+.. This work is licensed under a Creative Commons Attribution 4.0
+.. International License. http://creativecommons.org/licenses/by/4.0
+.. Copyright 2019 ONAP Contributors. All rights reserved.
+
+
+
+Declare PNF instances in ONAP
+=============================
+
+PNF instances can be declared in ONAP inventory (AAI) using REST API
+
+
+An example:
+
+::
+
+  curl -X PUT \
+    https://{{ONAP_LB_IP@}}:30233/aai/v16/network/pnfs/pnf/my_pnf_instance_001 \
+    -H 'Accept: application/json' \
+    -H 'Authorization: Basic QUFJOkFBSQ==' \
+    -H 'Cache-Control: no-cache' \
+    -H 'Content-Type: application/json' \
+    -H 'Postman-Token: f5e2aae0-dc1c-4edb-b9e9-a93b05aee5e8' \
+    -H 'X-FromAppId: AAI' \
+    -H 'X-TransactionId: 999' \
+    -H 'depth: all' \
+    -d '{
+    "pnf-name":" my_pnf_instance_001",
+    "equip-type":" router",
+    "nf-role":"primary",
+    "p-interfaces": {
+        "p-interface": [
+            {
+                "interface-name": "ae1",
+                "port-description": "Link aggregate for trunk between switches"
+            },
+            {
+                "interface-name": "xe-0/0/6",
+                "port-description": "to PNF_instance_002 trunk1"
+            },
+            {
+                "interface-name": "xe-0/0/2",
+                "port-description": "to PNF_instance_003 trunk1"
+            },
+            {
+                "interface-name": "xe-0/0/10",
+                "port-description": "to PNF_instance_004 trunk1"
+            },
+            {
+                "interface-name": "xe-0/0/0",
+                "port-description": "firewall trunk"
+            },
+            {
+                "interface-name": "xe-0/0/14",
+                "port-description": "to PNF_instance_005 trunk1"
+            }
+        ]
+    }
+  }' -k
+
+
+It is possible to declare the location where is deployed the PNF
+(called a "complex" in ONAP AAI)
+
+::
+
+  curl -X PUT \
+    https:// {{ONAP_LB_IP@}}:30233/aai/v11/cloud-infrastructure/complexes/complex/my_complex_name \
+    -H 'Accept: application/json' \
+    -H 'Authorization: Basic QUFJOkFBSQ==' \
+    -H 'Cache-Control: no-cache' \
+    -H 'Content-Type: application/json' \
+    -H 'Postman-Token: 43523984-db01-449a-8a58-8888871110bc' \
+    -H 'X-FromAppId: AAI' \
+    -H 'X-TransactionId: 999' \
+    -H 'depth: all' \
+    -d '{
+    "physical-location-type":"PoP",
+    "physical-location-id":"my_complex_name",
+    "complex-name":"Name of my Complex",
+    "city":"LANNION",
+    "postal-code":"22300",
+    "country":"FRANCE",
+    "street1":"Avenue Pierre Marzin",
+    "region":"Europe"
+  }' -k
+
+
+
+To indicate that a PNF instance is located in a complex, we create a relation
+
+::
+
+  curl -X PUT \
+    https:// {{ONAP_LB_IP@}}:30233/aai/v14/network/pnfs/pnf/my_pnf_instance_001/relationship-list/relationship \
+    -H 'Accept: application/json' \
+    -H 'Authorization: Basic QUFJOkFBSQ==' \
+    -H 'Cache-Control: no-cache' \
+    -H 'Content-Type: application/json' \
+    -H 'Postman-Token: 15315304-17c5-4e64-aada-bb149f1af915' \
+    -H 'X-FromAppId: AAI' \
+    -H 'X-TransactionId: 999' \
+    -H 'depth: all' \
+    -d '{
+      "related-to": "complex",
+      "related-link": "/aai/v11/cloud-infrastructure/complexes/complex/my_complex_name"
+  }' -k