This page introduce how to support the closed loop intent.

1.Create The sporadic high-flow transfer support intent


1.1 Add the Configuration Policy

1.1.1 Create the configuration Policy Type


Method: POST 
URL: https://policyhost:port/policy/api/v1/policytypes
Body: 
{
    "tosca_definitions_version":"tosca_simple_yaml_1_1_0",
    "policy_types":{
        "onap.policies.monitoring.docker.slicems.app":{
            "version":"1.0.0",
            "description":"Runtime Configuration of Slice MS",
            "derived_from":"onap.policies.Monitoring:1.0.0",
            "properties":{
                "cllId":{
                    "type":"string",
                    "required":true,
                    "description":"cll id"
                },
                "closedLoopStatus":{
                    "type":"string",
                    "required":true,
                    "description":"whether provide closed loop assurance for one cll"
                },
                "originalBw":{
                    "type":"string",
                    "required":true,
                    "description":"original bw of one cll"
                }
            }
        }
    }
}


`

1.1.2 Create Configuration Policy

Create configuration policy with the parameters :

cllId:  The id of the CLL service which to monitor

closedLoopStatus: monitor the service or not, off: don't monitor , on: monitor

originalBw: The original intent bandwidth,this is used to reverse the bandwidth if the sporadic high-flow is passed.

Method: POST
URL: https://policyhost:port/policy/api/v1/policytypes/onap.policies.monitoring.docker.slicems.app/versions/1.0.0/policies
Body:
{
    "tosca_definitions_version":"tosca_simple_yaml_1_1_0",
    "topology_template":{
        "policies":[
            {
                "onap.dcae.slicems.config":{
                    "type":"onap.policies.monitoring.docker.slicems.app",
                    "type_version":"1.0.0",
                    "version":"1.0.0",
                    "metadata":{
                        "policy-id":"onap.dcae.slicems.config",
                        "policy-version":1
                    },
                    "properties":{
                        "cllId":"cll-01",
                        "closedLoopStatus":"on",
                        "originalBw":"1000"
                    }
                }
            }
        ]
    }
}

1.1.3 Deploy Configuration Policy

Method: POST
URL: https://policypaphost:port/policy/pap/v1/pdps/policies
Body: 
{
  "policies": [
    {
      "policy-id": "onap.dcae.slicems.config",
       "policy-version": 1
    }
  ]
}


1.2 Add the drools policy

1.2.1 Create the drools policy

Method: POST
URL: https://policyhost:port/policy/api/v1/policytypes/onap.policies.monitoring.docker.slicems.app/versions/1.0.0/policies
Body:
{
    "tosca_definitions_version": "tosca_simple_yaml_1_1_0",
    "topology_template": {
        "inputs": {},
        "policies": [
            {
                "operational.modifycll": {
                    "type": "onap.policies.controlloop.operational.common.Drools",
                    "type_version": "1.0.0",
                    "properties": {
                        "operations": [
                            {
                                "id": "unique-policy-id-1-modify-cll",
                                "description": "Modify resource allocation for a slice subnet instance",
                                "operation": {
                                    "actor": "SO",
                                    "operation": "ModifyCloudLeasedLine",
                                    "target": {
                                        "targetType": "VNF"
                                    }
                                },
                                "timeout": 1200,
                                "retries": 0,
                                "success": "final_success",
                                "failure": "final_failure",
                                "failure_timeout": "final_failure_timeout",
                                "failure_retries": "final_failure_retires",
                                "failure_exception": "final_failure_exception",
                                "failure_guard": "final_failure_guard"
                            }
                        ],
                        "controllerName": "usecases",
                        "id": "ControlLoop-CCVPN-CLL-227e8b00-dbeb-4d03-8719-d0a658fb846c",
                        "trigger": "unique-policy-id-1-modify-cll",
                        "abatement": false,
                        "timeout": 1200
                    },
                    "name": "operational.modifycll",
                    "version": "1.0.0",
                    "metadata": {
                        "policy-id": "operational.modifycll",
                        "policy-version": "1.0.0",
                        "policy_id": "operational.modifycll"
                    }
                }
            }
        ]
    },
    "name": "ToscaServiceTemplateSimple",
    "version": "1.0.0"
}

1.2.2 Deploy the drools policy

Method: POST
URL: https://policypaphost:port/policy/pap/v1/pdps/policies
Body:  
{
  "policies": [
    {
      "policy-id": "operational.modifycll",
       "policy-version": 1
    }
  ]
}


2. Remove the sporadic high-flow transfer support intent

2.1 Update(delete and create) Configuration Policy

Note: Update policy is not supported by Policy module now ,so  delete and create is used for update.


2.1.1 Undeploy Configuration Policy

Method: DELETE
URL: https://policypaphost:port/policy/pap/v1/pdps/policies/onap.dcae.slicems.config


2.1.2 Delete Configuration Policy 

Method: DELETE
URL: https://policyhost:port/policy/api/v1/policies/onap.dcae.slicems.config/versions/1.0.0

2.1.3 Create Configuration Policy 

Recreate the configuration policy with the closedLoopStatus as "off" to remove the monitoring CLL bandwith.

Method: POST
URL: https://policyhost:port/policy/api/v1/policytypes/onap.policies.monitoring.docker.slicems.app/versions/1.0.0/policies
Body:
{
    "tosca_definitions_version":"tosca_simple_yaml_1_1_0",
    "topology_template":{
        "policies":[
            {
                "onap.dcae.slicems.config":{
                    "type":"onap.policies.monitoring.docker.slicems.app",
                    "type_version":"1.0.0",
                    "version":"1.0.0",
                    "metadata":{
                        "policy-id":"onap.dcae.slicems.config",
                        "policy-version":1
                    },
                    "properties":{
                        "cllId":"cll-01",
                        "closedLoopStatus":"off",
                        "originalBw":"1000"
                    }
                }
            }
        ]
    }
}

2.1.4 Deploy configuration policy

Method: POST
URL: https://policypaphost:port/policy/pap/v1/pdps/policies
Body: 
{
  "policies": [
    {
      "policy-id": "onap.dcae.slicems.config",
       "policy-version": 1
    }
  ]
}

2.2 Delete Drools policy

2.1.1 Undeploy Drools Policy

Method: DELETE
URL: https://policypaphost:port/policy/pap/v1/pdps/policies/operational.modifycll


2.1.2 Delete Drools Policy 

Method: DELETE
URL: https://policyhost:port/policy/api/v1/policies/operational.modifycll/versions/1.0.0
  • No labels