Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Page Status:

...

Updated by PTL  
Component Status: Updated by PTL  ; Pending PTL Updates and ArchCom Review
Last Reviewed:
Certified by:

1. High Level Component Definition and Architectural Relationships 

Drawio
1
bordertrue
diagramNamepolicy_r7
simpleViewerfalse
width
linksauto
tbstyletop
lboxtrue
diagramWidth1007
revision2

In the Honolulu release the CLAMP component is being integrated into the Policy component as a PoC (see

Jira Legacy
serverSystem Jira
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyREQ-473
) .     CLAMP's functional role to provision Policy stays the same, as the project and associated resources are simply moved under the policy umbrella.

2. API Definitions

2a. Exposed APIs

Interface NameDefinitionCapabilitiesVersionStatusPayload Model(s)API Spec (Swagger)
POE-1Policy Type DesignAllows applications to create, update, delete, and query PolicyType entities so that they become available for use in ONAP by applications such as CLAMP.1.0.0production

tosca.policies.root

TOSCA

https://docs.onap.org/projects/onap-policy-parent/en/latest/api/api.html#api-swagger
POE-2Policy DesignAllows applications (such as CLAMP and Integration) to create, update, delete, and query Policy entities.1.0.0production

tosca.policies.root

TOSCA

https://docs.onap.org/projects/onap-policy-parent/en/latest/api/api.html#api-swagger
POE-3Policy AdministrationSupport CRUD of PDP groups and subgroups and to support the deployment and life cycles of PolicyImpl entities (TOSCA Policy and PolicyTypeImpl entities) on PDP sub groups and PDPs.1.0.0productionEmbeddedhttps://docs.onap.org/projects/onap-policy-parent/en/latest/pap/pap.html#pap-rest-api-swagger
POE-4Data IngressListen on a DMaaP topic. 
production

Messages of interest are described in the policy logic

DMaaP


POE-5Decision QueryPolicy decisions are required by ONAP components to support the policy-driven ONAP architecture. Policy Decisions are implemented using the XACML and Apex PDPs. The calling application (which may be another policy – e.g. invocation of a guard policy from PDP-D) must provide attributes in order for the PDP to return a correct decision.NAproductionDefined by policyhttps://docs.onap.org/projects/onap-policy-parent/en/latest/xacml/decision-api.html

2b. Consumed APIs

Interface NameConsumed byDescriptionAPI Spec (Swagger)
AAFPolicy FrameworkAuthentication and authorization
DMaaP

Policy Framework

Policies

Policy framework uses DMaaP for SDC subscriptions and internal communication.

Policies use DMaaP as a transport for contextual information from various sources


SDCPolicy FrameworkNotification of CSAR; Retrieval of CSAR
AAIPoliciesEnrich ingress data with topology information
SOPoliciesTrigger orchestration actions (policy driven)

SDNC

APPC

CDS

PoliciesTrigger control actions (policy driven)
OtherPoliciesTrigger any interface defined in a policy, for example, trouble ticketing


3. Component Description

The ONAP Policy Framework is a comprehensive policy design, deployment, and execution environment. The Policy Framework is the decision making component in an ONAP system. It allows you to specify, deploy, and execute the governance of the features and functions in your ONAP system, be they closed loop, orchestration, or more traditional open loop use case implementations. The Policy Framework is the component that is the source of truth for all policy decisions

Please see the TOSCA Policy Primer page for an introduction to TOSCA policy concepts. See the Policy Design and API flow page for a description of the component interactions.

...

Policy Enforcement is in general not handled by the Policy Framework. Enforcement is handled by either the originator of a decision query (PDP-D does enforce guard policy decisions made in the XACML PDP), or by a reaction to a policy output (trigger). 

4. Known System Limitations

https://docs.onap.org/projects/onap-policy-parent/en/latest/release-notes.html

5. System Deployment Architecture

https://docs.onap.org/projects/onap-policy-parent/en/latest/installation/installation.html

6. New Release Capabilities

...

Support for Control Loop
CCVPN support
5G OOF PCI support
E2E Network Slicing support
Scale out support
Security hardening
ONAP maturity Performance (S3P)
ONAP maturity Securtiy (S3P)
CLC Coordination directives
Code refactoring

7. References

...

The main new capability introduced in this release as a PoC is the integration of the CLAMP component under the policy umbrella (see

Jira Legacy
serverSystem Jira
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyREQ-473
).   The software is being moved under the policy/clamp repository (https://git.onap.org/policy/clamp).    The OOM helm charts are also moving as a subcomponent of policy  (https://git.onap.org/oom/tree/kubernetes/policy/components).

And additional PoC experiments with defining Control Loops fully in Tosca.   This is covered by 

Jira Legacy
serverSystem Jira
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyREQ-478
.

As outlined in the architecture review page (Policy Honolulu-R8 Architecture Review) the only new use case that may be supported as a stretch goal is the 5G one (

Jira Legacy
serverSystem Jira
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyREQ-429
).   Existing use cases will be supported (no change).

Conformance with ONAP wide requirements (

Jira Legacy
serverSystem Jira
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyREQ-441
,
Jira Legacy
serverSystem Jira
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyREQ-437
,
Jira Legacy
serverSystem Jira
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyREQ-398
,
Jira Legacy
serverSystem Jira
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyREQ-396
, and
Jira Legacy
serverSystem Jira
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyREQ-439
 (there are some risks, see Honolulu Risks page)) are already or will be supported.

Additional enhancements to the Policy components will be introduced in this release that have no external impact.    These include but are not limited to:

  • Stateless PAP (Keep no state in PAP runtime container, so state retrieval would be from database).
  • Interoperability of Native and non-native policies in the Drools PDP. 
  • Healthcheck status improvements as well as statistics reporting.

7. References

  1. Honolulu architecture description https://docs.onap.org/projects/onap-policy-parent/en/latest/architecture/architecture.html
  2. Policy Framework API's - https://docs.onap.org/projects/onap-policy-parent/en/latest/offeredapis.html