-.. note::
- For Dublin, only the following derived Policy Type definitions below are preloaded in the Policy Framework. However,
- the creation of policies will still support the payload from Casablanca.
-
-Guard policy type definitions for *FrequencyLimiter*, *BlackList*, and *MinMax* are available in the `ONAP
-policy-models gerrit repository
-<https://github.com/onap/policy-models/tree/master/models-examples/src/main/resources/policytypes>`__.
-
-3 PDP Deployment and Registration with PAP
-==========================================
-
-The unit of execution and scaling in the Policy Framework is a *PolicyImpl* entity. A *PolicyImpl* entity runs on a PDP.
-As is explained above, a *PolicyImpl* entity is a *PolicyTypeImpl* implementation parameterized with a TOSCA *Policy*.
-
-.. image:: images/PolicyImplPDPSubGroup.svg
-
-In order to achieve horizontal scalability, we group the PDPs running instances of a given *PolicyImpl* entity logically
-together into a *PDPSubGroup*. The number of PDPs in a *PDPSubGroup* can then be scaled up and down using Kubernetes. In
-other words, all PDPs in a subgroup run the same *PolicyImpl*, that is the same policy template implementation (in
-XACML, Drools, or APEX) with the same parameters.
-
-The figure above shows the layout of *PDPGroup* and *PDPSubGroup* entities. The figure shows examples of PDP groups for
-Control Loop and Monitoring policies on the right.
-
-The health of PDPs is monitored by the PAP in order to alert operations teams managing policy. The PAP manages the life
-cycle of policies running on PDPs.
-
-The table below shows the deployment methods in which *PolicyImpl* entities can be deployed to PDP Subgroups.
-
-========== =========================================== ============================== ==================================
-**Method** **Description** **Advantages** **Disadvantages**
-========== =========================================== ============================== ==================================
-Cold The *PolicyImpl* (*PolicyTypeImpl* and No run time configuration Very restrictive, no run time
- TOSCA *Policy*) are predeployed on the PDP. required and run time configuration of PDPs is possible.
- PDP is fully configured and ready to administration is simple.
- execute when started.
-
- PDPs register with the PAP when they
- start, providing the *PolicyImpl* they
- have been predeployed with.
-
-Warm The *PolicyTypeImpl* entity is predeployed The configuration, parameters, Administration and management is
- on the PDP. A TOSCA *Policy* may be loaded and PDP group of PDPs may be required. The configuration and
- at startup. The PDP may be configured or changed at run time by loading life cycle of the TOSCA policies
- reconfigured with a new or updated TOSCA or updating a TOSCA *Policy* can change at run time and must be
- *Policy* at run time. into the PDP. administered and managed.
-
- PDPs register with the PAP when they start, Support TOSCA *Policy* entity
- providing the *PolicyImpl* they have been life cycle managgement is
- predeployed with if any. The PAP may update supported, allowing features
- the TOSCA *Policy* on a PDP at any time such as *PolicyImpl* Safe Mode
- after registration. and *PolicyImpl* retirement.
-
-Hot The *PolicyImpl* (*PolicyTypeImpl* and The policy logic, rules, Administration and management is
- TOSCA *Policy*) are deployed at run time. configuration, parameters, and more complex. The *PolicyImpl*
- The *PolicyImpl* (*PolicyTypeImpl* and PDP group of PDPs may be itself and its configuration and
- TOSCA *Policy*) may be loaded at startup. changed at run time by loading life cycle as well as the life
- The PDP may be configured or reconfigured or updating a TOSCA *Policy* cycle of the TOSCA policies can
- with a new or updated *PolicyTypeImpl* and *PolicyTypeImpl* into the change at run time and must be
- and/or TOSCA *Policy* at run time. PDP. administered and managed.
-
- PDPs register with the PAP when they Lifecycle management of TOSCA
- start, providing the *PolicyImpl* they have *Policy* entities and
- been predeployed with if any. The PAP may *PolicyTypeImpl* entites is
- update the TOSCA *Policy* and supported, allowing features
- *PolicyTypeImpl* on a PDP at any time after such as *PolicyImpl* Safe Mode
- registration and *PolicyImpl* retirement.
-========== =========================================== ============================== ==================================
-
-4. Policy Framework Public APIs
-===============================
-
-The Policy Framework provides the public APIs outline in the subsections below. For a full description of the APIs, see
-their individual documentation linked in each subsection.
-
-4.1 Policy Type Design API for TOSCA Policy Types
--------------------------------------------------
-
-The full documentation for this API is available on the :ref:`Policy Life Cycle API <api-label>` page.
-
-The purpose of this API is to support CRUD of TOSCA *PolicyType* entities. This API is provided by the
-*PolicyDevelopment* component of the Policy Framework, see the :ref:`The ONAP Policy Framework Architecture
-<architecture-label>` page.
-
-The API allows applications to create, update, delete, and query *PolicyType* entities so that they become available for
-use in ONAP by applications such as CLAMP. Some Policy Type entities are preloaded in the Policy Framework. The TOSCA
-fields below are valid on API calls:
-
-============ ======= ======== ========== ===============================================================================
-**Field** **GET** **POST** **DELETE** **Comment**
-============ ======= ======== ========== ===============================================================================
-(name) M M M The definition of the reference to the Policy Type, GET allows ranges to be
- specified
-version O M C GET allows ranges to be specified, must be specified if more than one version
- of the Policy Type exists
-description R O N/A Desciption of the Policy Type
-derived_from R C N/A Must be specified when a Policy Type is derived from another Policy Type such
- as in the case of derived Monitoring Policy Types
-metadata R O N/A Metadata for the Policy Type
-properties R M N/A This field holds the specification of the specific Policy Type in ONAP
-targets R O N/A A list of node types and/or group types to which the Policy Type can be applied
-triggers R O N/A Specification of policy triggers, not currently supported in ONAP
-============ ======= ======== ========== ===============================================================================