summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--docs/guides/onap-developer/architecture/onap-architecture.rst112
-rw-r--r--docs/guides/onap-developer/architecture/references.rst11
-rw-r--r--docs/guides/onap-user/index.rst14
-rw-r--r--docs/guides/onap-user/vfw-deployment-tutorial/index.rst555
-rw-r--r--docs/guides/onap-user/vfw-deployment-tutorial/media/image1.pngbin77425 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-deployment-tutorial/media/image10.pngbin132985 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-deployment-tutorial/media/image11.pngbin102624 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-deployment-tutorial/media/image12.pngbin38647 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-deployment-tutorial/media/image13.pngbin38003 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-deployment-tutorial/media/image14.pngbin43136 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-deployment-tutorial/media/image15.pngbin35266 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-deployment-tutorial/media/image16.pngbin61629 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-deployment-tutorial/media/image17.pngbin81037 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-deployment-tutorial/media/image18.pngbin34245 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-deployment-tutorial/media/image19.pngbin65445 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-deployment-tutorial/media/image2.pngbin50034 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-deployment-tutorial/media/image20.pngbin32384 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-deployment-tutorial/media/image21.pngbin69655 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-deployment-tutorial/media/image22.pngbin40592 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-deployment-tutorial/media/image23.pngbin45966 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-deployment-tutorial/media/image24.pngbin102329 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-deployment-tutorial/media/image25.pngbin31538 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-deployment-tutorial/media/image26.pngbin38820 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-deployment-tutorial/media/image27.pngbin48342 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-deployment-tutorial/media/image28.pngbin36863 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-deployment-tutorial/media/image29.pngbin55476 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-deployment-tutorial/media/image3.pngbin69967 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-deployment-tutorial/media/image4.pngbin59084 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-deployment-tutorial/media/image5.pngbin27463 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-deployment-tutorial/media/image6.pngbin32303 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-deployment-tutorial/media/image7.pngbin44643 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-deployment-tutorial/media/image8.pngbin27445 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-deployment-tutorial/media/image9.pngbin55807 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/index.rst278
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image1.pngbin68999 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image10.pngbin24833 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image11.pngbin55963 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image12.pngbin58345 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image13.pngbin26324 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image14.pngbin15953 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image15.pngbin22931 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image16.pngbin88829 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image17.pngbin70861 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image18.pngbin29850 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image19.pngbin54004 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image2.pngbin66144 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image20.pngbin10229 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image21.pngbin57139 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image22.pngbin22290 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image23.pngbin54344 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image24.pngbin6595 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image25.pngbin63407 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image26.pngbin19667 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image27.pngbin19205 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image28.pngbin29313 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image29.pngbin9216 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image3.pngbin10629 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image30.pngbin58811 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image31.pngbin9283 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image32.pngbin14953 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image33.pngbin58081 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image34.pngbin10650 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image35.pngbin30074 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image36.pngbin72368 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image37.pngbin8867 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image38.pngbin22522 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image39.pngbin39501 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image4.pngbin14171 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image40.pngbin19725 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image41.pngbin14283 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image42.pngbin8854 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image43.pngbin52272 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image44.pngbin19635 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image5.pngbin16771 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image6.pngbin8631 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image7.pngbin10377 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image8.pngbin68493 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfw-design-tutorial/media/image9.pngbin18222 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-deployment-tutorial/index.rst1394
-rw-r--r--docs/guides/onap-user/vfwcl-deployment-tutorial/media/image1.pngbin58872 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-deployment-tutorial/media/image10.pngbin62745 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-deployment-tutorial/media/image11.pngbin78220 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-deployment-tutorial/media/image12.pngbin55416 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-deployment-tutorial/media/image13.pngbin63038 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-deployment-tutorial/media/image14.pngbin52627 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-deployment-tutorial/media/image15.pngbin55564 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-deployment-tutorial/media/image16.pngbin49333 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-deployment-tutorial/media/image17.pngbin75060 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-deployment-tutorial/media/image18.pngbin69223 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-deployment-tutorial/media/image19.pngbin87387 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-deployment-tutorial/media/image2.pngbin62456 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-deployment-tutorial/media/image20.pngbin45912 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-deployment-tutorial/media/image21.pngbin56659 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-deployment-tutorial/media/image22.pngbin75834 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-deployment-tutorial/media/image23.pngbin56672 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-deployment-tutorial/media/image24.pngbin77958 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-deployment-tutorial/media/image25.pngbin51450 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-deployment-tutorial/media/image3.pngbin58044 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-deployment-tutorial/media/image4.pngbin44901 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-deployment-tutorial/media/image5.pngbin53983 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-deployment-tutorial/media/image53.jpgbin111569 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-deployment-tutorial/media/image54.pngbin37271 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-deployment-tutorial/media/image6.pngbin28315 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-deployment-tutorial/media/image7.pngbin66075 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-deployment-tutorial/media/image8.pngbin58491 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-deployment-tutorial/media/image9.pngbin70680 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-design-tutorial/index.rst251
-rw-r--r--docs/guides/onap-user/vfwcl-design-tutorial/media/image1.pngbin58872 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-design-tutorial/media/image10.pngbin62745 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-design-tutorial/media/image11.pngbin78220 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-design-tutorial/media/image12.pngbin55416 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-design-tutorial/media/image13.pngbin63038 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-design-tutorial/media/image14.pngbin52627 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-design-tutorial/media/image15.pngbin55564 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-design-tutorial/media/image16.pngbin49333 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-design-tutorial/media/image17.pngbin75060 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-design-tutorial/media/image18.pngbin69223 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-design-tutorial/media/image19.pngbin87387 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-design-tutorial/media/image2.pngbin62456 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-design-tutorial/media/image20.pngbin45912 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-design-tutorial/media/image21.pngbin56659 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-design-tutorial/media/image22.pngbin75834 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-design-tutorial/media/image23.pngbin56672 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-design-tutorial/media/image24.pngbin77958 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-design-tutorial/media/image3.pngbin58044 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-design-tutorial/media/image4.pngbin44901 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-design-tutorial/media/image5.pngbin53983 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-design-tutorial/media/image6.pngbin28315 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-design-tutorial/media/image7.pngbin66075 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-design-tutorial/media/image8.pngbin58491 -> 0 bytes
-rw-r--r--docs/guides/onap-user/vfwcl-design-tutorial/media/image9.pngbin70680 -> 0 bytes
131 files changed, 70 insertions, 2545 deletions
diff --git a/docs/guides/onap-developer/architecture/onap-architecture.rst b/docs/guides/onap-developer/architecture/onap-architecture.rst
index 4f2dc36cb..47928c9c2 100644
--- a/docs/guides/onap-developer/architecture/onap-architecture.rst
+++ b/docs/guides/onap-developer/architecture/onap-architecture.rst
@@ -22,14 +22,15 @@ telecommunication, cable, and cloud service providers—and their solution
providers—to deliver differentiated network services on demand, profitably and
competitively, while leveraging existing investments.
-The challenge that ONAP meets is to help network operators keep up with the scale
-and cost of manual changes required to implement new service offerings, from
-installing new data center equipment to, in some cases, upgrading on-premises
-customer equipment. Many are seeking to exploit SDN and NFV to improve service
-velocity, simplify equipment interoperability and integration, and to reduce
-overall CapEx and OpEx costs. In addition, the current, highly fragmented management
-landscape makes it difficult to monitor and guarantee service-level agreements (SLAs).
-These challenges are still very real now as ONAP creates its eighth release.
+The challenge that ONAP meets is to help network operators keep up with the
+scale and cost of manual changes required to implement new service offerings,
+from installing new data center equipment to, in some cases, upgrading
+on-premises customer equipment. Many are seeking to exploit SDN and NFV to
+improve service velocity, simplify equipment interoperability and integration,
+and to reduce overall CapEx and OpEx costs. In addition, the current, highly
+fragmented management landscape makes it difficult to monitor and guarantee
+service-level agreements (SLAs). These challenges are still very real now as
+ONAP creates its eighth release.
ONAP is addressing these challenges by developing global and massive scale
(multi-site and multi-VIM) automation capabilities for physical, virtual, and
@@ -85,8 +86,8 @@ The ONAP Platform enables service/resource independent capabilities for design,
creation and lifecycle management, in accordance with the following
foundational principles:
-- Ability to dynamically introduce full service lifecycle orchestration (design,
- provisioning and operation) and service API for new services and
+- Ability to dynamically introduce full service lifecycle orchestration (design
+ , provisioning and operation) and service API for new services and
technologies without the need for new platform software releases or without
affecting operations for the existing services
- Scalability and distribution to support a large number of services and large
@@ -127,8 +128,8 @@ which highlights the role of a few key components:
and control framework for an automated instantiation and configuration of
services and resources. Multi-VIM/Cloud provides cloud interoperability for
the ONAP workloads. Analytic framework that closely monitors the service
- behavior handles closed control loop management for handling healing, scaling
- and update dynamically.
+ behavior handles closed control loop management for handling healing,
+ scaling and update dynamically.
#. OOM provides the ability to manage cloud-native installation and deployments
to Kubernetes-managed cloud environments.
#. ONAP Shared Services provides shared capabilities for ONAP modules. The ONAP
@@ -189,7 +190,8 @@ requirements.
Starting with the Istanbul-R9, as a PoC, OOM provides Service Mesh-based
mTLS (mutual TLS) between ONAP components to secure component communications,
-by leveraging Istio. The goal is to substitute AAF functionalities.
+by leveraging Istio. The goal is to substitute (unmaintained) AAF
+functionalities.
Microservices Bus (MSB)
-----------------------
@@ -205,6 +207,9 @@ controllers have increased its level of modularity.
Portal
======
+
+.. important:: PORTAL is an unmaintained ONAP component!
+
ONAP delivers a single, consistent user experience to both design time and
runtime environments, based on the user’s role. Role changes are configured
within a single ONAP instance.
@@ -267,7 +272,8 @@ integrate these tools in their CI/CD environments to package VNFs and upload
them to the validation engine. Once tested, the VNFs can be onboarded through
SDC. In addition, the testing capability of VNFSDK is being utilized at the LFN
Compliance Verification Program to work towards ensuring a highly consistent
-approach to VNF verification. ONAP supports onboarding of CNFs and PNFs as well.
+approach to VNF verification. ONAP supports onboarding of CNFs and PNFs as
+well.
The Policy Creation component deals with policies; these are rules, conditions,
requirements, constraints, attributes, or needs that must be provided,
@@ -284,8 +290,9 @@ management / control of complex mechanisms via abstraction.
VNF SDK
-------
-VND SDK provides the functionality to create VNF/PNF packages, test VNF packages
-and VNF ONAP compliance and store VNF/PNF packages and upload to/from a marketplace.
+VND SDK provides the functionality to create VNF/PNF packages, test VNF
+packages and VNF ONAP compliance and store VNF/PNF packages and upload to/from
+a marketplace.
VVP
---
@@ -332,9 +339,9 @@ through integration of CNF adapter in ONAP SO:
- NSSMF (Network Slice Subnet Management Function)
To realize the three layers, CSMF, NSMF and/or NSSMF are realized within ONAP,
-or use the external CSMF, NSMF or NSSMF. For ONAP-based network slice management,
-different choices can be made as follows. among them, ONAP orchestration currently
-supports options #1 and #4.
+or use the external CSMF, NSMF or NSSMF. For ONAP-based network slice
+management, different choices can be made as follows. among them, ONAP
+orchestration currently supports options #1 and #4.
|image3|
@@ -343,6 +350,9 @@ supports options #1 and #4.
Virtual Infrastructure Deployment (VID)
---------------------------------------
+
+.. important:: VID is an unmaintained ONAP component!
+
The Virtual Infrastructure Deployment (VID) application enables users to
instantiate infrastructure services from SDC, along with their associated
components, and to execute change management operations such as scaling and
@@ -362,11 +372,11 @@ ONAP Multi-VIM/Cloud (MC) and several other ONAP components such as Policy, SO,
A&AI etc. play an important role in enabling “Policy-driven Performance/
Security-Aware Adaptive Workload Placement/ Scheduling” across cloud sites
through OOF-HAS. OOF-HAS uses cloud agnostic Intent capabilities, and real-time
-capacity checks provided by ONAP MC to determine the optimal VIM/Cloud instances,
-which can deliver the required performance SLAs, for workload (VNF etc.)
-placement and scheduling (Homing). Operators now realize the true value of
-virtualization through fine grained optimization of cloud resources while
-delivering performance and security SLAs.
+capacity checks provided by ONAP MC to determine the optimal VIM/Cloud
+instances, which can deliver the required performance SLAs, for workload
+(VNF etc.) placement and scheduling (Homing). Operators now realize the true
+value of virtualization through fine grained optimization of cloud resources
+while delivering performance and security SLAs.
Controllers
-----------
@@ -376,11 +386,13 @@ distributed components and services. Rather than using a single monolithic
control layer, operators may choose to use multiple distinct controller types
that manage resources in the execution environment corresponding to their
assigned controlled domain such as cloud computing resources (SDN-C).
-The Virtual Function Controller (VF-C) and SO NFVO provide an ETSI NFV compliant
-NFV-O function that is responsible for lifecycle management of virtual services
-and the associated physical COTS server infrastructure. VF-C provides a generic
-VNFM capability, and both VF-C and SO NFVO integrate with external VNFMs and
-VIMs as part of an NFV MANO stack.
+The Virtual Function Controller (VF-C) and SO NFVO provide an ETSI NFV
+compliant NFV-O function that is responsible for lifecycle management of
+virtual services and the associated physical COTS server infrastructure. VF-C
+provides a generic VNFM capability, and both VF-C and SO NFVO integrate with
+external VNFMs and VIMs as part of an NFV MANO stack.
+
+.. important:: APP-C is an unmaintained ONAP component!
ONAP has two application level configuration and lifecycle management modules
called SDN-C and App-C. Both provide similar services (application level
@@ -393,11 +405,12 @@ for self service to provide artifacts storing in App-C Database).
SDN-C has been used mainly for Layer1-3 network elements and App-C is
being used for Layer4-7 network functions. This is a very loose
distinction and we expect that over time we will get better alignment and
-have common repository for controller code supporting application level configuration
-and lifecycle management of all network elements (physical or virtual, layer 1-7).
-Because of these overlaps, we have documented SDN-C and App-C together.
-ONAP Controller Family (SDN-C / App-C) configures and maintains the health of L1-7
-Network Function (VNF, PNF, CNF) and network services throughout their lifecycle:
+have common repository for controller code supporting application level
+configuration and lifecycle management of all network elements (physical or
+virtual, layer 1-7). Because of these overlaps, we have documented SDN-C and
+App-C together. ONAP Controller Family (SDN-C / App-C) configures and maintains
+the health of L1-7 Network Function (VNF, PNF, CNF) and network services
+throughout their lifecycle:
- Configures Network Functions (VNF/PNF)
- Provides programmable network application management platform:
@@ -478,9 +491,9 @@ implement actions. The Policy framework is also used to monitor the loops
themselves and manage their lifecycle. DCAE also includes a number of
specialized micro-services to support some use-cases such as the Slice Analysis
or SON-Handler. Some dedicated event processor modules transform collected data
-(SNMP, 3GPP XML, RESTCONF) to VES format and push the various data into data lake.
-CLAMP, Policy and DCAE all have design time aspects to support the creation
-of the loops.
+(SNMP, 3GPP XML, RESTCONF) to VES format and push the various data into data
+lake. CLAMP, Policy and DCAE all have design time aspects to support the
+creation of the loops.
We refer to this automation pattern as “Closed Control loop automation” in that
it provides the necessary automation to proactively respond to network and
@@ -507,13 +520,14 @@ but require human intervention before executing the change. The policy
framework is extended to support additional policy decision capabilities
with the introduction of adaptive policy execution.
-Starting with the Honolulu-R8 and concluding in the Istanbul-R9 release, the CLAMP
-component was successfully integrated into the Policy component initially as a PoC in the
-Honolulu-R8 release and then as a fully integrated component within the Policy component
-in Istanbul-R9 release.
-CLAMP's functional role to provision Policy has been enhanced to support provisioning
-of policies outside of the context of a Control Loop and therefore act as a
-Policy UI. In the Istanbul release the CLAMP integration was officially released.
+Starting with the Honolulu-R8 and concluding in the Istanbul-R9 release, the
+CLAMP component was successfully integrated into the Policy component initially
+as a PoC in the Honolulu-R8 release and then as a fully integrated component
+within the Policy component in Istanbul-R9 release.
+CLAMP's functional role to provision Policy has been enhanced to support
+provisioning of policies outside of the context of a Control Loop and therefore
+act as a Policy UI. In the Istanbul release the CLAMP integration was
+officially released.
|image4|
@@ -521,8 +535,8 @@ Policy UI. In the Istanbul release the CLAMP integration was officially released
Virtual Function Controller (VFC)
---------------------------------
-VFC provides the NFVO capability to manage the lifecycle of network service and VNFs,
-by conforming to ETSI NFV specification.
+VFC provides the NFVO capability to manage the lifecycle of network service and
+VNFs, by conforming to ETSI NFV specification.
Data Movement as a Platform (DMaaP)
-----------------------------------
@@ -539,10 +553,16 @@ ONAP CLI provides a command line interface for access to ONAP.
External APIs
-------------
+
+.. important:: EXTERNALAPI is an unmaintained ONAP component!
+
External APIs provide services to expose the capability of ONAP.
Shared Services
===============
+
+.. important:: LOGGING is an unmaintained ONAP component!
+
ONAP provides a set of operational services for all ONAP components including
activity logging, reporting, common data layer, configuration, persistence,
access control, secret and credential management, resiliency, and software
diff --git a/docs/guides/onap-developer/architecture/references.rst b/docs/guides/onap-developer/architecture/references.rst
index 6f6158447..8d50593ce 100644
--- a/docs/guides/onap-developer/architecture/references.rst
+++ b/docs/guides/onap-developer/architecture/references.rst
@@ -8,7 +8,8 @@
Some high level groupings are introduced below with references to
project/repo/docs/architecture.rst or similar architecture references.
As more information is provided by each project in a docs/architecture.rst
- file, it will appear here. Show source to see the references in each grouping.
+ file, it will appear here. Show source to see the references in each
+ grouping.
References
==========
@@ -32,10 +33,8 @@ User Interfaces
| :ref:`APPC CDT Application Controller Design Tool<onap-appc:appc_lcm_api_guide>`
| :ref:`Policy/CLAMP - Closed Loop Automation Platform<onap-policy-parent:clamp-label>`
| :ref:`CLI - Command Line Interface<onap-cli:architecture>`
-| :ref:`PORTAL<onap-portal:architecture>`
| :ref:`SDC - Service Design and Creation<onap-sdc:architecture>`
| :ref:`UUI- Usecase UI<onap-usecase-ui:architecture>`
-| :ref:`VID - Virtual Infrastructure Deployment<onap-vid:architecture>`
Platform Components
-------------------
@@ -44,7 +43,6 @@ Platform Components
:maxdepth: 1
:titlesonly:
-| :ref:`APPC - Application Controller<onap-appc:master_index>`
| :ref:`DCAE - Data Collection Analytics and Events<onap-dcaegen2:architecture>`
| :ref:`Holmes<onap-holmes-rule-management:architecture>`
| :ref:`Policy<onap-policy-parent:architecture>`
@@ -59,16 +57,11 @@ Common Services
:maxdepth: 1
:titlesonly:
-| :ref:`AAF - Application Authorization Framework<onap-aaf-authz:master_index>`
| :ref:`AAI - Active and Available Inventory<onap-aai-aai-common:architecture>`
| :ref:`CPS - Configuration Persistence Service<onap-cps:architecture>`
| :ref:`DMAAP MR - Data Management as a Platform (Message Router)<onap-dmaap-messagerouter-messageservice:architecture>`
-| :ref:`ExtAPI - External API NBI<onap-externalapi-nbi:architecture>`
-| :ref:`Logging Framework -<onap-logging-analytics:logging_user_guide>`
| :ref:`MSB - Microservices Bus<onap-msb-apigateway:architecture>`
| :ref:`Multi Cloud<onap-multicloud-framework:multicloud-administrator-guide>`
-| :ref:`MUSIC - Multi-site State Coordination Service<onap-music:architecture>`
| :ref:`OOM - ONAP Operations Manager<onap-oom:oom_project_description>`
| :ref:`OPTF - Optimization Framework<onap-optf-osdf:architecture>`
| :ref:`VNF SDK<onap-vnfsdk-model:offeredapis>`
-
diff --git a/docs/guides/onap-user/index.rst b/docs/guides/onap-user/index.rst
index b91019fce..2094ac44d 100644
--- a/docs/guides/onap-user/index.rst
+++ b/docs/guides/onap-user/index.rst
@@ -34,21 +34,11 @@ Component User Guides
For other ONAP components please review the individual
document sets in :ref:`doc_onap-developer_guide_projects`
-Tutorials
----------
-
-.. toctree::
- :maxdepth: 1
-
- vFW Design Tutorial <./vfw-design-tutorial/index.rst>
- vFW Deployment Tutorial <./vfw-deployment-tutorial/index.rst>
- vFWCL Design Tutorial <./vfwcl-design-tutorial/index.rst>
- vFWCL Deployment Tutorial <./vfwcl-deployment-tutorial/index.rst>
-
Verified Use Cases
------------------
In the following page you find all use cases and functional requirements
-which have been officially verified in the actual release by the ONAP community.
+which have been officially verified in the actual release by the ONAP
+community.
* :ref:`Current Use Cases<onap-integration:docs_usecases_release>`
* :ref:`Deprecated Use Cases<onap-integration:docs_usecases>`
diff --git a/docs/guides/onap-user/vfw-deployment-tutorial/index.rst b/docs/guides/onap-user/vfw-deployment-tutorial/index.rst
deleted file mode 100644
index 2419a3ad3..000000000
--- a/docs/guides/onap-user/vfw-deployment-tutorial/index.rst
+++ /dev/null
@@ -1,555 +0,0 @@
-.. This work is licensed under a Creative Commons Attribution 4.0
-.. International License. http://creativecommons.org/licenses/by/4.0
-.. Copyright © 2017-2020 Aarna Networks, Inc.
-
-vFW Service Deployment Tutorial
-###############################
-
-In this tutorial, we will deploy the service created in the previous Service Design tutorial onto OpenStack.
-We will do so by using the VID GUI from the ONAP Portal. Login as user demo.
-
-In this section, you will learn the following through VID GUI
-
-* How to Instantiate a Service
-* How to Instantiate a VNF
-* How to Instantiate VF Module
-* How to Instantiate Network
-
-Let us start by running Robot init script
-
-1. Run Robot init script to populate demo models.
-
-.. code-block::
-
- cd ~/oom/kubernetes/robot
- ./demo-k8s.sh onap init
-
- Result:
- All tests must pass, below is sample output.
-
- Number of parameters:
- 2
- KEY:
- init
- ++ kubectl --namespace onap get pods
- ++ sed 's/ .*//'
- ++ grep robot
- + POD=dev-robot-578b965f4d-vlk8b
- ++ dirname ./demo-k8s.sh
- + DIR=.
- + SCRIPTDIR=scripts/demoscript
- + ETEHOME=/var/opt/ONAP
- + '[' ']'
- ++ kubectl --namespace onap exec dev-robot-578b965f4d-vlk8b -- bash -c 'ls -1q /share/logs/ | wc -l'
- + export GLOBAL_BUILD_NUMBER=3
- + GLOBAL_BUILD_NUMBER=3
- ++ printf %04d 3
- + OUTPUT_FOLDER=0003_demo_init
- + DISPLAY_NUM=93
- + VARIABLEFILES='-V /share/config/robot_properties.py'
- + kubectl --namespace onap exec dev-robot-578b965f4d-vlk8b -- /var/opt/ONAP/runTags.sh -V /share/config/robot_properties.py
- -d /share/logs/0003_demo_init -i InitDemo --display 93
- Starting Xvfb on display :93 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/0003_demo_init/output.xml
- Log: /share/logs/0003_demo_init/log.html
- Report: /share/logs/0003_demo_init/report.html
-
-2. Create vFW_demo_service Instance
-
- A. Login into the ONAP portal as user demo / demo123456!
-
- |image4|
-
- B. Go to Home and select Virtual Infrastructure Deployment (VID) application
-
- |image11|
-
-If you see VID reporting a Security failure, and the browser does not give option to Allow Exception button as below
-
-|image22|
-
-Apply the below workaround for the above issue
-
-Copy the vid.api.simpledemo.onap.org:30200 from the above window, open new tab and paste the copied URL
-as https://vid.api.simpledemo.onap.org:30200 and click on Advanced then click on Accept the Risk and Continue tab
-
-|image13|
-
-Then Close the tab, go to the ONAP Home page and load the VID UI again, you will see VID home page
-
-|image17|
-
- C. Select Test API for A-la-carte as VNF_API(old) then click Browse SDC Service Models (Left side panel)
-
- |image10|
-
- D. Search for the service to instantiate, select a service (vfw_demo_service) distributed in SDC and click Deploy
-
- |image1|
-
- E. Complete the fields indicated by the red star and click Confirm
-
- * Instance Name = vFW_service_00
- * Subscriber Name = Demonstration
- * Service Type = vFW
- * Owning Entity = OE-Demonstration
-
- |image24|
-
- F. Select Confirm Button
-
- We should see the “Service instance was created successfully” message
-
- |image15|
-
- G. Click Close and the next screen should appear. It will allow you to declare VNF(s) and Network(s)
- that are part of the service model composition
-
- |image29|
-
-3. Instantiate a VNF
-
- A. click on “Add node instance” and select the VNF you want to instantiate in the list
-
- |image9|
-
- B. Complete the fields indicated by the red star and click Confirm
-
- * Instance Name = vFW_demo_VNF
- * Product Family = vFW
- * Region = RegionOne(CLOUDOWNER)
- * Tenant = admin
- * Line Of Business = LOB-Demonstration
- * Platform = Platform-Demonstration
-
- |image6|
-
-You will get a status complete dialog message
-
-|image18|
-
- C. Click on close button, the following screen then should appear
-
- |image16|
-
-4. Instantiate VF Module
-
- Note: Before creating VF module get the required parameter values to prepare SDNC preload data
-
- A. Copy the following VNF attributes from VNF instance detail screen
-
- * generic-vnf-name = vFW_demo_VNF (value must be equal to the VNF instance name value)
-
- |image25|
-
- * generic-vnf-type = vFW_demo_service/vFW_demo 0 (value must be equal to VNF Type value)
-
- |image20|
-
- * service-type = f7c80167-ed06-48ef-a991-61b43196f98f (value must be equal to the service instance id value)
-
- |image26|
-
- B. Copy the following attributes From Create VF Module screen
-
- * vnf-name = lfn_vf_module (value must be equal to the VF module instance name value)
- * vnf-type = VfwDemo..base_vfw..module-0 (value must be equal to the “Model Name” value - see create VF module screen)
-
- |image27|
-
- C. Get the required vnf-parameters values from Heat env file imported while SDC design
- (refer https://github.com/onap/demo/blob/master/heat/vFW/base_vfw.env)
-
- Login to Openstack and execute the below commands and get the required openstack related parameter values
- to update in SDNC preload data
-
- * download the image ubuntu-14.04 from cloud images & create an image with "ubuntu-14-04-cloud-amd6" name
- * create the flavor with m1.medium
- * create OAM_NETWORK ID & OAM_SUBNET ID (use subnet range from base_vfw.env file)
- * execute openstack security group rule to open all ports for onap
-
- D. Run the SDNC preload curl command
- Below is the sample curl command updated with all the required parameters
-
- .. code-block::
-
- curl -k -X POST https://sdnc.api.simpledemo.onap.org:30267/restconf/operations/GENERIC-RESOURCE-API:preload-vf-module-topology-operation \
- -H 'Accept: application/json' \
- -H 'Authorization: Basic YWRtaW46S3A4Yko0U1hzek0wV1hsaGFrM2VIbGNzZTJnQXc4NHZhb0dHbUp2VXkyVQ==' \
- -H 'Content-Type: application/json' \
- -H 'X- FromAppId: API client' \
- -H 'cache-control: no-cache' \
- -d @vFW_sdnc_VF_preload.json
-
- Below is the json file payload content
- cat vFW_sdnc_VF_preload.json
- {
- "input": {
- "request-information": {
- "notification-url": "onap.org",
- "order-number": "1",
- "order-version": "1",
- "request-action": "PreloadVfModuleRequest",
- "request-id": "test"
- },
- "sdnc-request-header": {
- "svc-action": "reserve",
- "svc-notification-url": "http:\/\/onap.org:8080\/adapters\/rest\/SDNCNotify",
- "svc-request-id": "test"
- },
- "preload-vf-module-topology-information": {
- "vnf-resource-assignments": {
- "availability-zones": {
- "availability-zone": [
- "nova"
- ],
- "max-count": "1"
- },
- "vnf-networks": {
- "vnf-network": []
- }
- },
- "vf-module-topology": {
- "vf-module-topology-identifier": {
- "vf-module-name": "lfn_vf_module"
- },
- "vf-module-parameters": {
- "param":[{
- "name": "vfw_image_name",
- "value": "ubuntu-14-04-cloud-amd6"
- },
- {
- "name": "vfw_flavor_name",
- "value": "m1.medium"
- },
- {
- "name": "vfw_name_0",
- "value": "zdfw1fwl01fwl09"
- },
- {
- "name": "vfw_int_unprotected_private_ip_0",
- "value": "192.168.10.109"
- },
- {
- "name": "vfw_int_protected_private_ip_0",
- "value": "192.168.20.109"
- },
- {
- "name": "vfw_onap_private_ip_0",
- "value": "10.10.10.15"
- },
- {
- "name": "vfw_int_protected_private_floating_ip",
- "value": "192.168.10.209"
- },
- {
- "name": "vpg_int_unprotected_private_ip_0",
- "value": "192.168.10.209"
- },
- {
- "name": "vpg_image_name",
- "value": "ubuntu-14-04-cloud-amd6"
- },
- {
- "name": "vpg_flavor_name",
- "value": "m1.medium"
- },
- {
- "name": "vpg_name_0",
- "value": "zdfw1fwl01pgn09"
- },
- {
- "name": "vpg_onap_private_ip_0",
- "value": "10.10.10.16"
- },
- {
- "name": "vsn_image_name",
- "value": "ubuntu-14-04-cloud-amd6"
- },
- {
- "name": "vsn_flavor_name",
- "value": "m1.medium"
- },
- {
- "name": "vsn_name_0",
- "value": "zdfw1fwl01snk09"
- },
- {
- "name": "vsn_int_protected_private_ip_0",
- "value": "192.168.20.251"
- },
- {
- "name": "vsn_onap_private_ip_0",
- "value": "10.10.10.17"
- },
- {
- "name": "public_net_id",
- "value": "9af666a2-73db-4dd4-bdad-a5dd82f6fddc"
- },
- {
- "name": "unprotected_private_net_id",
- "value": "zdfw1fwl09_unprotected"
- },
- {
- "name": "unprotected_private_net_cidr",
- "value": "192.168.10.0/24"
- },
- {
- "name": "protected_private_net_id",
- "value": "zdfw1fwl09_protected"
- },
- {
- "name": "protected_private_net_cidr",
- "value": "192.168.20.0/24"
- },
- {
- "name": "onap_private_net_id",
- "value": "OAM_NETWORK"
- },
- {
- "name": "onap_private_subnet_id",
- "value": "OAM_SUBNET"
- },
- {
- "name": "onap_private_net_cidr",
- "value": "10.10.10.0/24"
- },
- {
- "name": "vfw_name",
- "value": "vFW_demo_VNF"
- },
- {
- "name": "vnf_id:",
- "value": "vFirewall_demo_app"
- },
- {
- "name": "vf_module_id:",
- "value": "vFirewall"
- },
- {
- "name": "dcae_collector_ip",
- "value": "127.0.0.1"
- },
- {
- "name": "dcae_collector_port",
- "value": "30235"
- },
- {
- "name": "demo_artifacts_version",
- "value": "1.6.0-SNAPSHOT"
- },
- {
- "name": "install_script_version",
- "value": "1.6.0-SNAPSHOT"
- },
- {
- "name": "key_name",
- "value": "vfw_key"
- },
- {
- "name": "pub_key",
- "value": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQD1Bv4Vb3RzfKoW3R6j+bk4fqCVkrHSqnK2Xo1A2139jGm6wvUocQznaawoL5kfqTATPOl1kwi6EvWgy+aVV7UmELdm2nFPUErcPT8B73hfFImpNkz6q93TCmx4lJNz+5k6nemUn+K4fz7a1ggLYahTOTzJsNBffaVE7LA/ahGxzK7zVqWrdO0hoJAxnENp46qEtrQk3PIoWn4MRy2xj4hnnLFETWxYcktIdV6YQzJUlK/wZOWrGdkPdnjLaIO84ZxjPedxgGl1BOuUKAWqlC0g9I1Q9tcCrBnahVFLt3ibloFcLSEl1zrzYtJtF2w1i/SDBSpqxIr68TEo7/FPfAP1"
- },
- {
- "name": "cloud_env",
- "value": "openstack"
- },
- {
- "name": "sec_group",
- "value": "default"
- },
- {
- "name": "nexus_artifact_repo",
- "value": "https://nexus.onap.org"
- }
-
- ]
- }
- },
- "vnf-topology-identifier-structure": {
- "vnf-name": "vFW_demo_VNF",
- "vnf-type": "vFW_demo_service/vFW_demo 0"
- }
- }
- }
- }
-
- Output looks somthing like below
- {"output":{"response-message":"success","ack-final-indicator":"Y","svc-request-id":"test","response-code":"200"}}
-
- E. Now click on Add VF-Module with the same name as updated through SDNC preload, click on SDN-C Preload
- check box then press confirm
-
- |image28|
-
-You will get a status complete dialog message
-
-|image2|
-
- F. Click on close, now the following screen should appear
-
- |image19|
-
-5. Instantiate Network
-
- A. Prepare the “SDNC preload” data before creating network instance
-
- * network-role = integration_test_net (provide any value)
- * network-technology = neutron (use “neutron” as this example will instantiate a network using openstack neutron application)
- * service-type = vFW_demo_service (value must be equal to “Service Name” (=service model name) displayed on VID screen)
-
- |image5|
-
- * network-name = lfn_nwt_001 (value must be equal to the desired network instance name)
-
- |image7|
-
- * network-type = Generic NeutronNet (value must be equal to “Model Name”“Generic NeutronNet” displayed on VID screen)
-
- |image8|
-
- B. Run the below SDNC preload curl command
-
- .. code-block::
-
- curl -k -X POST https://sdnc.api.simpledemo.onap.org:30267/restconf/operations/GENERIC-RESOURCE-API:preload-network-topology-operation \
- -H 'Accept: application/json' \
- -H 'Authorization: Basic YWRtaW46S3A4Yko0U1hzek0wV1hsaGFrM2VIbGNzZTJnQXc4NHZhb0dHbUp2VXkyVQ==' \
- -H 'Content-Type: application/json' \
- -H 'X- FromAppId: API client' \
- -H 'cache-control: no-cache' \
- -d @vFW_sdnc_Network_preload.json
-
- Below is the json file payload content
- cat vFW_sdnc_Network_preload.json
-
- {
- "input": {
- "preload-network-topology-information": {
- "network-policy": [],
- "route-table-reference": [],
- "vpn-bindings": [],
- "network-topology-identifier-structure": {
- "network-role": "integration_test_net",
- "network-technology": "neutron",
- "network-name": "lfn_nwt_001",
- "network-type": "Generic NeutronNet"
- },
- "is-external-network": false,
- "is-shared-network": false,
- "is-provider-network": false,
- "physical-network-name": "Not Aplicable",
- "subnets": [{
- "cidr-mask": "24",
- "dhcp-enabled": "N",
- "gateway-address": "10.10.10.1",
- "ip-version": "4",
- "start-address": "10.10.10.20",
- "subnet-name": "test-subnet-005"
- }]
- },
- "sdnc-request-header": {
- "svc-request-id": "test",
- "svc-notification-url": "http:\/\/onap.org:8080\/adapters\/rest\/SDNCNotify",
- "svc-action": "reserve"
- }
- }
- }
-
- Output looks something like below
- {"output":{"response-message":"success","ack-final-indicator":"Y","svc-request-id":"test","response-code":"200"}}
-
- C. Click on “Add Network” and select the Network you want to instantiate in the list
-
- |image12|
-
- D. Click Confirm, We will get a status complete dialog message
-
- |image14|
-
- E. Click close, the following screen should appear
-
- |image3|
-
- At this point, the Network and subnets are now instantiated in the cloud platform
-
-6. Now login to OpenStack Horizon dashboard, see stacks created in Openstack
-
- A. Go to Project → Orchestration → Stacks
- We can see the VF module and Network stacks status
-
- |image23|
-
- B. Now we can go to Admin → Compute → Instances to check the instances status
-
- |image21|
-
-
-.. |image4| image:: media/image4.png
-.. |image11| image:: media/image11.png
-.. |image22| image:: media/image22.png
-.. |image13| image:: media/image13.png
-.. |image17| image:: media/image17.png
-.. |image10| image:: media/image10.png
-.. |image1| image:: media/image1.png
-.. |image24| image:: media/image24.png
-.. |image15| image:: media/image15.png
-.. |image29| image:: media/image29.png
-.. |image9| image:: media/image9.png
-.. |image6| image:: media/image6.png
-.. |image18| image:: media/image18.png
-.. |image16| image:: media/image16.png
-.. |image25| image:: media/image25.png
-.. |image20| image:: media/image20.png
-.. |image26| image:: media/image26.png
-.. |image27| image:: media/image27.png
-.. |image28| image:: media/image28.png
-.. |image2| image:: media/image2.png
-.. |image19| image:: media/image19.png
-.. |image5| image:: media/image5.png
-.. |image7| image:: media/image7.png
-.. |image8| image:: media/image8.png
-.. |image12| image:: media/image12.png
-.. |image14| image:: media/image14.png
-.. |image3| image:: media/image3.png
-.. |image23| image:: media/image23.png
-.. |image21| image:: media/image21.png
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/docs/guides/onap-user/vfw-deployment-tutorial/media/image1.png b/docs/guides/onap-user/vfw-deployment-tutorial/media/image1.png
deleted file mode 100644
index 9a436a562..000000000
--- a/docs/guides/onap-user/vfw-deployment-tutorial/media/image1.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-deployment-tutorial/media/image10.png b/docs/guides/onap-user/vfw-deployment-tutorial/media/image10.png
deleted file mode 100644
index 99cca5847..000000000
--- a/docs/guides/onap-user/vfw-deployment-tutorial/media/image10.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-deployment-tutorial/media/image11.png b/docs/guides/onap-user/vfw-deployment-tutorial/media/image11.png
deleted file mode 100644
index 9e7b8415d..000000000
--- a/docs/guides/onap-user/vfw-deployment-tutorial/media/image11.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-deployment-tutorial/media/image12.png b/docs/guides/onap-user/vfw-deployment-tutorial/media/image12.png
deleted file mode 100644
index ace4b578e..000000000
--- a/docs/guides/onap-user/vfw-deployment-tutorial/media/image12.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-deployment-tutorial/media/image13.png b/docs/guides/onap-user/vfw-deployment-tutorial/media/image13.png
deleted file mode 100644
index 58052a16b..000000000
--- a/docs/guides/onap-user/vfw-deployment-tutorial/media/image13.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-deployment-tutorial/media/image14.png b/docs/guides/onap-user/vfw-deployment-tutorial/media/image14.png
deleted file mode 100644
index 10802bb1c..000000000
--- a/docs/guides/onap-user/vfw-deployment-tutorial/media/image14.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-deployment-tutorial/media/image15.png b/docs/guides/onap-user/vfw-deployment-tutorial/media/image15.png
deleted file mode 100644
index 2421422a9..000000000
--- a/docs/guides/onap-user/vfw-deployment-tutorial/media/image15.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-deployment-tutorial/media/image16.png b/docs/guides/onap-user/vfw-deployment-tutorial/media/image16.png
deleted file mode 100644
index 41402574a..000000000
--- a/docs/guides/onap-user/vfw-deployment-tutorial/media/image16.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-deployment-tutorial/media/image17.png b/docs/guides/onap-user/vfw-deployment-tutorial/media/image17.png
deleted file mode 100644
index f3cd0551c..000000000
--- a/docs/guides/onap-user/vfw-deployment-tutorial/media/image17.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-deployment-tutorial/media/image18.png b/docs/guides/onap-user/vfw-deployment-tutorial/media/image18.png
deleted file mode 100644
index 202870d17..000000000
--- a/docs/guides/onap-user/vfw-deployment-tutorial/media/image18.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-deployment-tutorial/media/image19.png b/docs/guides/onap-user/vfw-deployment-tutorial/media/image19.png
deleted file mode 100644
index 588bdf9a4..000000000
--- a/docs/guides/onap-user/vfw-deployment-tutorial/media/image19.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-deployment-tutorial/media/image2.png b/docs/guides/onap-user/vfw-deployment-tutorial/media/image2.png
deleted file mode 100644
index 3c473a492..000000000
--- a/docs/guides/onap-user/vfw-deployment-tutorial/media/image2.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-deployment-tutorial/media/image20.png b/docs/guides/onap-user/vfw-deployment-tutorial/media/image20.png
deleted file mode 100644
index e0a518868..000000000
--- a/docs/guides/onap-user/vfw-deployment-tutorial/media/image20.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-deployment-tutorial/media/image21.png b/docs/guides/onap-user/vfw-deployment-tutorial/media/image21.png
deleted file mode 100644
index deee9b45c..000000000
--- a/docs/guides/onap-user/vfw-deployment-tutorial/media/image21.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-deployment-tutorial/media/image22.png b/docs/guides/onap-user/vfw-deployment-tutorial/media/image22.png
deleted file mode 100644
index b757cd2de..000000000
--- a/docs/guides/onap-user/vfw-deployment-tutorial/media/image22.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-deployment-tutorial/media/image23.png b/docs/guides/onap-user/vfw-deployment-tutorial/media/image23.png
deleted file mode 100644
index b46209a98..000000000
--- a/docs/guides/onap-user/vfw-deployment-tutorial/media/image23.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-deployment-tutorial/media/image24.png b/docs/guides/onap-user/vfw-deployment-tutorial/media/image24.png
deleted file mode 100644
index 35f60af5a..000000000
--- a/docs/guides/onap-user/vfw-deployment-tutorial/media/image24.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-deployment-tutorial/media/image25.png b/docs/guides/onap-user/vfw-deployment-tutorial/media/image25.png
deleted file mode 100644
index c80cf7ace..000000000
--- a/docs/guides/onap-user/vfw-deployment-tutorial/media/image25.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-deployment-tutorial/media/image26.png b/docs/guides/onap-user/vfw-deployment-tutorial/media/image26.png
deleted file mode 100644
index 0057a5742..000000000
--- a/docs/guides/onap-user/vfw-deployment-tutorial/media/image26.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-deployment-tutorial/media/image27.png b/docs/guides/onap-user/vfw-deployment-tutorial/media/image27.png
deleted file mode 100644
index 864809ef5..000000000
--- a/docs/guides/onap-user/vfw-deployment-tutorial/media/image27.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-deployment-tutorial/media/image28.png b/docs/guides/onap-user/vfw-deployment-tutorial/media/image28.png
deleted file mode 100644
index 971ab49ed..000000000
--- a/docs/guides/onap-user/vfw-deployment-tutorial/media/image28.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-deployment-tutorial/media/image29.png b/docs/guides/onap-user/vfw-deployment-tutorial/media/image29.png
deleted file mode 100644
index 3f70ea3b3..000000000
--- a/docs/guides/onap-user/vfw-deployment-tutorial/media/image29.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-deployment-tutorial/media/image3.png b/docs/guides/onap-user/vfw-deployment-tutorial/media/image3.png
deleted file mode 100644
index 5dd1626ba..000000000
--- a/docs/guides/onap-user/vfw-deployment-tutorial/media/image3.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-deployment-tutorial/media/image4.png b/docs/guides/onap-user/vfw-deployment-tutorial/media/image4.png
deleted file mode 100644
index 2fd589510..000000000
--- a/docs/guides/onap-user/vfw-deployment-tutorial/media/image4.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-deployment-tutorial/media/image5.png b/docs/guides/onap-user/vfw-deployment-tutorial/media/image5.png
deleted file mode 100644
index acf13703f..000000000
--- a/docs/guides/onap-user/vfw-deployment-tutorial/media/image5.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-deployment-tutorial/media/image6.png b/docs/guides/onap-user/vfw-deployment-tutorial/media/image6.png
deleted file mode 100644
index b15d9eb8f..000000000
--- a/docs/guides/onap-user/vfw-deployment-tutorial/media/image6.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-deployment-tutorial/media/image7.png b/docs/guides/onap-user/vfw-deployment-tutorial/media/image7.png
deleted file mode 100644
index 08212e5c6..000000000
--- a/docs/guides/onap-user/vfw-deployment-tutorial/media/image7.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-deployment-tutorial/media/image8.png b/docs/guides/onap-user/vfw-deployment-tutorial/media/image8.png
deleted file mode 100644
index 8a8f5ebf0..000000000
--- a/docs/guides/onap-user/vfw-deployment-tutorial/media/image8.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-deployment-tutorial/media/image9.png b/docs/guides/onap-user/vfw-deployment-tutorial/media/image9.png
deleted file mode 100644
index 8c8691c0f..000000000
--- a/docs/guides/onap-user/vfw-deployment-tutorial/media/image9.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/index.rst b/docs/guides/onap-user/vfw-design-tutorial/index.rst
deleted file mode 100644
index 171d295d2..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/index.rst
+++ /dev/null
@@ -1,278 +0,0 @@
-.. This work is licensed under a Creative Commons Attribution 4.0
-.. International License. http://creativecommons.org/licenses/by/4.0
-.. Copyright © 2017-2020 Aarna Networks, Inc.
-
-vFW Service Design Tutorial
-###########################
-
-Browser settings
-================
-
-This exercise will use the ONAP Portal. To interact properly with Portal services, please make sure to set the
-following settings in your Firefox browser before starting the Service Design and Deployment.
-
-Check your Firefox browser setting to make sure that Remote Proxy DNS setting is on
-
-* Type "about:config" in the address bar
-* Select "Accept the risk"
-* In the Search enter Proxy
-* Enable "network.proxy.socks_remote_dns = true" (Just double click to change the flag)
-* Please make sure to undo this change after testing, since this could cause potential security risk!
-
-Check your Firefox settings to allow mixed contents
-
-* Type "about:config" in the address bar
-* In the Search enter Mixed
-* Click on variable security.mixed_content.block_active_content
-* Change the value to False (Just double click to change the flag)
-
-Below are the portal URL & User Login details to connect to the ONAP portal
-
-https://portal.api.simpledemo.onap.org:30225/ONAPPORTAL/login.htm
-
-User login credentials and roles
-::
-
- Username=cs0008, password=demo123456!, Role=DESIGNER
- Username=demo, password=demo123456!, Role=ADMIN
-
-.. note::
- From F release onwards, service design and deployment can be done with cs0008 and demo users
-
-Ex: To open portal URL from FireFox browser and accept SSL certificate exception after the settings
-
-|image8|
-
-Login into the portal as designer (cs0008) and enter password (demo123456!) then click on LOGIN
-
-|image21|
-
-Service Design & Distribution using SDC GUI
-===========================================
-
-In this section, you will learn the following through the SDC GUI
-
-* How to create a Vendor License Model
-* How to create and onboard Vendor Software Product
-* How to create a Service
-* How to distribute a Service
-
-Let us start by creating the VLM
-
-1. Create Vendor Licence Model (VLM) in SDC
-
- A. Login to the ONAP portal as designer cs0008 / demo123456!
- B. Go to SDC → ONBOARD → WORKSPACE → CREATE NEW VLM (Enter below attributes and Create)
-
- |image35|
-
- |image34|
-
- C. Create New License Key Group
-
- |image15|
-
- D. Create Entitlement Pool
-
- |image38|
-
- E. Create Feature Group (Assign Entitlement Pool & License Key Group in other 2 tabs)
-
- |image5|
-
- |image40|
-
- |image27|
-
- F. Create License Agreement (Assign Feature Group under the Feature Group Tab)
-
- |image32|
-
- |image9|
-
- G. Click Submit (Top Right Corner of the page) and fill comment then press Commit & Submit
-
- |image7|
-
-2. Create Vendor Software Product (VSP)
-
-Prerequisite: Download VNF Heat package from gerrit
-
-.. code: bash
- git clone "https://gerrit.onap.org/r/demo"
-
-and copy the required HEAT package & use it while upload the package
-
- A. Go to SDC Home → ONBOARD → WORKSPACE → CREATE NEW VSP (complete all the fields, click on Network Package
- checkbox then click create)
-
- |image22|
-
- B. Assign the license Agreement by selecting the Missing icon
-
- |image20|
-
- C. Select the Licenses drop down box (populate all three fields)
-
- |image24|
-
- D. Go to Overview (Left hand side bar), select Software Product Attachments in the right pane, click Select file
-
- Import HEAT package (ex: vfw_demo.zip) by clicking Select File Button. This file should be copied to your
- local workstation where the browser is running.
-
- |image37|
-
-It will take you to the setup page
-
-|image25|
-
- E. Click on “PROCEED TO VALIDATION” and ignore warnings
-
- |image17|
-
- F. Click Submit (right corner), fill the comment then press COMMIT & SUBMIT, you will see submit successful message
-
- |image3|
-
-3. Import Vendor Software Product and certify
-
- A. Go to the SDC Home page click Import VSP button
-
- |image13|
-
- B. From the Import VSP box, expand a VSP name and click the Import VSP icon
-
- |image39|
-
- C. In the General section, complete all fields then click create (top right corner)
-
- |image43|
-
- D. Click Check In to save changes (top right corner), enter a comment and click OK
-
- |image29|
-
- E. click CATALOG and search for the checked-in VF, you will see your VF In Design Check In state
-
- |image10|
-
- F. Click the VF and click certify (top right corner), enter a comment then click OK
-
- |image11|
-
- |image31|
-
-4. Create a Service and certify
-
- A. Go to SDC UI → Home Page and Select the Add Service Button
-
- |image44|
-
- B In the General section, complete all fields then click Create
-
- |image19|
-
- C. select the “Composition” Menu on the left hand side menu bar
-
- |image41|
-
- D. On the Composition Page, Search for the vFW_demo service (look under Application L4+)
-
- |image14|
-
- E. On the Composition Page, Search for Generic NeutronNet (look under Generic/Network Elements)
-
- |image26|
-
- F. Drag and drop vFW_demo created earlier during onboarding & the Generic NeutronNet onto the right hand side palette
-
- |image1|
-
- G. Connect the elements by connecting + signs and Select appropriate options for
- Requirements and Capabilities, click Next then click Finish at the end
-
- |image33|
-
- |image2|
-
- |image23|
-
- |image36|
-
- H. Click Check In to save changes, Enter a comment and click OK
-
- |image6|
-
- I. click CATALOG and search for the checked-in Service, you will see you service is in
- Design Checkin state
-
- |image28|
-
- J. Click the Service and click Certify, Enter a comment and click OK, you will
- see certification succeeded message
-
- |image31|
-
-5. Distribute the Service
-
- A. From the SDC HOME page, click CATALOG and search for the service
- (it will be in Waiting For Distribution state)
-
- |image18|
-
- B. Select the service that is Ready for Distribution, click Distribute (top right corner)
-
- |image30|
-
- |image12|
-
- C. To Monitor Distribution, click on Distribution on the left pane
-
- |image41|
-
- |image16|
-
-
-.. |image1| image:: media/image1.png
-.. |image2| image:: media/image2.png
-.. |image3| image:: media/image3.png
-.. |image5| image:: media/image5.png
-.. |image6| image:: media/image6.png
-.. |image7| image:: media/image7.png
-.. |image8| image:: media/image8.png
-.. |image9| image:: media/image9.png
-.. |image10| image:: media/image10.png
-.. |image11| image:: media/image11.png
-.. |image12| image:: media/image12.png
-.. |image13| image:: media/image13.png
-.. |image14| image:: media/image14.png
-.. |image15| image:: media/image15.png
-.. |image16| image:: media/image16.png
-.. |image17| image:: media/image17.png
-.. |image18| image:: media/image18.png
-.. |image19| image:: media/image19.png
-.. |image20| image:: media/image20.png
-.. |image21| image:: media/image21.png
-.. |image22| image:: media/image22.png
-.. |image23| image:: media/image23.png
-.. |image24| image:: media/image24.png
-.. |image25| image:: media/image25.png
-.. |image26| image:: media/image26.png
-.. |image27| image:: media/image27.png
-.. |image28| image:: media/image28.png
-.. |image29| image:: media/image29.png
-.. |image30| image:: media/image30.png
-.. |image31| image:: media/image31.png
-.. |image32| image:: media/image32.png
-.. |image33| image:: media/image33.png
-.. |image34| image:: media/image34.png
-.. |image35| image:: media/image35.png
-.. |image36| image:: media/image36.png
-.. |image37| image:: media/image37.png
-.. |image38| image:: media/image38.png
-.. |image39| image:: media/image39.png
-.. |image40| image:: media/image40.png
-.. |image41| image:: media/image41.png
-.. |image43| image:: media/image43.png
-.. |image44| image:: media/image44.png
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image1.png b/docs/guides/onap-user/vfw-design-tutorial/media/image1.png
deleted file mode 100644
index 5c5299240..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image1.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image10.png b/docs/guides/onap-user/vfw-design-tutorial/media/image10.png
deleted file mode 100644
index 715beec1b..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image10.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image11.png b/docs/guides/onap-user/vfw-design-tutorial/media/image11.png
deleted file mode 100644
index b0b2c48c4..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image11.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image12.png b/docs/guides/onap-user/vfw-design-tutorial/media/image12.png
deleted file mode 100644
index e7d073836..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image12.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image13.png b/docs/guides/onap-user/vfw-design-tutorial/media/image13.png
deleted file mode 100644
index aede96143..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image13.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image14.png b/docs/guides/onap-user/vfw-design-tutorial/media/image14.png
deleted file mode 100644
index 1971481cb..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image14.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image15.png b/docs/guides/onap-user/vfw-design-tutorial/media/image15.png
deleted file mode 100644
index e2a76bccc..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image15.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image16.png b/docs/guides/onap-user/vfw-design-tutorial/media/image16.png
deleted file mode 100644
index f86781040..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image16.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image17.png b/docs/guides/onap-user/vfw-design-tutorial/media/image17.png
deleted file mode 100644
index da40db685..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image17.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image18.png b/docs/guides/onap-user/vfw-design-tutorial/media/image18.png
deleted file mode 100644
index 4ccf96063..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image18.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image19.png b/docs/guides/onap-user/vfw-design-tutorial/media/image19.png
deleted file mode 100644
index abaf5ac2c..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image19.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image2.png b/docs/guides/onap-user/vfw-design-tutorial/media/image2.png
deleted file mode 100644
index a3c3bc6d4..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image2.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image20.png b/docs/guides/onap-user/vfw-design-tutorial/media/image20.png
deleted file mode 100644
index 87922aa60..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image20.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image21.png b/docs/guides/onap-user/vfw-design-tutorial/media/image21.png
deleted file mode 100644
index cc3379f5f..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image21.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image22.png b/docs/guides/onap-user/vfw-design-tutorial/media/image22.png
deleted file mode 100644
index 0e6abfa99..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image22.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image23.png b/docs/guides/onap-user/vfw-design-tutorial/media/image23.png
deleted file mode 100644
index ba91ed3ff..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image23.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image24.png b/docs/guides/onap-user/vfw-design-tutorial/media/image24.png
deleted file mode 100644
index 9e2aee9a4..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image24.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image25.png b/docs/guides/onap-user/vfw-design-tutorial/media/image25.png
deleted file mode 100644
index d594cf084..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image25.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image26.png b/docs/guides/onap-user/vfw-design-tutorial/media/image26.png
deleted file mode 100644
index edde3e73c..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image26.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image27.png b/docs/guides/onap-user/vfw-design-tutorial/media/image27.png
deleted file mode 100644
index df81c1163..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image27.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image28.png b/docs/guides/onap-user/vfw-design-tutorial/media/image28.png
deleted file mode 100644
index d9874c552..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image28.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image29.png b/docs/guides/onap-user/vfw-design-tutorial/media/image29.png
deleted file mode 100644
index db2bdf942..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image29.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image3.png b/docs/guides/onap-user/vfw-design-tutorial/media/image3.png
deleted file mode 100644
index fec518b8f..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image3.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image30.png b/docs/guides/onap-user/vfw-design-tutorial/media/image30.png
deleted file mode 100644
index f95fc24bc..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image30.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image31.png b/docs/guides/onap-user/vfw-design-tutorial/media/image31.png
deleted file mode 100644
index 1a5094532..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image31.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image32.png b/docs/guides/onap-user/vfw-design-tutorial/media/image32.png
deleted file mode 100644
index f400a743d..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image32.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image33.png b/docs/guides/onap-user/vfw-design-tutorial/media/image33.png
deleted file mode 100644
index d05154b47..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image33.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image34.png b/docs/guides/onap-user/vfw-design-tutorial/media/image34.png
deleted file mode 100644
index fc4828599..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image34.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image35.png b/docs/guides/onap-user/vfw-design-tutorial/media/image35.png
deleted file mode 100644
index 600f36bd9..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image35.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image36.png b/docs/guides/onap-user/vfw-design-tutorial/media/image36.png
deleted file mode 100644
index 553db66e0..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image36.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image37.png b/docs/guides/onap-user/vfw-design-tutorial/media/image37.png
deleted file mode 100644
index 0b8e4c040..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image37.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image38.png b/docs/guides/onap-user/vfw-design-tutorial/media/image38.png
deleted file mode 100644
index 2fd04d63b..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image38.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image39.png b/docs/guides/onap-user/vfw-design-tutorial/media/image39.png
deleted file mode 100644
index 874b6e9b0..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image39.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image4.png b/docs/guides/onap-user/vfw-design-tutorial/media/image4.png
deleted file mode 100644
index 82e3a920f..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image4.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image40.png b/docs/guides/onap-user/vfw-design-tutorial/media/image40.png
deleted file mode 100644
index 0ef90c9c0..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image40.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image41.png b/docs/guides/onap-user/vfw-design-tutorial/media/image41.png
deleted file mode 100644
index 7895599f9..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image41.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image42.png b/docs/guides/onap-user/vfw-design-tutorial/media/image42.png
deleted file mode 100644
index 6ddd4bda1..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image42.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image43.png b/docs/guides/onap-user/vfw-design-tutorial/media/image43.png
deleted file mode 100644
index 2933f7e97..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image43.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image44.png b/docs/guides/onap-user/vfw-design-tutorial/media/image44.png
deleted file mode 100644
index 9dc118f02..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image44.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image5.png b/docs/guides/onap-user/vfw-design-tutorial/media/image5.png
deleted file mode 100644
index 7c2140e5f..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image5.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image6.png b/docs/guides/onap-user/vfw-design-tutorial/media/image6.png
deleted file mode 100644
index 0594df952..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image6.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image7.png b/docs/guides/onap-user/vfw-design-tutorial/media/image7.png
deleted file mode 100644
index f987e409f..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image7.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image8.png b/docs/guides/onap-user/vfw-design-tutorial/media/image8.png
deleted file mode 100644
index 97a616a69..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image8.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfw-design-tutorial/media/image9.png b/docs/guides/onap-user/vfw-design-tutorial/media/image9.png
deleted file mode 100644
index c2eb4dc7e..000000000
--- a/docs/guides/onap-user/vfw-design-tutorial/media/image9.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-deployment-tutorial/index.rst b/docs/guides/onap-user/vfwcl-deployment-tutorial/index.rst
deleted file mode 100644
index a91eaea75..000000000
--- a/docs/guides/onap-user/vfwcl-deployment-tutorial/index.rst
+++ /dev/null
@@ -1,1394 +0,0 @@
-.. This work is licensed under a Creative Commons Attribution 4.0
-.. International License. http://creativecommons.org/licenses/by/4.0
-.. Copyright © 2017-2021 Aarna Networks, Inc.
-
-vFWCL deployment Tutorial
-#########################
-
-Introduction
-============
-
-This tutorial describes the step by step instructions on how to achieve the control loop for vFW use case. Instructions in this tutorial will enable you to deploy the vfw control loop specific usecase.
-
-vFW service components
-~~~~~~~~~~~~~~~~~~~~~~
-
-The vFW service is composed of the following components
-
-vPKG VNF
-
-- It is a packet generator which sends periodically different volumes of traffic to the sink through the firewall (vFw)
-
-vFWSNK VNF
-
-- Firewall: Reports the volume of traffic passing through to the DCAE collector (VES collector). The vFW has no real firewalling functionality.
-- Traffic sink: Provides a graphical representation (bar charts) showing the volume of incoming traffic.
-
-The below block diagram shows about the components part of vFW usecase
-
-|image25|
-
-vFWCL service overview
-~~~~~~~~~~~~~~~~~~~~~~
-
-The vFW contol loop use case consists in applying policy rules that aim to re-adjust the traffic volume
-when high threshold (700 packets/10s) or low threshold (300 packets/10s) are crossed. In fact, the DCAE collects
-events from the vFW, applies analytics (Threshold Crossing Analytics: TCA microservice) and publishes events to DMaap.
-When detecting the triggering event, the policy engine executes the operational policy via the APP-C that modifies
-vPKG application configurations in order to adjust the traffic volume to 500 packet per 10 seconds.
-
-The vFW control loop is based on VES (VNF Event Stream) reported measurements that TCA analyses and publishes
-related alams to DMaap. The policy has the responsibility for triggering ModifyConfig action that APPC executes
-on the target vnf (vPKG). All closed loop interactions are relying on the Message router (DMaap) by publishing
-topics and subscribing to them.
-
-The ladder diagram below describes the components and their interactions that take place while running the vFWCL
-
-|image53|
-
-Prerequisite:
-vFW service design and deployment should be completed before following the steps of this tutorial
-
-Refer the below tutorials for doing vFW service design and deployment
-
-.. toctree::
- :maxdepth: 1
-
- vFW Design Tutorial <../vfw-design-tutorial/index.rst>
- vFW Deployment Tutorial <../vfw-deployment-tutorial/index.rst>
-
-Adding DCAE artifacts and policies
-==================================
-
-Follow the below steps to upload the blueprint for the TCA (Threshold Checking Application) DCAE microservice
-and Distribute the service to the CLAMP
-
-1. Login as DESIGNER (cs0008) and create the service, checkin and certify
-
-|image16|
-
-2. Add any VNF (ex: vfw_pg) that was already created during the SDC design phase
-
-In the composition canvas drag and drop a resource of type VF from the abstract section in the Elements section (left hand side panel)
-
-|image15|
-
-3. Download the required DCAE MS blueprint to be attached to the service
-
-Use the sample TCA blueprint located here:
-https://git.onap.org/dcaegen2/platform/blueprints/tree/blueprints/k8s-tcagen2-clampnode.yaml
-
-.. note::
- * Check if the version of the plugin used in the blueprint is different from existing, then update the blueprint import to match
- * To check the version run this: `cfy plugins list | grep k8splugin`
-
-4. Now upload the Control Loop Artifact. The procedure to upload the artifact is
-
- * Click on the VF, as in the picture above the ‘vsp_pg 0’ is selected
- * Click on ‘DEPLOYMENT ARTIFACTS’ and then click on “Add Artifact”
-
- |image5|
-
- * Fill the details and in the type select DCAE_INVENTORY_BLUEPRINT, then click on Done as in the picture shown below
-
- |image13|
-
-5. After uploading the DCAE artifact to the SDC Service, attach the policy model to the Service. From the left drop down,
-select TCA policy under Policies, and click on the Add policy
-
-|image1|
-
-6. Click on Checkin on top right corner then click OK
-
-|image12|
-
-7. Search and select the same service from CATALOG and click on Certify on top right corner
-
-|image14|
-
-8. Click Distribute to distribute the service, then click on Distribution in the left hand side panel and monitor until
-the distribution is complete. We should see artifacts deployed in CLAMP and Policy engine, as can be seen in the picture below
-
-|image19|
-
-At this point we can open the CLAMP GUI and verify that the DCAE microservice design template is in place
-
-Deploy DCAE and Policy through CLAMP
-====================================
-
-CLAMP is a GUI tool which enables the users to design the policies, distribute them to the DROOLS engine and eventually deploy
-the DCAE microservices.
-
-1. Add the necessary certificates in the browser to login to the CLAMP GUI
-
-The default certificate can be found here: https://gerrit.onap.org/r/gitweb?p=clamp.git;a=blob;f=src/main/resources/clds/aaf/org.onap.clamp.p12;h=268aa1a3ce56e01448f8043cc0b05b5fceb5a47d;hb=HEAD
-
-The password is: "China in the Spring"
-The certificate must be loaded into your favorite browser before trying to load the CLAMP UI.
-
-2. After the certificate is added, the CLAMP GUI can be accessed at:
-`https://<host_IP>:30258` (host_IP is the node IP where CLAMP is running)
-
-3. Before designing the policy we need to undeploy the default tca policy.
-To undeploy default policy execute the below commands on control node
-
-.. code-block::
-
- > kubectl get deployments -n onap | grep "dep-dcae-tca-analytics\|dcaegen2-analytics-tca" | awk '{print $1}' |
- xargs kubectl delete deployments -n onap
- > kubectl get svc -n onap | grep "dcae-tca-analytics\|dcaegen2-analytics-tca" | awk '{print $1}' |
- xargs kubectl delete svc -n onap
- To Verify there are no dcae-analytics POD, run the below command
- > kubectl get pods -n onap | grep 'analytics'
-
-4. If the service has been distributed correctly, following is how the service design templates
-listed in the Loop Templates as below
-
-|image7|
-
-Available Policy Models
-
-|image10|
-
-5. Create the loop from the templates distributed by SDC
-
-|image4|
-
-|image20|
-
-6. Add the Operational Policy
-Click on Loop Instance drop down and select Modify then click, select the policy model type then click Add
-
-|image9|
-
-|image3|
-
-7. Click on the MS application box and configure
-Fill the details in the pop up window and click on the save changes button.
-
- A. Click on app and Edit the Policy details, fill the below details
-
- * eventName: vFirewallBroadcastPackets
- * policyScope: DCAE
- * policyVersion: v0.0.1
- * Select controlLoopSchemaType as VM
- * policyName: DCAE.Config_tca-hi-lo
- * Select Pdp Group Info from the drop down as defaultGroup & xacm
-
- |image17|
-
- B. Click on the Add monitoring threshold1 button and fill the below details
-
- * version : 1.0.2
- * closedLoopControlName : name of the CL (ex: LOOP_TEMPLATE_mytest_srv_v1_0_vsp_pg0_k8s-tca)
- * select the direction from dropdown (ex: LESS)
-
- |image11|
-
- C. Click on the Add monitoring threshold2 button and fill the details same as above then click on Save Changes button
-
- |image24|
-
-8. Click on the Operational policy box and configure
-Fill the details in the pop window then click on save changes
-
-|image22|
-
-|image18|
-
-9. Submit the control loop to the policy
-From Loop Operations drop down select SUBMIT and click
-
-|image23|
-
-10. Deploy the control loop to DCAE
-From Loop Operations drop down select DEPLOY and click, verify the details and click Deploy
-
-|image2|
-
-|image8|
-
-Status Logs
-
-|image21|
-
-A successful deployment will make the service as DEPLOYED
-
-11. You can login into the control node and verify whether your new analytics application got deployed using below command
-
-.. code-block::
-
- > kubectl get pods -n onap | grep analytics
- Sample output
- dep-dcae-tca-analytics-7fccbf459-xkxlq 2/2 Running 0 6m15s
-
- > cfy deployment list | grep CLAMP
- Sample output
- | CLAMP_615bb47a-ea3e-4a02-8928-0564df900826 | CLAMP_615bb47a-ea3e-4a02-8928-0564df900826 | 2020-11-10 19:23:22.286 |
- 2020-11-10 19:23:22.286 | tenant | default_tenant | admin |
-
-Robot heatbridge
-================
-
-Run the Robot heatbridge script to populate the vserver (OAM IP, VM flavor name, ID etc.) related information in AAI.
-This is required by APPC/SDNC for performing LCM operations.
-
-Following is the command usage along with the example
-
-./demo-k8s.sh <namespace> heatbridge <stack_name> <service_instance_id> <service> <oam-ip-address>
-
-.. note::
- The stack_name & oam-ip-address of the VNF VM can be obtained from OpenStack Horizon and service_instance_id from the VID screen
-
-.. code-block::
-
- ./demo-k8s.sh onap heatbridge vfw_sinc_vf e039b3d4-7ee5-4ad2-8108-ae31086ac7c0 vFW 172.29.249.157
- Number of parameters:
- 6
- KEY:
- heatbridge
- ++ kubectl --namespace onap get pods
- ++ sed 's/ .*//'
- ++ grep robot
- + POD=dev-robot-58f85bb64d-zz5bh
- ++ dirname ./demo-k8s.sh
- + DIR=.
- + SCRIPTDIR=scripts/demoscript
- + ETEHOME=/var/opt/ONAP
- + '[' ']'
- ++ kubectl --namespace onap exec dev-robot-58f85bb64d-zz5bh -- bash -c 'ls -1q /share/logs/ | wc -l'
- + export GLOBAL_BUILD_NUMBER=13
- + GLOBAL_BUILD_NUMBER=13
- ++ printf %04d 13
- + OUTPUT_FOLDER=0013_demo_heatbridge
- + DISPLAY_NUM=103
- + VARIABLEFILES='-V /share/config/robot_properties.py'
- + kubectl --namespace onap exec dev-robot-58f85bb64d-zz5bh -- /var/opt/ONAP/runTags.sh -V /share/config/robot_properties.py -v HB_STACK:vfw_sinc_vf
- -v HB_VNF:e039b3d4-7ee5-4ad2-8108-ae31086ac7c0 -v HB_VNF:vFW -v HB_SERVICE:vFW -v HB_IPV4_OAM_ADDRESS:172.29.249.157 -d /share/logs/0013_demo_heatbridge
- -i heatbridge --display 103
- Starting Xvfb on display :103 with res 1280x1024x24
- Executing robot tests at log level TRACE
- ==============================================================================
- Testsuites
- ==============================================================================
- Testsuites.Demo :: Executes the VNF Orchestration Test cases including setu...
- ==============================================================================
- Run Heatbridge :: Try to run heatbridge | PASS |
- ------------------------------------------------------------------------------
- Testsuites.Demo :: Executes the VNF Orchestration Test cases inclu... | PASS |
- 1 critical test, 1 passed, 0 failed
- 1 test total, 1 passed, 0 failed
- ==============================================================================
- Testsuites | PASS |
- 1 critical test, 1 passed, 0 failed
- 1 test total, 1 passed, 0 failed
- ==============================================================================
- Output: /share/logs/0013_demo_heatbridge/output.xml
- Log: /share/logs/0013_demo_heatbridge/log.html
- Report: /share/logs/0013_demo_heatbridge/report.html
-
-Update the operational policy
-=============================
-
-1. GET the modelInvariantID of vPG
-
-Following is the command usage along with the sample output
-
-.. code-block::
-
- curl -k -X GET https://<kubernetes-host>:30233/aai/v11/network/generic-vnfs/ -H 'Accept: application/json' -H 'Authorization: Basic QUFJOkFBSQ==' -H ' Content-Type: application/json' -H 'X-FromAppId: Postman' -H 'X-TransactionId: get_generic_vnf' | jq
-
- {
- "generic-vnf": [
- {
- "vnf-id": "edc085e8-5088-4b73-bcdc-b8b0bf5e528b",
- "vnf-name": "vfw_vpg_vnf",
- "vnf-type": "vFWCL_service/vsp_vpg 0",
- "service-id": "929190d1-fed1-4dff-883f-f0ede779065e",
- "prov-status": "PREPROV",
- "orchestration-status": "Created",
- "in-maint": false,
- "is-closed-loop-disabled": false,
- "resource-version": "1609783281808",
- "model-invariant-id": "7d4fef5e-f9b0-4e03-a653-712d6630f389",
- "model-version-id": "a248f68e-c1f2-4b25-8120-c4f7310b0d1e",
- "model-customization-id": "cf0019db-f51f-472a-996d-9da19d41f7b4",
- "relationship-list": {
- "relationship": [
- {
- "related-to": "service-instance",
- "related-link": "/aai/v11/business/customers/customer/Demonstration/service-subscriptions/service-subscription/vFWCL/service-instances/service- instance/e039b3d4-7ee5-4ad2-8108-ae31086ac7c0",
- "relationship-data": [
- {
- "relationship-key": "customer.global-customer-id",
- "relationship-value": "Demonstration"
- },
- {
- "relationship-key": "service-subscription.service-type",
- "relationship-value": "vFWCL"
- },
- {
- "relationship-key": "service-instance.service-instance-id",
- "relationship-value": "e039b3d4-7ee5-4ad2-8108-ae31086ac7c0"
- }
- ],
- "related-to-property": [
- {
- "property-key": "service-instance.service-instance-name",
- "property-value": "vFWCL_srv_00"
- }
- ]
- },
- {
- "related-to": "platform",
- "related-link": "/aai/v11/business/platforms/platform/Platform-Demonstration",
- "relationship-data": [
- {
- "relationship-key": "platform.platform-name",
- "relationship-value": "Platform-Demonstration"
- }
- ]
- },
- {
- "related-to": "line-of-business",
- "related-link": "/aai/v11/business/lines-of-business/line-of-business/LOB-Demonstration",
- "relationship-data": [
- {
- "relationship-key": "line-of-business.line-of-business-name",
- "relationship-value": "LOB-Demonstration"
- }
- ]
- }
- ]
- }
- },
- {
- "vnf-id": "816040b6-d9bf-43ba-b852-e31e21a0a5f4",
- "vnf-name": "vfw_sinc_vnf",
- "vnf-type": "vFWCL_service/vsp_sinc 0",
- "service-id": "929190d1-fed1-4dff-883f-f0ede779065e",
- "prov-status": "ACTIVE",
- "orchestration-status": "Active",
- "in-maint": false,
- "is-closed-loop-disabled": false,
- "resource-version": "1609788164862",
- "model-invariant-id": "4d432903-4338-48ae-a105-47c0c8d19193",
- "model-version-id": "86b98636-150b-4f1c-a768-61e6c43a3199",
- "model-customization-id": "d3671119-5b65-40ed-abea-d1fe0d09c3ba",
- "relationship-list": {
- "relationship": [
- {
- "related-to": "vserver",
- "related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud- region/CloudOwner/RegionOne/tenants/tenant/747a01548b494670892413c496c1c250/vservers/vserver/3353a853-87cc-47cc-9e6a-4f45b6dc580f",
- "relationship-data": [
- {
- "relationship-key": "cloud-region.cloud-owner",
- "relationship-value": "CloudOwner"
- },
- {
- "relationship-key": "cloud-region.cloud-region-id",
- "relationship-value": "RegionOne"
- },
- {
- "relationship-key": "tenant.tenant-id",
- "relationship-value": "747a01548b494670892413c496c1c250"
- },
- {
- "relationship-key": "vserver.vserver-id",
- "relationship-value": "3353a853-87cc-47cc-9e6a-4f45b6dc580f"
- }
- ],
- "related-to-property": [
- {
- "property-key": "vserver.vserver-name",
- "property-value": "zdfw1fwl01snk01"
- }
- ]
- },
- {
- "related-to": "vserver",
- "related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud- region/CloudOwner/RegionOne/tenants/tenant/747a01548b494670892413c496c1c250/vservers/vserver/642b5709-4f3d-405b-bcb2-dc82884cb8de",
- "relationship-data": [
- {
- "relationship-key": "cloud-region.cloud-owner",
- "relationship-value": "CloudOwner"
- },
- {
- "relationship-key": "cloud-region.cloud-region-id",
- "relationship-value": "RegionOne"
- },
- {
- "relationship-key": "tenant.tenant-id",
- "relationship-value": "747a01548b494670892413c496c1c250"
- },
- {
- "relationship-key": "vserver.vserver-id",
- "relationship-value": "642b5709-4f3d-405b-bcb2-dc82884cb8de"
- }
- ],
- "related-to-property": [
- {
- "property-key": "vserver.vserver-name",
- "property-value": "zdfw1fwl01fwl01"
- }
- ]
- },
- {
- "related-to": "service-instance",
- "related-link": "/aai/v11/business/customers/customer/Demonstration/service-subscriptions/service-subscription/vFWCL/service-instances/service- instance/e039b3d4-7ee5-4ad2-8108-ae31086ac7c0",
- "relationship-data": [
- {
- "relationship-key": "customer.global-customer-id",
- "relationship-value": "Demonstration"
- },
- {
- "relationship-key": "service-subscription.service-type",
- "relationship-value": "vFWCL"
- },
- {
- "relationship-key": "service-instance.service-instance-id",
- "relationship-value": "e039b3d4-7ee5-4ad2-8108-ae31086ac7c0"
- }
- ],
- "related-to-property": [
- {
- "property-key": "service-instance.service-instance-name",
- "property-value": "vFWCL_srv_00"
- }
- ]
- },
- {
- "related-to": "platform",
- "related-link": "/aai/v11/business/platforms/platform/Platform-Demonstration",
- "relationship-data": [
- {
- "relationship-key": "platform.platform-name",
- "relationship-value": "Platform-Demonstration"
- }
- ]
- },
- {
- "related-to": "line-of-business",
- "related-link": "/aai/v11/business/lines-of-business/line-of-business/LOB-Demonstration",
- "relationship-data": [
- {
- "relationship-key": "line-of-business.line-of-business-name",
- "relationship-value": "LOB-Demonstration"
- }
- ]
- }
- ]
- }
- }
- ]
- }
-
-2. Get the Operational policy name and version
-
-Following is the command usage and the sample output
-
-.. code-block::
-
- curl -k -u 'healthcheck:zb!XztG34' -X GET -H 'Accept:application/json' https://<kubernetes-host>:6969/policy/pap/v1/pdps
-
- #sample command and output
- curl -k -u 'healthcheck:zb!XztG34' -X GET -H 'Accept:application/json' https://10.43.244.213:6969/policy/pap/v1/pdps | jq
- % Total % Received % Xferd Average Speed Time Time Time Current
- Dload Upload Total Spent Left Speed
- 100 2678 100 2678 0 0 7695 0 --:--:-- --:--:-- --:--:-- 7695
- {
- "groups": [
- {
- "name": "defaultGroup",
- "description": "The default group that registers all supported policy types and pdps.",
- "pdpGroupState": "ACTIVE",
- "properties": {},
- "pdpSubgroups": [
- {
- "pdpType": "apex",
- "supportedPolicyTypes": [
- {
- "name": "onap.policies.controlloop.operational.Apex",
- "version": "1.0.0"
- },
- {
- "name": "onap.policies.controlloop.operational.common.Apex",
- "version": "1.0.0"
- },
- {
- "name": "onap.policies.native.Apex",
- "version": "1.0.0"
- }
- ],
- "policies": [],
- "currentInstanceCount": 1,
- "desiredInstanceCount": 1,
- "properties": {},
- "pdpInstances": [
- {
- "instanceId": "dev-policy-apex-pdp-0",
- "pdpState": "ACTIVE",
- "healthy": "HEALTHY",
- "message": "Pdp Heartbeat"
- }
- ]
- },
- {
- "pdpType": "drools",
- "supportedPolicyTypes": [
- {
- "name": "onap.policies.controlloop.Operational",
- "version": "1.0.0"
- },
- {
- "name": "onap.policies.controlloop.operational.common.Drools",
- "version": "1.0.0"
- },
- {
- "name": "onap.policies.native.drools.Controller",
- "version": "1.0.0"
- },
- {
- "name": "onap.policies.native.drools.Artifact",
- "version": "1.0.0"
- }
- ],
- "policies": [],
- "currentInstanceCount": 1,
- "desiredInstanceCount": 1,
- "properties": {},
- "pdpInstances": [
- {
- "instanceId": "dev-drools-0",
- "pdpState": "ACTIVE",
- "healthy": "HEALTHY"
- }
- ]
- },
- {
- "pdpType": "xacml",
- "supportedPolicyTypes": [
- {
- "name": "onap.policies.controlloop.guard.common.FrequencyLimiter",
- "version": "1.0.0"
- },
- {
- "name": "onap.policies.controlloop.guard.common.MinMax",
- "version": "1.0.0"
- },
- {
- "name": "onap.policies.controlloop.guard.common.Blacklist",
- "version": "1.0.0"
- },
- {
- "name": "onap.policies.controlloop.guard.coordination.FirstBlocksSecond",
- "version": "1.0.0"
- },
- {
- "name": "onap.policies.monitoring.*",
- "version": "1.0.0"
- },
- {
- "name": "onap.policies.optimization.*",
- "version": "1.0.0"
- },
- {
- "name": "onap.policies.optimization.resource.AffinityPolicy",
- "version": "1.0.0"
- },
- {
- "name": "onap.policies.optimization.resource.DistancePolicy",
- "version": "1.0.0"
- },
- {
- "name": "onap.policies.optimization.resource.HpaPolicy",
- "version": "1.0.0"
- },
- {
- "name": "onap.policies.optimization.resource.OptimizationPolicy",
- "version": "1.0.0"
- },
- {
- "name": "onap.policies.optimization.resource.PciPolicy",
- "version": "1.0.0"
- },
- {
- "name": "onap.policies.optimization.service.QueryPolicy",
- "version": "1.0.0"
- },
- {
- "name": "onap.policies.optimization.service.SubscriberPolicy",
- "version": "1.0.0"
- },
- {
- "name": "onap.policies.optimization.resource.Vim_fit",
- "version": "1.0.0"
- },
- {
- "name": "onap.policies.optimization.resource.VnfPolicy",
- "version": "1.0.0"
- },
- {
- "name": "onap.policies.native.Xacml",
- "version": "1.0.0"
- },
- {
- "name": "onap.policies.Naming",
- "version": "1.0.0"
- }
- ],
- "policies": [
- {
- "name": "SDNC_Policy.ONAP_NF_NAMING_TIMESTAMP",
- "version": "1.0.0"
- }
- ],
- "currentInstanceCount": 1,
- "desiredInstanceCount": 1,
- "properties": {},
- "pdpInstances": [
- {
- "instanceId": "dev-policy-xacml-pdp-6c5f6db887-zkh6h",
- "pdpState": "ACTIVE",
- "healthy": "HEALTHY"
- }
- ]
- }
- ]
- }
- ]
- }
-
-3. Remove the vFW Policy from PDP
-
-Following is the command usage
-
-.. code-block::
-
- POLICY_ID = "OPERATIONAL_dcae_service_v1_0_Drools_1_0_0_of6"
- POLICY_VERSION = "1.0.0"
-
- curl -k -u 'healthcheck:zb!XztG34' -X DELETE -H 'Content-Type:application/json' https://<kubernetes-host>:6969/policy/pap/v1/pdps/policies/$POLICY_ID/versions/$POLICY_VERSION
-
-4. Get latest policy
-
-Following is the command usage and sample output
-
-.. code-block::
-
- POLICY_TYPEID="onap.policies.controlloop.operational.common.Drools"
- VERSIONID='1.0.0'
- POLICY_ID="OPERATIONAL_dcae_service_v1_0_Drools_1_0_0_of6"
-
- curl -k -u 'healthcheck:zb!XztG34' -X GET -H 'Accept:application/json' https://<kubernetes-host>:6969/policy/api/v1/policytypes/$POLICY_TYPEID/versions/$VERSIONID/policies/$POLICY_ID/versions/latest > operational_policy_template.json
-
-5. Update this policy in the policy DB
-
-Following is the command usage and sample output
-
-.. code-block::
-
- POLICY_TYPEID="onap.policies.controlloop.operational.common.Drools"
- VERSIONID='1.0.0'
-
- curl -k -u 'healthcheck:zb!XztG34' -X POST -H 'Content-Type:application/json' --data @./operational_policy_template.json https://<kubernetes-host>:6969/policy/api/v1/policytypes/$POLICY_TYPEID/versions/$VERSIONID/policies
-
- {
- "tosca_definitions_version": "tosca_simple_yaml_1_1_0",
- "topology_template": {
- "policies": [{
- "OPERATIONAL_dcae_service_v1_0_Drools_1_0_0_of6": {
- "type": "onap.policies.controlloop.operational.common.Drools",
- "type_version": "1.0.0",
- "properties": {
- "abatement": true,
- "operations": [{
- "failure_retries": "final_failure_retries",
- "id": "ModifyConfig",
- "failure_timeout": "final_failure_timeout",
- "failure": "final_failure",
- "operation": {
- "payload": {
- "active-streams": 5
- },
- "target": {
- "entityIds": {
- "resourceID": "7d4fef5e-f9b0-4e03-a653-712d6630f389"
- },
- "targetType": "VNF"
- },
- "actor": "APPC",
- "operation": "ModifyConfig"
- },
- "failure_guard": "final_failure_guard",
- "retries": 3,
- "timeout": 3600,
- "failure_exception": "final_failure_exception",
- "description": "ModifyConfig",
- "success": "final_success"
- }],
- "trigger": "ModifyConfig",
- "timeout": 3600,
- "id": "LOOP_tca"
- },
- "name": "OPERATIONAL_dcae_service_v1_0_Drools_1_0_0_of6",
- "version": "1.0.0",
- "metadata": {
- "policy-id": "OPERATIONAL_dcae_service_v1_0_Drools_1_0_0_of6",
- "policy-version": "1.0.0"
- }
- }
- }]
- },
- "name": "ToscaServiceTemplateSimple",
- "version": "1.0.0",
- "metadata": {}
- }
-
-6. Deploy this version of the policy using PAP API
-
-Prepare the payload for the deployment API by naming the file as pap_template.json. The contents are policy name, version and command usage as below
-
-.. code-block::
-
- cat pap_template.json
- {
- "policies" : [
- {
- "policy-id": "OPERATIONAL_dcae_service_v1_0_Drools_1_0_0_of6",
- "policy-version": "3"
- }
- ]
- }
-
- curl -k -u 'healthcheck:zb!XztG34' -X POST --data @./pap_template.json -H 'Content-Type:application/json' https://<kubernetes-host>:6969/policy/pap/v1/pdps/policies
-
-Set network topology for vPG in APPC
-====================================
-
-1. Enable direct access to vFW PG VNF instance from control node
-
-.. note::
- These steps are applicable only when your openstack instance is running on the GCP
-
- You can refer to `Google Cloud Docs <https://cloud.google.com/vpc/docs/configure-alias-ip-ranges>`_ to find
- more details about how to add IP alias to a running GCP instance
-
-Execute the below commands from your laptop using gcloud CLI
-
-a. Find the Default interface name and primary internal IP for the GCP instance
-
-.. code-block::
-
- gcloud compute instances describe openstack-01 | grep 'nic\|networkIP'
-
- #sample command output
- name: nic0
- networkIP: 10.128.0.43
-
-b. For the Default interface nic0 add an IP alias from the default subnet
-
-.. code-block::
-
- gcloud compute instances network-interfaces update openstack-01 \
- --zone us-central1-f \
- --network-interface nic0 \
- --aliases "/30"
-
- # sample output
- Updating network interface [nic0] of instance [openstack-01]...done
-
-c. Verify if the instance has got a new IP alias
-
-.. code-block::
-
- gcloud compute instances describe openstack-01 | grep 'nic\|networkIP\|aliasIpRanges\|ipCidrRange'
-
- # from the output note down the IP alias ipCidrRange attribute that you will need it inplace
- aliasIpRanges:
- ipCidrRange: 10.128.0.124/30
- name: nic0
- networkIP: 10.128.0.22
-
-2. Map openstack-01 GCP IP alias to vFW PG VNF openstack instance public IP
-
-a. SSH into GCP openstack-01 VM instance and verify if you can see the new IP alias in the routing table
-
-.. code-block::
-
- ip route show table local | grep '/30'
-
- # sample output
- local 10.128.0.112/30 dev eth0 proto 66 scope host
-
-b. Find the vFW packet generator public / external network IP address
-
-Run the below command on the openstack instance
-
-.. code-block::
-
- openstack server list
- # sample output
- | ID | Name | Status | Networks | Image | Flavor |
- | 1faa6593-7e9e-452d-a5dc-1536e18e4b94 | zdfw1fwl01pgn01 | ACTIVE | OAM_NETWORK=10.10.10.12; public=172.29.249.200;
- zdfw1fwl01_unprotected=192.168.10.200| trusty | m1.medium |
-
-c. Now update openstack-01 GCP instance iptables to forward the traffic to vFW PG VNF VM
-
-Below are the commands to forward all traffic reaching to IP alias (ex: 10.128.0.112/30)
-to vFW PG VNF VM (ex:zdfw1fwl01pgn01) instance public IP (ex:172.29.249.200)
-
-.. code-block::
-
- # DNAT rule update
- sudo iptables -t nat -I PREROUTING -d 10.128.0.112 -j DNAT --to-destination 172.29.249.200
- sudo iptables -t nat -I POSTROUTING -s 172.29.249.200 -j MASQUERADE
-
- # Update INPUT, FORWARD AND OUTPUT chain to allow traffic for all ports
- sudo iptables -I INPUT 1 -p udp -j ACCEPT
- sudo iptables -I FORWARD 1 -p tcp -j ACCEPT
- sudo iptables -I OUTPUT 1 -p tcp -j ACCEPT
- sudo iptables -I OUTPUT 1 -p udp -j ACCEPT
-
-d. Verify if you can access vFW PG instance from the control node
-
-SSH into vFW PG VNF instance using the openstack-01 GCP IP alias, it should connect to the vFW PG VNF instance
-
-3. Mount APPC
-
-a. Get the VNF instance ID, either through VID or through AAI. Below the AAI request
-
-Search for the vnf-name as vfw_pg_vsp_002-1 from the output of the below command and find the corresponding vnf-id,
-the value is: a1ca05b4-3231-4e4a-a09c-74f2292fe577
-
-.. code-block::
-
- curl -X GET https://<kubernetes-host>:30233/aai/v8/network/generic-vnfs/ -H 'Accept: application/json' -H 'Authorization: Basic QUFJOkFBSQ==' -H 'Content-Type:application/json' -H 'X-FromAppId: Postman' -H 'X-TransactionId: get_generic_vnf' -k
-
- {
- "generic-vnf": [{
- "vnf-id": "a1ca05b4-3231-4e4a-a09c-74f2292fe577",
- "vnf-name": "vfw_pg_vsp_002-1",
- "vnf-type": "vfw-service-002/vfw_pg_vsp_002 0",
- "service-id": "f18af052-6dfb-40e8-ad25-f060eb898f53",
- "prov-status": "ACTIVE",
- "orchestration-status": "Active",
- "in-maint": false,
- "is-closed-loop-disabled": false,
- "resource-version": "1617776160138",
- "model-invariant-id": "7a347a5a-8f3f-416c-81f3-13b30631c1e6",
- "model-version-id": "f988048a-b4f4-4f5e-aa7c-fdaa0d7ea017",
- "model-customization-id": "601d5d68-fbbe-4c1f-a624-08a3445ae8fe",
- "relationship-list": {
- "relationship": [{
- "related-to": "service-instance",
- "relationship-label": "org.onap.relationships.inventory.ComposedOf",
- "related-link": "/aai/v16/business/customers/customer/Demonstration/service-subscriptions/service-subscription/vFW/service-instances/service-instance/6f294c8f-ac67-4b33-9e56-014fb63791a5",
- "relationship-data": [{
- "relationship-key": "customer.global-customer-id",
- "relationship-value": "Demonstration"
- }, {
- "relationship-key": "service-subscription.service-type",
- "relationship-value": "vFW"
- }, {
- "relationship-key": "service-instance.service-instance-id",
- "relationship-value": "6f294c8f-ac67-4b33-9e56-014fb63791a5"
- }],
- "related-to-property": [{
- "property-key": "service-instance.service-instance-name",
- "property-value": "vfw-service-002-1"
- }]
- }, {
- "related-to": "platform",
- "relationship-label": "org.onap.relationships.inventory.Uses",
- "related-link": "/aai/v16/business/platforms/platform/Platform-Demonstration",
- "relationship-data": [{
- "relationship-key": "platform.platform-name",
- "relationship-value": "Platform-Demonstration"
- }]
- }, {
- "related-to": "line-of-business",
- "relationship-label": "org.onap.relationships.inventory.Uses",
- "related-link": "/aai/v16/business/lines-of-business/line-of-business/LOB-Demonstration",
- "relationship-data": [{
- "relationship-key": "line-of-business.line-of-business-name",
- "relationship-value": "LOB-Demonstration"
- }]
- }, {
- "related-to": "vserver",
- "relationship-label": "tosca.relationships.HostedOn",
- "related-link": "/aai/v16/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/759425709b7a4b3ca257d3f93ef4e91e/vservers/vserver/856aed6e-cc25-4819-a03d-5549f5fe8662",
- "relationship-data": [{
- "relationship-key": "cloud-region.cloud-owner",
- "relationship-value": "CloudOwner"
- }, {
- "relationship-key": "cloud-region.cloud-region-id",
- "relationship-value": "RegionOne"
- }, {
- "relationship-key": "tenant.tenant-id",
- "relationship-value": "759425709b7a4b3ca257d3f93ef4e91e"
- }, {
- "relationship-key": "vserver.vserver-id",
- "relationship-value": "856aed6e-cc25-4819-a03d-5549f5fe8662"
- }],
- "related-to-property": [{
- "property-key": "vserver.vserver-name",
- "property-value": "zdfw1fwl01pgn01"
- }]
- }]
- }
- }, {
- "vnf-id": "be9e190e-a20c-4900-8074-cffec77131f1",
- "vnf-name": "vfw_sinc_vsp_002-1",
- "vnf-type": "vfw-service-002/vfw_sinc_vsp_002 0",
- "service-id": "f18af052-6dfb-40e8-ad25-f060eb898f53",
- "prov-status": "ACTIVE",
- "orchestration-status": "Active",
- "in-maint": false,
- "is-closed-loop-disabled": false,
- "resource-version": "1617776104234",
- "model-invariant-id": "9b25321d-9260-4739-97f8-7c85fba4e755",
- "model-version-id": "c785c203-9c39-4b6a-9c2e-f24bb8d4d92d",
- "model-customization-id": "a1e0ddf7-5d50-43a4-a6f1-0bfde3c1de78",
- "relationship-list": {
- "relationship": [{
- "related-to": "service-instance",
- "relationship-label": "org.onap.relationships.inventory.ComposedOf",
- "related-link": "/aai/v16/business/customers/customer/Demonstration/service-subscriptions/service-subscription/vFW/service-instances/service-instance/6f294c8f-ac67-4b33-9e56-014fb63791a5",
- "relationship-data": [{
- "relationship-key": "customer.global-customer-id",
- "relationship-value": "Demonstration"
- }, {
- "relationship-key": "service-subscription.service-type",
- "relationship-value": "vFW"
- }, {
- "relationship-key": "service-instance.service-instance-id",
- "relationship-value": "6f294c8f-ac67-4b33-9e56-014fb63791a5"
- }],
- "related-to-property": [{
- "property-key": "service-instance.service-instance-name",
- "property-value": "vfw-service-002-1"
- }]
- }, {
- "related-to": "platform",
- "relationship-label": "org.onap.relationships.inventory.Uses",
- "related-link": "/aai/v16/business/platforms/platform/Platform-Demonstration",
- "relationship-data": [{
- "relationship-key": "platform.platform-name",
- "relationship-value": "Platform-Demonstration"
- }]
- }, {
- "related-to": "line-of-business",
- "relationship-label": "org.onap.relationships.inventory.Uses",
- "related-link": "/aai/v16/business/lines-of-business/line-of-business/LOB-Demonstration",
- "relationship-data": [{
- "relationship-key": "line-of-business.line-of-business-name",
- "relationship-value": "LOB-Demonstration"
- }]
- }, {
- "related-to": "vserver",
- "relationship-label": "tosca.relationships.HostedOn",
- "related-link": "/aai/v16/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/759425709b7a4b3ca257d3f93ef4e91e/vservers/vserver/30dd6250-8a74-4ed7-9729-6ce7190c6661",
- "relationship-data": [{
- "relationship-key": "cloud-region.cloud-owner",
- "relationship-value": "CloudOwner"
- }, {
- "relationship-key": "cloud-region.cloud-region-id",
- "relationship-value": "RegionOne"
- }, {
- "relationship-key": "tenant.tenant-id",
- "relationship-value": "759425709b7a4b3ca257d3f93ef4e91e"
- }, {
- "relationship-key": "vserver.vserver-id",
- "relationship-value": "30dd6250-8a74-4ed7-9729-6ce7190c6661"
- }],
- "related-to-property": [{
- "property-key": "vserver.vserver-name",
- "property-value": "vfw_sinc_vsp_002-1"
- }]
- }, {
- "related-to": "vserver",
- "relationship-label": "tosca.relationships.HostedOn",
- "related-link": "/aai/v16/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/759425709b7a4b3ca257d3f93ef4e91e/vservers/vserver/9ab8d517-2b1c-4d31-a04c-0fe2f8396815",
- "relationship-data": [{
- "relationship-key": "cloud-region.cloud-owner",
- "relationship-value": "CloudOwner"
- }, {
- "relationship-key": "cloud-region.cloud-region-id",
- "relationship-value": "RegionOne"
- }, {
- "relationship-key": "tenant.tenant-id",
- "relationship-value": "759425709b7a4b3ca257d3f93ef4e91e"
- }, {
- "relationship-key": "vserver.vserver-id",
- "relationship-value": "9ab8d517-2b1c-4d31-a04c-0fe2f8396815"
- }],
- "related-to-property": [{
- "property-key": "vserver.vserver-name",
- "property-value": "zdfw1fwl01snk01"
- }]
- }]
- }
- }]
- }
-
-b. Get the public IP address of the Packet Generator VM from your deployment
-
-c. To mount APPC, run the below command by replacing <vnf-id> and <vnf-ip> with the values obtained from the above steps (a) & (b) respectively
-
-.. code-block::
-
- curl -X PUT \
- http://<kubernetes-host>:30230/restconf/config/network-topology:network-topology/topology/topology-netconf/node/<vnf-id> \
- -H 'Accept: application/xml' \
- -H 'Authorization: Basic YWRtaW46S3A4Yko0U1hzek0wV1hsaGFrM2VIbGNzZTJnQXc4NHZhb0dHbUp2VXkyVQ==' \
- -H 'Content-Type: text/xml' \
- -d '<node xmlns="urn:TBD:params:xml:ns:yang:network-topology">
- <node-id><vnf-id></node-id>
- <host xmlns="urn:opendaylight:netconf-node-topology"><vnf-ip></host>
- <port xmlns="urn:opendaylight:netconf-node-topology">830</port>
- <username xmlns="urn:opendaylight:netconf-node-topology">netconf</username>
- <password xmlns="urn:opendaylight:netconf-node-topology">netconf</password>
- <tcp-only xmlns="urn:opendaylight:netconf-node-topology">false</tcp-only>
- </node>'
-
- #smaple command and output:
- curl -vvv -X PUT http://192.168.122.99:30230/restconf/config/network-topology:network-topology/topology/topology-netconf/node/a1ca05b4-3231-4e4a-a09c-74f2292fe577 -H 'Accept: application/xml' -H 'Authorization: Basic YWRtaW46S3A4Yko0U1hzek0wV1hsaGFrM2VIbGNzZTJnQXc4NHZhb0dHbUp2VXkyVQ==' -H 'Content-Type: text/xml' -d '<node xmlns="urn:TBD:params:xml:ns:yang:network-topology"> <node-id>a1ca05b4-3231-4e4a-a09c-74f2292fe577</node-id> <host xmlns="urn:opendaylight:netconf-node-topology">192.168.122.238</host> <port xmlns="urn:opendaylight:netconf-node-topology">830</port> <username xmlns="urn:opendaylight:netconf-node-topology">netconf</username> <password xmlns="urn:opendaylight:netconf-node-topology">netconf</password> <tcp-only xmlns="urn:opendaylight:netconf-node-topology">false</tcp-only> </node>'
- * Trying 192.168.122.99...
- * TCP_NODELAY set
- * Connected to 192.168.122.99 (192.168.122.99) port 30230 (#0)
- > PUT /restconf/config/network-topology:network-topology/topology/topology-netconf/node/a1ca05b4-3231-4e4a-a09c-74f2292fe577 HTTP/1.1
- > Host: 192.168.122.99:30230
- > User-Agent: curl/7.58.0
- > Accept: application/xml
- > Authorization: Basic YWRtaW46S3A4Yko0U1hzek0wV1hsaGFrM2VIbGNzZTJnQXc4NHZhb0dHbUp2VXkyVQ==
- > Content-Type: text/xml
- > Content-Length: 488
- >
- * upload completely sent off: 488 out of 488 bytes
- < HTTP/1.1 200 OK
- < Content-Length: 0
- <
- * Connection #0 to host 192.168.122.99 left intact
-
-d. To verify the NETCONF connection has successfully being established, run the following request (replace <vnd-id> with yours)
-
-.. code-block::
-
- curl -X GET \
- http://<kubernetes-host>:30230/restconf/operational/network-topology:network-topology/topology/topology-netconf/node/<vnf-id> \
- -H 'Accept: application/json' \
- -H 'Authorization: Basic YWRtaW46S3A4Yko0U1hzek0wV1hsaGFrM2VIbGNzZTJnQXc4NHZhb0dHbUp2VXkyVQ=='
-
- #smaple command and output:
- curl -X GET http://192.168.122.99:30230/restconf/operational/network-topology:network-topology/topology/topology-netconf/node/a1ca05b4-3231-4e4a-a09c-74f2292fe577 -H 'Accept: application/json' -H 'Authorization: Basic YWRtaW46S3A4Yko0U1hzek0wV1hsaGFrM2VIbGNzZTJnQXc4NHZhb0dHbUp2VXkyVQ==' | jq
- % Total % Received % Xferd Average Speed Time Time Time Current
- Dload Upload Total Spent Left Speed
- 100 5368 100 5368 0 0 374k 0 --:--:-- --:--:-- --:--:-- 374k
- {
- "node": [
- {
- "node-id": "a1ca05b4-3231-4e4a-a09c-74f2292fe577",
- "netconf-node-topology:unavailable-capabilities": {},
- "netconf-node-topology:available-capabilities": {
- "available-capability": [
- {
- "capability-origin": "device-advertised",
- "capability": "urn:ietf:params:netconf:capability:yang-library:1.0?revision=2018-01-17&module-set-id=29"
- },
- {
- "capability-origin": "device-advertised",
- "capability": "urn:ietf:params:netconf:base:1.1"
- },
- {
- "capability-origin": "device-advertised",
- "capability": "urn:ietf:params:netconf:base:1.0"
- },
- {
- "capability-origin": "device-advertised",
- "capability": "urn:ietf:params:netconf:capability:writable-running:1.0"
- },
- {
- "capability-origin": "device-advertised",
- "capability": "urn:ietf:params:netconf:capability:validate:1.1"
- },
- {
- "capability-origin": "device-advertised",
- "capability": "urn:ietf:params:netconf:capability:with-defaults:1.0?basic-mode=explicit&also-supported=report-all,report-all-tagged,trim,explicit"
- },
- {
- "capability-origin": "device-advertised",
- "capability": "urn:ietf:params:netconf:capability:interleave:1.0"
- },
- {
- "capability-origin": "device-advertised",
- "capability": "urn:ietf:params:netconf:capability:rollback-on-error:1.0"
- },
- {
- "capability-origin": "device-advertised",
- "capability": "urn:ietf:params:netconf:capability:xpath:1.0"
- },
- {
- "capability-origin": "device-advertised",
- "capability": "urn:ietf:params:netconf:capability:startup:1.0"
- },
- {
- "capability-origin": "device-advertised",
- "capability": "urn:ietf:params:netconf:capability:candidate:1.0"
- },
- {
- "capability-origin": "device-advertised",
- "capability": "urn:ietf:params:netconf:capability:notification:1.0"
- },
- {
- "capability-origin": "device-advertised",
- "capability": "(urn:ietf:params:xml:ns:netconf:notification:1.0?revision=2008-07-14)notifications"
- },
- {
- "capability-origin": "device-advertised",
- "capability": "(urn:ietf:params:xml:ns:yang:iana-crypt-hash?revision=2014-08-06)iana-crypt-hash"
- },
- {
- "capability-origin": "device-advertised",
- "capability": "(urn:ietf:params:xml:ns:yang:ietf-x509-cert-to-name?revision=2014-12-10)ietf-x509-cert-to-name"
- },
- {
- "capability-origin": "device-advertised",
- "capability": "(urn:ietf:params:xml:ns:yang:ietf-system?revision=2014-08-06)ietf-system"
- },
- {
- "capability-origin": "device-advertised",
- "capability": "(urn:ietf:params:xml:ns:yang:ietf-netconf-monitoring?revision=2010-10-04)ietf-netconf-monitoring"
- },
- {
- "capability": "(urn:ietf:params:xml:ns:yang:ietf-datastores?revision=2017-08-17)ietf-datastores"
- },
- {
- "capability-origin": "device-advertised",
- "capability": "(urn:ietf:params:xml:ns:yang:1?revision=2017-02-20)yang"
- },
- {
- "capability-origin": "device-advertised",
- "capability": "(urn:ietf:params:xml:ns:yang:ietf-interfaces?revision=2014-05-08)ietf-interfaces"
- },
- {
- "capability-origin": "device-advertised",
- "capability": "(urn:ietf:params:xml:ns:yang:iana-if-type?revision=2014-05-08)iana-if-type"
- },
- {
- "capability": "(urn:ietf:params:xml:ns:yang:ietf-netconf-server?revision=2016-11-02)ietf-netconf-server"
- },
- {
- "capability-origin": "device-advertised",
- "capability": "(urn:opendaylight:params:xml:ns:yang:sample-plugin?revision=2016-09-18)sample-plugin"
- },
- {
- "capability-origin": "device-advertised",
- "capability": "(http://nokia.com/pnf-simulator)pnf-simulator"
- },
- {
- "capability": "(urn:ietf:params:xml:ns:yang:ietf-ssh-server?revision=2016-11-02)ietf-ssh-server"
- },
- {
- "capability-origin": "device-advertised",
- "capability": "(urn:ietf:params:xml:ns:yang:ietf-netconf-notifications?revision=2012-02-06)ietf-netconf-notifications"
- },
- {
- "capability-origin": "device-advertised",
- "capability": "(urn:ietf:params:xml:ns:netconf:base:1.0?revision=2011-06-01)ietf-netconf"
- },
- {
- "capability-origin": "device-advertised",
- "capability": "(urn:ietf:params:xml:ns:yang:ietf-yang-types?revision=2013-07-15)ietf-yang-types"
- },
- {
- "capability": "(urn:mynetconf:test?revision=2019-03-01)mynetconf"
- },
- {
- "capability": "(urn:ietf:params:xml:ns:yang:ietf-keystore?revision=2016-10-31)ietf-keystore"
- },
- {
- "capability-origin": "device-advertised",
- "capability": "(urn:ietf:params:xml:ns:netmod:notification?revision=2008-07-14)nc-notifications"
- },
- {
- "capability-origin": "device-advertised",
- "capability": "(urn:ietf:params:xml:ns:yang:ietf-yang-metadata?revision=2016-08-05)ietf-yang-metadata"
- },
- {
- "capability-origin": "device-advertised",
- "capability": "(urn:ietf:params:xml:ns:yang:ietf-inet-types?revision=2013-07-15)ietf-inet-types"
- },
- {
- "capability-origin": "device-advertised",
- "capability": "(http://example.net/turing-machine?revision=2013-12-27)turing-machine"
- },
- {
- "capability": "(urn:ietf:params:xml:ns:yang:ietf-tls-server?revision=2016-11-02)ietf-tls-server"
- },
- {
- "capability-origin": "device-advertised",
- "capability": "(urn:ietf:params:xml:ns:yang:ietf-netconf-with-defaults?revision=2011-06-01)ietf-netconf-with-defaults"
- },
- {
- "capability": "(urn:ietf:params:xml:ns:yang:ietf-yang-library?revision=2018-01-17)ietf-yang-library"
- },
- {
- "capability-origin": "device-advertised",
- "capability": "(urn:ietf:params:xml:ns:yang:ietf-ip?revision=2014-06-16)ietf-ip"
- },
- {
- "capability-origin": "device-advertised",
- "capability": "(urn:ietf:params:xml:ns:yang:ietf-netconf-acm?revision=2018-02-14)ietf-netconf-acm"
- },
- {
- "capability-origin": "device-advertised",
- "capability": "(urn:opendaylight:params:xml:ns:yang:stream-count?revision=2016-09-18)stream-count"
- }
- ]
- },
- "netconf-node-topology:host": "192.168.122.238",
- "netconf-node-topology:clustered-connection-status": {
- "netconf-master-node": "akka.tcp://opendaylight-cluster-data@127.0.0.1:2550"
- },
- "netconf-node-topology:connection-status": "connected",
- "netconf-node-topology:port": 830
- }
- ]
- }
-
-VPP setup
-=========
-
-1. The information that we need to configure the VPP reporter (which is the VES agent application
-that generates events destined for the ONAP VES collector) is the VES IP and port.
-The below instructions can be used for this configuration
-
-.. code-block::
-
- kubectl get svc -n onap -o wide | grep ves
- dcae-hv-ves-collector ClusterIP 10.43.130.145 <none> 6061/TCP 12d app=dcae-hv-ves-collector
- dcae-ves-collector ClusterIP 10.43.83.158 <none> 8080/TCP,8443/TCP 12d app=dcae-ves-collector
- xdcae-hv-ves-collector NodePort 10.43.32.76 <none> 6061:30222/TCP 12d app=dcae-hv-ves-collector
- xdcae-ves-collector NodePort 10.43.97.42 <none> 8080:30235/TCP,8443:30417/TCP 12d app=dcae-ves-collector
-
-2. Use the port of xdcae-ves (30235 in this case) and the kubernetes-host IP
-
-- Log in to the vfw sinc VNF as user ubuntu
-- Modify /opt/config/dcae_collector_ip.txt and /opt/config/dcae_collector_port.txt
-- Kill the vpp reporter if running already
-- Start the vpp reporter by executing the script
-
- - cd /opt/VES/evel/evel-library/code/VESreporting
- - ./go-client.sh &
-- Add the following route for the metadata service if not present already
-
- .. code-block::
-
- sudo ip route add 169.254.169.254 via <vfw_sinc OAM_NETWORK IP> dev <interface name>
- sample command:
- # sudo ip route add 169.254.169.254 via 10.10.10.11 dev eth3
-- Verify that the metadata service is accessible by issuing the following command
-
- .. code-block::
-
- curl http://169.254.169.254
-
-
-1. The events generated from this program will trigger the vFW CL flow.
-In a successful deployment of the vFW CL, the graphs look as in the screenshot below.
-We can see that the bars are shorter and more uniform as compared to vFW deployment without the CL
-
-Browse to the zdfw1fwl01snk01 on port 667 to see a graph representing the traffic being received
-
-.. code-block::
-
- http://<zdfw1fwl01snk01>:667/
-
-|image54|
-
-4. Check the events sent by TCA on unauthenticated.DCAE_CL_OUTPUT
-
-These events are the resulting of the TCA application, e.g. TCA has noticed an event was crossing
-a given threshold, hence is sending a message of that particular topic. Then Policy will grab this event
-and perform the appropriate action, as defined in the Policy. In the case of vFWCL, Policy will send
-an event on the APPC_CL topic, that APPC will consume. This will trigger a NETCONF request to the
-packet generator to adjust the traffic.
-
-.. code-block::
-
- curl -X GET \
- http://<kubernetes-host>:3904/events/unauthenticated.DCAE_CL_OUTPUT/group1/C1 \
- -H 'Accept: application/json' \
- -H 'Content-Type: application/cambria'
-
- #smaple command and output:
- curl -X GET http://10.43.214.215:3904/events/unauthenticated.DCAE_CL_OUTPUT/group1/C1 -H 'Accept: application/json' -H 'Content-Type: application/cambria' | jq
- % Total % Received % Xferd Average Speed Time Time Time Current
- Dload Upload Total Spent Left Speed
- 100 909 100 909 0 0 677 0 0:00:01 0:00:01 --:--:-- 677
- [
- "{\"closedLoopEventClient\":\"DCAE_INSTANCE_ID.dcae-tca\",\"policyVersion\":\"v0.0.1\",\"policyName\":\"DCAE.Config_tca-hi-lo\",\"policyScope\":\"DCAE\",\"target_type\":\"VM\",\"AAI\":{\"vserver.prov-status\":\"ACTIVE\",\"vserver.resource-version\":\"1617776112073\",\"vserver.is-closed-loop-disabled\":false,\"vserver.vserver-name2\":\"vfw_sinc_vsp_002-1\",\"vserver.vserver-id\":\"30dd6250-8a74-4ed7-9729-6ce7190c6661\",\"vserver.vserver-selflink\":\"http://10.200.142.157:8774/v2.1/servers/30dd6250-8a74-4ed7-9729-6ce7190c6661\",\"vserver.in-maint\":false,\"vserver.vserver-name\":\"vfw_sinc_vsp_002-1\"},\"closedLoopAlarmStart\":1500584201765465,\"closedLoopEventStatus\":\"ONSET\",\"closedLoopControlName\":\"ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a\",\"version\":\"1.0.2\",\"target\":\"vserver.vserver-name\",\"requestID\":\"2f546551-f304-4e76-9e8e-45c601790823\",\"from\":\"DCAE\"}"
- ]
-
-5. Check the active streams value in vPG over restconf
-
-The number of streams will change along the time, this is the result of close-loop policy.
-When the traffic goes over a certain threshold, DCAE will publish an event on the unauthenticated.DCAE_CL_OUTPUT
-topic that will be picked up by APPC, that will send a NETCONF request to the packet generator to adjust the traffic it's sending.
-
-Run the below command to check the stream count, you should see the value as 5
-
-.. code-block::
-
- curl -v --noproxy '*' --user "admin":"Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U" -H "Accept: application/xml" -H "Content-type: application/xml" -X GET http:/<kubernetes-host>:30230/restconf/config/network-topology:network-topology/topology/topology-netconf/node/<VPG VNFID>/yang-ext:mount/stream-count:stream-count/streams/
-
- #sample command and output
- curl -v --noproxy '*' --user "admin":"Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U" -H "Accept: application/xml" -H "Content-type: application/xml" -X GET http:/192.168.122.99:30230/restconf/config/network-topology:network-topology/topology/topology-netconf/node/a1ca05b4-3231-4e4a-a09c-74f2292fe577/yang-ext:mount/stream-count:stream-count/streams/
- Note: Unnecessary use of -X or --request, GET is already inferred.
- * Unwillingly accepted illegal URL using 1 slash!
- * Trying 192.168.122.99...
- * TCP_NODELAY set
- * Connected to 192.168.122.99 (192.168.122.99) port 30230 (#0)
- * Server auth using Basic with user 'admin'
- > GET /restconf/config/network-topology:network-topology/topology/topology-netconf/node/a1ca05b4-3231-4e4a-a09c-74f2292fe577/yang-ext:mount/stream-count:stream- count/streams/ HTTP/1.1
- > Host: 192.168.122.99:30230
- > Authorization: Basic YWRtaW46S3A4Yko0U1hzek0wV1hsaGFrM2VIbGNzZTJnQXc4NHZhb0dHbUp2VXkyVQ==
- > User-Agent: curl/7.58.0
- > Accept: application/xml
- > Content-type: application/xml
- >
- < HTTP/1.1 200 OK
- < Content-Type: application/xml
- < Content-Length: 110
- <
- * Connection #0 to host 192.168.122.99 left intact
- <streams xmlns="urn:opendaylight:params:xml:ns:yang:stream-count"><active-streams>5</active-streams></streams>
-
-
-.. |image16| image:: media/image16.png
-.. |image15| image:: media/image15.png
-.. |image5| image:: media/image5.png
-.. |image13| image:: media/image13.png
-.. |image1| image:: media/image1.png
-.. |image12| image:: media/image12.png
-.. |image14| image:: media/image14.png
-.. |image19| image:: media/image19.png
-.. |image7| image:: media/image7.png
-.. |image10| image:: media/image10.png
-.. |image4| image:: media/image4.png
-.. |image20| image:: media/image20.png
-.. |image9| image:: media/image9.png
-.. |image3| image:: media/image3.png
-.. |image17| image:: media/image17.png
-.. |image11| image:: media/image11.png
-.. |image24| image:: media/image24.png
-.. |image22| image:: media/image22.png
-.. |image18| image:: media/image18.png
-.. |image23| image:: media/image23.png
-.. |image2| image:: media/image2.png
-.. |image8| image:: media/image8.png
-.. |image21| image:: media/image21.png
-.. |image25| image:: media/image25.png
-.. |image53| image:: media/image53.jpg
-.. |image54| image:: media/image54.png
diff --git a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image1.png b/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image1.png
deleted file mode 100644
index c0b5dc668..000000000
--- a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image1.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image10.png b/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image10.png
deleted file mode 100644
index 952b3e0f0..000000000
--- a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image10.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image11.png b/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image11.png
deleted file mode 100644
index 9618c3a3a..000000000
--- a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image11.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image12.png b/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image12.png
deleted file mode 100644
index 9cc9373d2..000000000
--- a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image12.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image13.png b/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image13.png
deleted file mode 100644
index 797b961e0..000000000
--- a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image13.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image14.png b/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image14.png
deleted file mode 100644
index 5f974d776..000000000
--- a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image14.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image15.png b/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image15.png
deleted file mode 100644
index 58827b12c..000000000
--- a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image15.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image16.png b/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image16.png
deleted file mode 100644
index e2c0595d9..000000000
--- a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image16.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image17.png b/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image17.png
deleted file mode 100644
index fdeb56f8d..000000000
--- a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image17.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image18.png b/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image18.png
deleted file mode 100644
index e29b3cf96..000000000
--- a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image18.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image19.png b/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image19.png
deleted file mode 100644
index bb314752b..000000000
--- a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image19.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image2.png b/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image2.png
deleted file mode 100644
index 10a034744..000000000
--- a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image2.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image20.png b/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image20.png
deleted file mode 100644
index 675fa1cdc..000000000
--- a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image20.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image21.png b/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image21.png
deleted file mode 100644
index 1e6f052c7..000000000
--- a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image21.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image22.png b/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image22.png
deleted file mode 100644
index 3844ef458..000000000
--- a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image22.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image23.png b/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image23.png
deleted file mode 100644
index 7f8869ec2..000000000
--- a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image23.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image24.png b/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image24.png
deleted file mode 100644
index dea4d33cb..000000000
--- a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image24.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image25.png b/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image25.png
deleted file mode 100644
index f3bda7a73..000000000
--- a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image25.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image3.png b/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image3.png
deleted file mode 100644
index 54f7c48a4..000000000
--- a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image3.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image4.png b/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image4.png
deleted file mode 100644
index aeb403cce..000000000
--- a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image4.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image5.png b/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image5.png
deleted file mode 100644
index 76d3147a8..000000000
--- a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image5.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image53.jpg b/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image53.jpg
deleted file mode 100644
index 1388798b1..000000000
--- a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image53.jpg
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image54.png b/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image54.png
deleted file mode 100644
index 95372d14f..000000000
--- a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image54.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image6.png b/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image6.png
deleted file mode 100644
index 5c57abe17..000000000
--- a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image6.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image7.png b/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image7.png
deleted file mode 100644
index f42969be1..000000000
--- a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image7.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image8.png b/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image8.png
deleted file mode 100644
index 552d69c64..000000000
--- a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image8.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image9.png b/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image9.png
deleted file mode 100644
index 25bffb498..000000000
--- a/docs/guides/onap-user/vfwcl-deployment-tutorial/media/image9.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-design-tutorial/index.rst b/docs/guides/onap-user/vfwcl-design-tutorial/index.rst
deleted file mode 100644
index db68382e0..000000000
--- a/docs/guides/onap-user/vfwcl-design-tutorial/index.rst
+++ /dev/null
@@ -1,251 +0,0 @@
-.. This work is licensed under a Creative Commons Attribution 4.0
-.. International License. http://creativecommons.org/licenses/by/4.0
-.. Copyright © 2017-2020 Aarna Networks, Inc.
-
-vFWCL Design Tutorial
-#####################
-
-The instructions in this section will enable you to design the vFW Control Loop. The prerequisite for this tutorial is that the
-vFW_service design/deployment/instantiation should be completed.
-
-Control Loop Flow
-=================
-
-This section describes the vFW control loop flow and the modules involved. Following is the list of modules
-that are involved in designing and deploying the vFW CL
-
- 1) SDC: The first step of the procedure is to distribute the DCAE (TCA microservice) blueprint. That is done through ONAP SDC.
- 2) CLAMP: This is a tool for designing the policy and configuring the TCA threshold. CLAMP, along with DCAE, can also be used
- to manage the lifecycle of CLs
- 3) DCAE (platform and micro services): Multiple components of the DCAE module get involved in the overall lifecycle of the CL.
- 4) TCA: The CDAP threshold controlling application is a DCAE microservice.
- 5) ONAP Policy engine: The output of DCAE is sent to the Policy engine as an input event. We will use the DROOLS Policy engine.
- 6) APPC : The last hop in the CL, which takes the config action on the vPG on the output of the Policy engine.
-
-Distribute DCAE blueprints
-==========================
-
-In order to distribute the DCAE microservice blueprints we need to create a dummy service. The DCAE blueprint will be added as an artifact
-to the VF inside the service during service composition time.
-
-Follow the below steps to upload the blueprint for the TCA (Threshold Checking Application) DCAE microservice and Distribute the service to the CLAMP
-
-The following screenshot of the setup shows where “dcae_service” has been created and is in the composition phase.
-
-.. note::
- The service name should not contain any spaces. The DCAE policy fails to fetch the service from PDP if the name has a space.
- For example ‘dcae1’ will work and ‘dcae 1’ will not.
-
-1. Login as DESIGNER (cs0008) and create the service, checkin and certify
-
-|image16|
-
-2. Add any VNF (ex: vfw_pg) that was already created during the SDC design phase
-
-In the composition canvas drag and drop a resource of type VF from the abstract section in the Elements section (left hand side panel)
-
-|image15|
-
-3. Download the required DCAE MS blueprint to be attached to the service
-
-Use the sample TCA blueprint located here:
-https://git.onap.org/dcaegen2/platform/blueprints/tree/blueprints/k8s-tcagen2-clampnode.yaml
-
-.. note::
- * Check if the version of the plugin used in the blueprint is different from existing, then update the blueprint import to match
- * To check the version run this: `cfy plugins list | grep k8splugin`
-
-4. Now upload the Control Loop Artifact. The procedure to upload the artifact is
-
- * Click on the VF, as in the picture above the ‘vsp_pg 0’ is selected
- * Click on ‘DEPLOYMENT ARTIFACTS’ and then click on “Add Artifact”
-
- |image5|
-
- * Fill the details and in the type select DCAE_INVENTORY_BLUEPRINT, then click on Done as in the picture shown below
-
- |image13|
-
-5. After uploading the DCAE artifact to the SDC Service, attach the policy model to the Service. From the left drop down,
-select TCA policy under Policies, and click on the Add policy
-
-|image1|
-
-6. Click on Checkin on top right corner then click OK
-
-|image12|
-
-7. Search and select the same service from CATALOG and click on Certify on top right corner
-
-|image14|
-
-8. Click Distribute to distribute the service, then click on Distribution in the left hand side panel and monitor until
-the distribution is complete. We should see artifacts deployed in CLAMP and Policy engine, as can be seen in the picture below
-
-|image19|
-
-At this point we can open the CLAMP GUI and verify that the DCAE microservice design template is in place
-
-DCAE MS design in CLAMP
-=======================
-
-CLAMP is a GUI tool which enables the users to design the policies, distribute them to the DROOLS engine and eventually deploy
-the DCAE microservices. In this section we are going to design, distribute and deploy the BRMS (DROOLS) and TCA policy.
-
-Clamp uses AAF to authenticate the user and get the different permissions. In order to access the CLAMP GUI we will need to add the certificate.
-
-1. Add the necessary certificates in the browser
-
-The default certificate can be found here: https://gerrit.onap.org/r/gitweb?p=clamp.git;a=blob;f=src/main/resources/clds/aaf/org.onap.clamp.p12;h=268aa1a3ce56e01448f8043cc0b05b5fceb5a47d;hb=HEAD
-
-The password is: "China in the Spring"
-The certificate must be loaded into your favorite browser before trying to load the CLAMP UI.
-
-Ex: In case of Firefox browser, below is the procedure on how to add the certificate
-
-Open firefox browser and go to Preferences and search for Certificate Manager and Select “View Certificates“ button.
-This will open the following dialog to import certificate files from Your certificates menu.
-
-You need to go in options->Privacy & Security-> Scroll down to Certificates options a View Certificates Button
-and then Your certificates Tab -> Then Import button
-
-|image6|
-
-2. After the certificate is added, the CLAMP GUI can be accessed at:
-`https://<host_IP>:30258` (host_IP is the node IP where CLAMP is running)
-
-3. Before designing the policy we need to undeploy the default tca policy.
-To undeploy default policy execute the below commands on control node
-
-.. code-block::
-
- > kubectl get deployments -n onap | grep "dep-dcae-tca-analytics\|dcaegen2-analytics-tca" | awk '{print $1}' |
- xargs kubectl delete deployments -n onap
- > kubectl get svc -n onap | grep "dcae-tca-analytics\|dcaegen2-analytics-tca" | awk '{print $1}' |
- xargs kubectl delete svc -n onap
- To Verify there are no dcae-analytics POD, run the below command
- > kubectl get pods -n onap | grep 'analytics'
-
-4. If the service has been distributed correctly, following is how the service design templates
-listed in the Loop Templates as below
-
-|image7|
-
-Available Policy Models
-
-|image10|
-
-5. Create the loop from the templates distributed by SDC
-
-|image4|
-
-|image20|
-
-6. Add the Operational Policy
-Click on Loop Instance drop down and select Modify then click, select the policy model type then click Add
-
-|image9|
-
-|image3|
-
-7. Click on the MS application box and configure
-Fill the details in the pop up window and click on the save changes button.
-
- A. Click on app and Edit the Policy details, fill the below details
-
- * eventName: vFirewallBroadcastPackets
- * policyScope: DCAE
- * policyVersion: v0.0.1
- * Select controlLoopSchemaType as VM
- * policyName: DCAE.Config_tca-hi-lo
- * Select Pdp Group Info from the drop down as defaultGroup & xacm
-
- |image17|
-
- B. Click on the Add monitoring threshold1 button and fill the below details
-
- * version : 1.0.2
- * closedLoopControlName : name of the CL (ex: LOOP_TEMPLATE_mytest_srv_v1_0_vsp_pg0_k8s-tca)
- * select the direction from dropdown (ex: LESS)
-
- |image11|
-
- C. Click on the Add monitoring threshold2 button and fill the details same as above then click on Save Changes button
-
- |image24|
-
-8. Click on the Operational policy box and configure
-Fill the details in the pop window then click on save changes
-
-|image22|
-
-|image18|
-
-9. Submit the control loop to the policy
-From Loop Operations drop down select SUBMIT and click
-
-|image23|
-
-10. Deploy the control loop to DCAE
-From Loop Operations drop down select DEPLOY and click, verify the details and click Deploy
-
-|image2|
-
-|image8|
-
-Status Logs
-
-|image21|
-
-A successful deployment will make the service as DEPLOYED
-
-11. You can login into the control node and verify whether your new analytics application got deployed using below command
-
-.. code-block::
-
- > kubectl get pods -n onap | grep analytics
- Sample output
- dep-dcae-tca-analytics-7fccbf459-xkxlq 2/2 Running 0 6m15s
-
- > cfy deployment list | grep CLAMP
- Sample output
- | CLAMP_615bb47a-ea3e-4a02-8928-0564df900826 | CLAMP_615bb47a-ea3e-4a02-8928-0564df900826 | 2020-11-10 19:23:22.286 |
- 2020-11-10 19:23:22.286 | tenant | default_tenant | admin |
-
-
-.. |image16| image:: media/image16.png
-.. |image15| image:: media/image15.png
-.. |image5| image:: media/image5.png
-.. |image13| image:: media/image13.png
-.. |image1| image:: media/image1.png
-.. |image12| image:: media/image12.png
-.. |image14| image:: media/image14.png
-.. |image19| image:: media/image19.png
-.. |image6| image:: media/image6.png
-.. |image7| image:: media/image7.png
-.. |image10| image:: media/image10.png
-.. |image4| image:: media/image4.png
-.. |image20| image:: media/image20.png
-.. |image9| image:: media/image9.png
-.. |image3| image:: media/image3.png
-.. |image17| image:: media/image17.png
-.. |image11| image:: media/image11.png
-.. |image24| image:: media/image24.png
-.. |image22| image:: media/image22.png
-.. |image18| image:: media/image18.png
-.. |image23| image:: media/image23.png
-.. |image2| image:: media/image2.png
-.. |image8| image:: media/image8.png
-.. |image21| image:: media/image21.png
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/docs/guides/onap-user/vfwcl-design-tutorial/media/image1.png b/docs/guides/onap-user/vfwcl-design-tutorial/media/image1.png
deleted file mode 100644
index c0b5dc668..000000000
--- a/docs/guides/onap-user/vfwcl-design-tutorial/media/image1.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-design-tutorial/media/image10.png b/docs/guides/onap-user/vfwcl-design-tutorial/media/image10.png
deleted file mode 100644
index 952b3e0f0..000000000
--- a/docs/guides/onap-user/vfwcl-design-tutorial/media/image10.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-design-tutorial/media/image11.png b/docs/guides/onap-user/vfwcl-design-tutorial/media/image11.png
deleted file mode 100644
index 9618c3a3a..000000000
--- a/docs/guides/onap-user/vfwcl-design-tutorial/media/image11.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-design-tutorial/media/image12.png b/docs/guides/onap-user/vfwcl-design-tutorial/media/image12.png
deleted file mode 100644
index 9cc9373d2..000000000
--- a/docs/guides/onap-user/vfwcl-design-tutorial/media/image12.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-design-tutorial/media/image13.png b/docs/guides/onap-user/vfwcl-design-tutorial/media/image13.png
deleted file mode 100644
index 797b961e0..000000000
--- a/docs/guides/onap-user/vfwcl-design-tutorial/media/image13.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-design-tutorial/media/image14.png b/docs/guides/onap-user/vfwcl-design-tutorial/media/image14.png
deleted file mode 100644
index 5f974d776..000000000
--- a/docs/guides/onap-user/vfwcl-design-tutorial/media/image14.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-design-tutorial/media/image15.png b/docs/guides/onap-user/vfwcl-design-tutorial/media/image15.png
deleted file mode 100644
index 58827b12c..000000000
--- a/docs/guides/onap-user/vfwcl-design-tutorial/media/image15.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-design-tutorial/media/image16.png b/docs/guides/onap-user/vfwcl-design-tutorial/media/image16.png
deleted file mode 100644
index e2c0595d9..000000000
--- a/docs/guides/onap-user/vfwcl-design-tutorial/media/image16.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-design-tutorial/media/image17.png b/docs/guides/onap-user/vfwcl-design-tutorial/media/image17.png
deleted file mode 100644
index fdeb56f8d..000000000
--- a/docs/guides/onap-user/vfwcl-design-tutorial/media/image17.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-design-tutorial/media/image18.png b/docs/guides/onap-user/vfwcl-design-tutorial/media/image18.png
deleted file mode 100644
index e29b3cf96..000000000
--- a/docs/guides/onap-user/vfwcl-design-tutorial/media/image18.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-design-tutorial/media/image19.png b/docs/guides/onap-user/vfwcl-design-tutorial/media/image19.png
deleted file mode 100644
index bb314752b..000000000
--- a/docs/guides/onap-user/vfwcl-design-tutorial/media/image19.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-design-tutorial/media/image2.png b/docs/guides/onap-user/vfwcl-design-tutorial/media/image2.png
deleted file mode 100644
index 10a034744..000000000
--- a/docs/guides/onap-user/vfwcl-design-tutorial/media/image2.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-design-tutorial/media/image20.png b/docs/guides/onap-user/vfwcl-design-tutorial/media/image20.png
deleted file mode 100644
index 675fa1cdc..000000000
--- a/docs/guides/onap-user/vfwcl-design-tutorial/media/image20.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-design-tutorial/media/image21.png b/docs/guides/onap-user/vfwcl-design-tutorial/media/image21.png
deleted file mode 100644
index 1e6f052c7..000000000
--- a/docs/guides/onap-user/vfwcl-design-tutorial/media/image21.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-design-tutorial/media/image22.png b/docs/guides/onap-user/vfwcl-design-tutorial/media/image22.png
deleted file mode 100644
index 3844ef458..000000000
--- a/docs/guides/onap-user/vfwcl-design-tutorial/media/image22.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-design-tutorial/media/image23.png b/docs/guides/onap-user/vfwcl-design-tutorial/media/image23.png
deleted file mode 100644
index 7f8869ec2..000000000
--- a/docs/guides/onap-user/vfwcl-design-tutorial/media/image23.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-design-tutorial/media/image24.png b/docs/guides/onap-user/vfwcl-design-tutorial/media/image24.png
deleted file mode 100644
index dea4d33cb..000000000
--- a/docs/guides/onap-user/vfwcl-design-tutorial/media/image24.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-design-tutorial/media/image3.png b/docs/guides/onap-user/vfwcl-design-tutorial/media/image3.png
deleted file mode 100644
index 54f7c48a4..000000000
--- a/docs/guides/onap-user/vfwcl-design-tutorial/media/image3.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-design-tutorial/media/image4.png b/docs/guides/onap-user/vfwcl-design-tutorial/media/image4.png
deleted file mode 100644
index aeb403cce..000000000
--- a/docs/guides/onap-user/vfwcl-design-tutorial/media/image4.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-design-tutorial/media/image5.png b/docs/guides/onap-user/vfwcl-design-tutorial/media/image5.png
deleted file mode 100644
index 76d3147a8..000000000
--- a/docs/guides/onap-user/vfwcl-design-tutorial/media/image5.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-design-tutorial/media/image6.png b/docs/guides/onap-user/vfwcl-design-tutorial/media/image6.png
deleted file mode 100644
index 5c57abe17..000000000
--- a/docs/guides/onap-user/vfwcl-design-tutorial/media/image6.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-design-tutorial/media/image7.png b/docs/guides/onap-user/vfwcl-design-tutorial/media/image7.png
deleted file mode 100644
index f42969be1..000000000
--- a/docs/guides/onap-user/vfwcl-design-tutorial/media/image7.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-design-tutorial/media/image8.png b/docs/guides/onap-user/vfwcl-design-tutorial/media/image8.png
deleted file mode 100644
index 552d69c64..000000000
--- a/docs/guides/onap-user/vfwcl-design-tutorial/media/image8.png
+++ /dev/null
Binary files differ
diff --git a/docs/guides/onap-user/vfwcl-design-tutorial/media/image9.png b/docs/guides/onap-user/vfwcl-design-tutorial/media/image9.png
deleted file mode 100644
index 25bffb498..000000000
--- a/docs/guides/onap-user/vfwcl-design-tutorial/media/image9.png
+++ /dev/null
Binary files differ