diff options
Diffstat (limited to 'docs/guides/onap-developer/architecture')
3 files changed, 171 insertions, 146 deletions
diff --git a/docs/guides/onap-developer/architecture/index.rst b/docs/guides/onap-developer/architecture/index.rst index bc392893c..d4f38d9cf 100644 --- a/docs/guides/onap-developer/architecture/index.rst +++ b/docs/guides/onap-developer/architecture/index.rst @@ -3,120 +3,15 @@ International License. http://creativecommons.org/licenses/by/4.0 Copyright 2017 AT&T Intellectual Property. All rights reserved. +.. index:: Platform Architecture + .. _doc-architecture: Architecture ============ -.. note:: - 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. - -Models ------- - -.. toctree:: - :maxdepth: 1 - :titlesonly: - - Model Specifications <../../../submodules/modeling/modelspec.git/docs/ONAP release 1 spec/index> - -User Interfaces ---------------- - -.. toctree:: - :maxdepth: 1 - :titlesonly: - - CLAMP - Closed Loop Automation Platform <../../../submodules/clamp.git/docs/architecture.rst> - CLI - Command Line Interface <../../../submodules/cli.git/docs/architecture.rst> - SDC - Service Design and Creation <../../../submodules/sdc.git/docs/architecture.rst> - ../../../submodules/sdc/jtosca.git/docs/architecture.rst - ../../../submodules/sdc/sdc-distribution-client.git/docs/architecture.rst - ../../../submodules/sdc/sdc-docker-base.git/docs/architecture.rst - ../../../submodules/sdc/sdc-titan-cassandra.git/docs/architecture.rst - ../../../submodules/sdc/sdc-tosca.git/docs/architecture.rst - ../../../submodules/sdc/sdc-workflow-designer.git/docs/architecture.rst - ../../../submodules/usecase-ui.git/docs/architecture.rst - ../../../submodules/vid/asdcclient.git/docs/architecture.rst - VID - Virtual Infrastructure Deployment <../../../submodules/vid.git/docs/intro/index> - -Platform Components -------------------- - -.. toctree:: - :maxdepth: 1 - :titlesonly: - - ../../../submodules/appc/deployment.git/docs/architecture.rst - ../../../submodules/appc.git/docs/architecture.rst - DCAE - Data Collection Analytics and Events <../../../submodules/dcaegen2.git/docs/sections/architecture.rst> - ../../../submodules/holmes/engine-management.git/docs/architecture.rst - Holmes <../../../submodules/holmes/rule-management.git/docs/platform/architecture.rst> - ../../../submodules/policy/engine.git/docs/architecture.rst - ../../../submodules/sdnc/adaptors.git/docs/architecture.rst - ../../../submodules/sdnc/architecture.git/docs/architecture.rst - ../../../submodules/sdnc/core.git/docs/architecture.rst - ../../../submodules/sdnc/features.git/docs/architecture.rst - SDN Northbound <../../../submodules/sdnc/northbound.git/docs/architecture.rst - SDN Controller OAM <../../../submodules/sdnc/oam.git/docs/architecture.rst> - ../../../submodules/sdnc/parent.git/docs/architecture.rst - ../../../submodules/sdnc/plugins.git/docs/architecture.rst - ../../../submodules/so/libs.git/docs/architecture.rst - ../../../submodules/so.git/docs/architecture.rst - ../../../submodules/vfc/lcm.git/docs/architecture.rst - ../../../submodules/vfc/nfvo/lcm.git/docs/architecture.rst - -Common Services ---------------- - -.. toctree:: - :maxdepth: 1 - :titlesonly: - - AAI - Active and Available Inventory <../../../submodules/aai/aai-common.git/docs/platform/architecture.rst> - AAI ESR UI <../../../submodules/aai/esr-gui.git/docs/platform/architecture.rst> - AAI ESR Server <../../../submodules/aai/esr-server.git/docs/platform/architecture.rst> - ../../../submodules/aai/sparky-be.git/docs/architecture.rst - ../../../submodules/dmaap/messagerouter/messageservice.git/docs/architecture.rst - MSB - Microservices Bus <../../../submodules/msb/apigateway.git/docs/platform/architecture.rst> - ../../../submodules/msb/discovery.git/docs/architecture.rst - ../../../submodules/msb/java-sdk.git/docs/architecture.rst - ../../../submodules/msb/swagger-sdk.git/docs/architecture.rst - -SDKs ----- - -.. toctree:: - :maxdepth: 1 - :titlesonly: - - ../../../submodules/ccsdk/dashboard.git/docs/architecture.rst - ../../../submodules/ccsdk/distribution.git/docs/architecture.rst - ../../../submodules/ccsdk/parent.git/docs/architecture.rst - ../../../submodules/ccsdk/platform/blueprints.git/docs/architecture.rst - ../../../submodules/ccsdk/platform/nbapi.git/docs/architecture.rst - ../../../submodules/ccsdk/platform/plugins.git/docs/architecture.rst - CCSDK SLI Adaptors <../../../submodules/ccsdk/sli/adaptors.git/docs/architecture.rst> - CCSDK SLI Service Logic Intrepreter <../../../submodules/ccsdk/sli/core.git/docs/architecture.rst> - CCSDK SLI Northbound Interface <../../../submodules/ccsdk/sli/northbound.git/docs/architecture.rst> - CCSDK SLI Plugins <../../../submodules/ccsdk/sli/plugins.git/docs/architecture.rst> - ../../../submodules/ccsdk/storage/esaas.git/docs/architecture.rst - ../../../submodules/ccsdk/storage/pgaas.git/docs/architecture.rst - ../../../submodules/ccsdk/utils.git/docs/architecture.rst - Portal <../../../submodules/portal.git/docs/tutorials/portal-sdk/architecture.rst> - ../../../submodules/vnfsdk/model.git/docs/architecture.rst - -Other ------ - .. toctree:: - :maxdepth: 1 - :titlesonly: + :maxdepth: 2 - ../../../submodules/integration.git/docs/architecture.rst - ../../../submodules/optf/has.git/docs/architecture.rst - ../../../submodules/vnfrqts/guidelines.git/docs/architecture.rst - ../../../submodules/vnfrqts/requirements.git/docs/architecture.rst + onap-architecture.rst + references.rst diff --git a/docs/guides/onap-developer/architecture/onap-architecture.rst b/docs/guides/onap-developer/architecture/onap-architecture.rst index 54ba6b728..95b91b2d9 100644 --- a/docs/guides/onap-developer/architecture/onap-architecture.rst +++ b/docs/guides/onap-developer/architecture/onap-architecture.rst @@ -1,11 +1,12 @@ -.. This work is licensed under a Creative Commons Attribution 4.0 International License. +.. This work is licensed under a Creative Commons Attribution 4.0 International License. .. http://creativecommons.org/licenses/by/4.0 .. Copyright 2017 Huawei Technologies Co., Ltd. -**Introducing the ONAP Architecture (Amsterdam Release)** -========================================================= -**Introduction ** ------------------ +Introducing the ONAP Architecture (Amsterdam Release) +===================================================== + +Introduction +------------- The ONAP project was formed in March, 2017 in response to a rising need for a common platform for telecommunication, cable, and cloud @@ -83,11 +84,11 @@ following foundational principles: services - Carrier-grade scalability including horizontal scaling (linear - scale-out) and distribution to support large number of services - and large networks + scale-out) and distribution to support large number of services + and large networks - Metadata-driven and policy-driven architecture to ensure flexible - ways in which capabilities are used and delivered + ways in which capabilities are used and delivered - The architecture shall enable sourcing best-in-class components @@ -96,14 +97,14 @@ following foundational principles: - Core capabilities shall support many diverse services - The architecture shall support elastic scaling as needs grow or - shrink + shrink |image0|\ **Figure 1:** ONAP Platform -**ONAP Architecture** -===================== +ONAP Architecture +----------------- Figure 2 provides a high-level view of the ONAP architecture and microservices-based platform components. The platform provides the @@ -114,9 +115,12 @@ necessary to develop service/operations-specific collection, analytics, and policies (including recipes for corrective/remedial action) using the ONAP Design Framework Portal. -|image1|\ **Figure 2:** ONAP Platform components (Amsterdam Release) +|image1|\ + +**Figure 2:** ONAP Platform components (Amsterdam Release) -1. **Portal** +Portal +++++++ ONAP delivers a single, consistent user experience to both design time and run time environments, based on the user’s role; role changes to be @@ -138,8 +142,8 @@ vendors and consultants), and other experts to continually define/refine new collection, analytics, and policies (including recipes for corrective/remedial action) using the ONAP Design Framework Portal. -**Design time Framework** -========================= +Design time Framework ++++++++++++++++++++++ The design time framework is a comprehensive development environment with tools, techniques, and repositories for defining/describing @@ -194,8 +198,8 @@ network service, then deploy and decommission it. Once deployed, a user can also update the loop with new parameters during runtime, as well as suspend and restart it. -**Runtime Framework** -===================== +Runtime Framework ++++++++++++++++++ The runtime execution framework executes the rules and policies distributed by the design and creation environment. This allows us to @@ -206,7 +210,8 @@ a Security Framework. These components use common services that support logging, access control, and data management. Orchestration -------------- ++++++++++++++ + The Service Orchestrator (SO) component executes the specified processes and automates sequences of activities, tasks, rules and policies needed for on-demand creation, modification or removal of @@ -215,7 +220,8 @@ provides orchestration at a very high level, with an end to end view of the infrastructure, network, and applications. Controllers ------------ ++++++++++++ + Controllers are applications which are coupled with cloud and network services and execute the configuration, real-time policies, and control the state of distributed components and services. Rather than using a @@ -230,7 +236,8 @@ infrastructure. While it provides a generic VNFM, it also integrates with external VNFMs and VIMs as part of a NFV MANO stack. Inventory ---------- ++++++++++ + Active and Available Inventory (A&AI) provides real-time views of a system’s resources, services, products and their relationships with each other. The views provided by A&AI relate data managed by multiple ONAP @@ -247,21 +254,21 @@ is metadata-driven, allowing new inventory types to be added dynamically and quickly via SDC catalog definitions, eliminating the need for lengthy development cycles. -**Closed-Loop Automation** -========================== +Closed-Loop Automation +---------------------- The following sections describe the ONAP frameworks designed to address these major requirements. The key pattern that these frameworks help -automate is +automate is: -***Design -> Create -> Collect -> Analyze -> Detect -> Publish -> -Respond.*** +**Design -> Create -> Collect -> Analyze -> Detect -> Publish -> +Respond** We refer to this automation pattern as “closed-loop automation” in that it provides the necessary automation to proactively respond to network and service conditions without human intervention. A high-level schematic of the “closed-loop automation” and the various phases within -the service lifecycle using the automation is depicted in Figure 4. +the service lifecycle using the automation is depicted in Figure 3. Closed-loop control is provided by Data Collection, Analytics and Events (DCAE) and other ONAP components. Collectively, they provide FCAPS @@ -283,8 +290,8 @@ human intervention before executing the change. \ **Figure 3:** ONAP Closed Loop Automation -**Common Services** -=================== +Common Services +--------------- ONAP provides common operational services for all ONAP components including activity logging, reporting, common data layer, access @@ -298,8 +305,8 @@ and opportunities. ONAP provides increased security by embedding access controls in each ONAP platform component, augmented by analytics and policy components specifically designed for the detection and mitigation of security violations. -**Amsterdam Use Cases** -======================= +Amsterdam Use Cases +------------------- The ONAP project uses real-world use cases to help focus our releases. For the first release of ONAP (“Amsterdam”), we introduce two use cases: @@ -317,7 +324,7 @@ providers to offer new value-added services to their customers with less dependency on the underlying hardware. In this use case, the customer has a physical CPE (pCPE) attached to a -traditional broadband network such as DSL (Figure 1). On top of this +traditional broadband network such as DSL (Figure 4). On top of this service, a tunnel is established to a data center hosting various VNFs. In addition, depending on the capabilities of the pCPE, some functions can be deployed on the customer site. @@ -363,7 +370,7 @@ To connect the different data centers, ONAP will also have to interface with legacy systems and physical function to establish VPN connectivity in a brown field deployment. -The VoLTE use case, shown in Figure 6, demonstrates the use of the VF-C +The VoLTE use case, shown in Figure 5, demonstrates the use of the VF-C component and TOSCA-based data models to manage the virtualization infrastructure. @@ -383,15 +390,15 @@ By unifying member resources, ONAP will accelerate the development of a vibrant .. |image0| image:: media/ONAP-DTRT.png :width: 6in :height: 2.6in -.. |image1| image:: media/toplevel.png +.. |image1| image:: media/ONAP-toplevel.png :width: 6.5in :height: 3.13548in -.. |image2| image:: media/closedloop.jpeg +.. |image2| image:: media/ONAP-closedloop.png :width: 6in :height: 2.6in -.. |image3| image:: media/vcpe.png +.. |image3| image:: media/ONAP-vcpe.png :width: 6.5in :height: 3.28271in -.. |image4| image:: media/volte.png +.. |image4| image:: media/ONAP-volte.png :width: 6.5in :height: 3.02431in diff --git a/docs/guides/onap-developer/architecture/references.rst b/docs/guides/onap-developer/architecture/references.rst new file mode 100644 index 000000000..b152795c4 --- /dev/null +++ b/docs/guides/onap-developer/architecture/references.rst @@ -0,0 +1,123 @@ +.. This work is licensed under a Creative Commons Attribution 4.0 International License. +.. http://creativecommons.org/licenses/by/4.0 +.. Copyright 2017 AT&T Intellectual Property. All rights reserved. + + +.. note:: + 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. + +References +========== + +Models +------ + +.. toctree:: + :maxdepth: 1 + :titlesonly: + + Model Specifications <../../../submodules/modeling/modelspec.git/docs/ONAP release 1 spec/index> + +User Interfaces +--------------- + +.. toctree:: + :maxdepth: 1 + :titlesonly: + + CLAMP - Closed Loop Automation Platform <../../../submodules/clamp.git/docs/architecture.rst> + CLI - Command Line Interface <../../../submodules/cli.git/docs/architecture.rst> + SDC - Service Design and Creation <../../../submodules/sdc.git/docs/architecture.rst> + ../../../submodules/sdc/jtosca.git/docs/architecture.rst + ../../../submodules/sdc/sdc-distribution-client.git/docs/architecture.rst + ../../../submodules/sdc/sdc-docker-base.git/docs/architecture.rst + ../../../submodules/sdc/sdc-titan-cassandra.git/docs/architecture.rst + ../../../submodules/sdc/sdc-tosca.git/docs/architecture.rst + ../../../submodules/sdc/sdc-workflow-designer.git/docs/architecture.rst + ../../../submodules/usecase-ui.git/docs/architecture.rst + ../../../submodules/vid/asdcclient.git/docs/architecture.rst + VID - Virtual Infrastructure Deployment <../../../submodules/vid.git/docs/intro/index> + +Platform Components +------------------- + +.. toctree:: + :maxdepth: 1 + :titlesonly: + + ../../../submodules/appc/deployment.git/docs/architecture.rst + ../../../submodules/appc.git/docs/architecture.rst + DCAE - Data Collection Analytics and Events <../../../submodules/dcaegen2.git/docs/sections/architecture.rst> + ../../../submodules/holmes/engine-management.git/docs/architecture.rst + Holmes <../../../submodules/holmes/rule-management.git/docs/platform/architecture.rst> + ../../../submodules/policy/engine.git/docs/architecture.rst + ../../../submodules/sdnc/adaptors.git/docs/architecture.rst + ../../../submodules/sdnc/architecture.git/docs/architecture.rst + ../../../submodules/sdnc/core.git/docs/architecture.rst + ../../../submodules/sdnc/features.git/docs/architecture.rst + SDN Northbound <../../../submodules/sdnc/northbound.git/docs/architecture.rst + SDN Controller OAM <../../../submodules/sdnc/oam.git/docs/architecture.rst> + ../../../submodules/sdnc/parent.git/docs/architecture.rst + ../../../submodules/sdnc/plugins.git/docs/architecture.rst + ../../../submodules/so/libs.git/docs/architecture.rst + ../../../submodules/so.git/docs/architecture.rst + ../../../submodules/vfc/lcm.git/docs/architecture.rst + ../../../submodules/vfc/nfvo/lcm.git/docs/architecture.rst + +Common Services +--------------- + +.. toctree:: + :maxdepth: 1 + :titlesonly: + + AAI - Active and Available Inventory <../../../submodules/aai/aai-common.git/docs/platform/architecture.rst> + AAI ESR UI <../../../submodules/aai/esr-gui.git/docs/platform/architecture.rst> + AAI ESR Server <../../../submodules/aai/esr-server.git/docs/platform/architecture.rst> + ../../../submodules/aai/sparky-be.git/docs/architecture.rst + ../../../submodules/dmaap/messagerouter/messageservice.git/docs/architecture.rst + MSB - Microservices Bus <../../../submodules/msb/apigateway.git/docs/platform/architecture.rst> + ../../../submodules/msb/discovery.git/docs/architecture.rst + ../../../submodules/msb/java-sdk.git/docs/architecture.rst + ../../../submodules/msb/swagger-sdk.git/docs/architecture.rst + ../../../submodules/multicloud/framework.git/docs/architecture.rst + +SDKs +---- + +.. toctree:: + :maxdepth: 1 + :titlesonly: + + ../../../submodules/ccsdk/distribution.git/docs/architecture.rst + ../../../submodules/ccsdk/dashboard.git/docs/architecture.rst + ../../../submodules/ccsdk/platform/blueprints.git/docs/architecture.rst + ../../../submodules/ccsdk/platform/nbapi.git/docs/architecture.rst + ../../../submodules/ccsdk/storage/esaas.git/docs/architecture.rst + ../../../submodules/ccsdk/storage/pgaas.git/docs/architecture.rst + ../../../submodules/ccsdk/utils.git/docs/architecture.rst + Portal <../../../submodules/portal.git/docs/tutorials/portal-sdk/architecture.rst> + ../../../submodules/vnfsdk/model.git/docs/architecture.rst + +.. CCSDK documentation consolidated under the above distribution repo + ../../../submodules/ccsdk/platform/plugins.git/docs/architecture.rst + ../../../submodules/ccsdk/parent.git/docs/architecture.rst + CCSDK SLI Adaptors <../../../submodules/ccsdk/sli/adaptors.git/docs/architecture.rst> + CCSDK SLI Service Logic Intrepreter <../../../submodules/ccsdk/sli/core.git/docs/architecture.rst> + CCSDK SLI Northbound Interface <../../../submodules/ccsdk/sli/northbound.git/docs/architecture.rst> + CCSDK SLI Plugins <../../../submodules/ccsdk/sli/plugins.git/docs/architecture.rst> + +Other +----- + +.. toctree:: + :maxdepth: 1 + :titlesonly: + + ../../../submodules/integration.git/docs/architecture.rst + ../../../submodules/optf/has.git/docs/architecture.rst + ../../../submodules/vnfrqts/guidelines.git/docs/architecture.rst + ../../../submodules/vnfrqts/requirements.git/docs/architecture.rst |