Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Policy Design

The following Policy domains Models will be developed to support ONAP Model Driven Control Loops in Dublin: onap.policies.monitoring, onap.policies.controlloop.operational, onap.policies.controlloop.guard and onap.policies.controlloop.coordination.

onap.policies.

...

Monitoring model

Overarching domain model that supports Policy driven DCAE microservice components used in a Control Loop. This domain Loops. The implementation that supports this model will be developed using XACML PDP to support question/answer Policy Decisions during runtime for the DCAE Policy Handler. This overarching domain is The implementation of this Model will be used to support dynamically generated DCAE microservice component Policy Models created during Design Time using TOSCA-Lab within SDC.

Code Block
titleSchema for onap.policies.Monitoring
linenumberstrue


onap.controlloop.

...

Operational model

This domain supporting actor/action operational policies for control loops. This domain will be developed using the Drools PDP to support runtime Control Loop actions taken on SO/APPC/VFC/SDNC/SDNR etc. In addition, in Dublin a domain will be developed using the newly introduced Apex PDP to support Control Loops using that engine.

onap.controlloop.

...

Guard domain

This domain supports Control Loop guard policies for frequency limiting, blacklisting and min/max guards to help protect runtime Control Loops from doing harm to the network. This domain will be developed using XACML PDP to support question/answer Policy Decision during runtime for the Drools and Apex onap.controlloop.operational domain Policy Domains.

onap.controlloop.

...

Coordination domain (STRETCH)

This domain supports Control Loop Coordination policies to assist in coordinating multiple control loops during runtime. This domain will be developed using XACML PDP to support question/answer Policy Decision during runtime for the Drools onap.controlloop.operational domain Policy Domains. NOTE: Apex is optional??

...

Code Block
After the PDPs have registered with the PAP:


http:{url}:{port}/pap/v1/pdps GET

#
# PAP - how it lists existing PDP Groups and Sub Groups and the models loaded
#
pdp_groups:
    -
        name: Control Loop runtime group
        description: ONAP Control Loop Operational and Guard policies
        subgroups:
            -
                pdp_type: drools
                instances:
                    -
                        instance: drools_1 # K8S identifier? IP??
                        models:
                            - onap.controlloop.operational
                    -
                        instance: drools_2
                        models:
                            - onap.controlloop.operational
                    -
                        instance: drools-3
                        models:
                            - onap.controlloop.operational
            -
                pdp_type: apex
                instances:
                    -
                        instance: apex_1
                        models:
                            - onap.controlloop.operational
                    -
                        instance: apex_2
                        models:
                            - onap.controlloop.operational
                    -
                        instance: apex_3
                        models:
                            - onap.controlloop.operational
            -
                pdp_type: xacml
                instances:
                    -
                        instance: xacml_1
                        models:
                            - onap.controlloop.guard
                            - onap.controlloop.coordination
                    -
                        instance: xacml_2
                        models:
                            - onap.controlloop.guard
                            - onap.controlloop.coordination

    -
        name: DCAE policy group
        subgroups:
            -
                pdp_type: xacml
                instances:
                -
                    instance: xacml_1
                    models:
                        - onap.controlloop.monitoring
                -
                    instance: xacml_2
                    models:
                        - onap.controlloop.monitoring


I would suggest that in the subgroups we define the properties for each instance rather than explicitly defining the instances, maybe something like this:

Code Block
languageyml

After the PDPs have registered with the PAP:


http:{url}:{port}/pap/v1/pdps GET

#
# PAP - how it lists existing PDP Groups and Sub Groups and the models loaded
#
pdp_groups:
    -
        name: Control Loop runtime group
        description: ONAP Control Loop Operational and Guard policies
        subgroups:
            -
                pdp_type: drools
                models:
                  # Maven coordinates here
                  - "onap.controlloop.operational:operational-standard"
                  - "onap.controlloop.operational:operational-enhanced"
                instances:
                  # Parameters somehow passed to K8S for scaling
                  min_instances: 3
                  # The parameters below are for illustration in Dublin, may be implemented later
                  instance_spawn_load_threshold: 70%
                  instance_kill_load_threshold: 50%
                  instance_geo_redundnacy: true
            -
                pdp_type: apex
                models:
                  # Maven coordinates here
                  - "onap.controlloop.operational:operational-standard"
                  - "onap.controlloop.operational:operational-enhanced"
                instances:
                  # Parameters somehow passed to K8S for scaling
                  min_instances: 3
                  # The parameters below are for illustration in Dublin, may be implemented later
                  instance_spawn_load_threshold: 80%
                  instance_kill_load_threshold: 60%
                  instance_geo_redundnacy: true
            -
                pdp_type: xacml
                models:
                  - "onap.controlloop.guard:guard-standard"
                  - "onap.controlloop.coordination:coordination-standard"
                  # Parameters somehow passed to K8S for scaling
                  min_instances: 2
                  # The parameters below are for illustration in Dublin, may be implemented later
                  instance_geo_redundnacy: true

    -
        name: DCAE policy group
        subgroups:
            -
                pdp_type: xacml
                models:
                  - "onap.controlloop.monitoring:monitoring-standard"
                  - "onap.controlloop.monitoring:monitoring-acme-inc"
                  # Parameters somehow passed to K8S for scaling
                  min_instances: 2
                  # The parameters below are for illustration in Dublin, may be implemented later
                  instance_geo_redundnacy: true




Policy Lifecycle API - Model query

...