Policy R2 Beijing CSIT Functional Test Cases
- Pamela Dragosh
- FREEMAN, BRIAN D
Test Case Id | Description | Pre-conditions | Test Steps | Expected Results |
---|---|---|---|---|
1 | Perform healthcheck for the Policy components using Healthcheck API
|
| API – healthcheck Method - GET Endpoint: http://<host>:8081/healthcheck | All the policy components should return health status as “true” |
|
|
|
|
|
3 | Create config Policy for the following use cases
| Policy components up and running | API – CreateConfig Method – PUT Endpoint: https://<host>:8081/Pdp/createPolicy | Config Policy should be created in Policy Engine (PAP) |
4 | Push Config policy to the PDP Engines for the following use cases
| Policy components up and running | API - pushPolicy Method - PUT Endpoint: https:// <host>:8081/Pdp/pushPolicy | Config Policy should be pushed to the PDP group |
5 | Create Operational policy for the following use cases
| Policy components up and running | API - createPolicy Method – PUT Endpoint: https://<host>:8081/Pdp/createPolicy | Operational Policy should be created in Policy Engine (PAP) |
6 | Push operational Policy to the PDP Engines for each use case
| Policy components up and running | API - pushPolicy Method - PUT Endpoint: https:// <host>:8081/Pdp/pushPolicy | Operational Policy should be pushed to the PDP group |
7 | Retrieve the configs for the following use cases
| Policy components up and running | API – getConfig Method – POST Endpoint: https://<host>:8081/Pdp/getConfig | Both Config and Operational Policies configured for each use case should be retrieved successfully |
vFirewall Use Case
tca_policy: "{ "domain": "measurementsForVfScaling", "metricsPerEventName": [ { "eventName": "vFirewallBroadcastPackets", "controlLoopSchemaType": "VNF", "policyScope": "DCAE", "policyName": "DCAE.Config_tca-hi-lo", "policyVersion": "v0.0.1", "thresholds": [ { "closedLoopControlName": "ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a", "version": "1.0.2", "fieldPath": "$.event.measurementsForVfScalingFields.vNicUsageArray[*].receivedTotalPacketsDelta", "thresholdValue": 300, "direction": "LESS_OR_EQUAL", "severity": "MAJOR", "closedLoopEventStatus": "ONSET" }, { "closedLoopControlName": "ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a", "version": "1.0.2", "fieldPath": "$.event.measurementsForVfScalingFields.vNicUsageArray[*].receivedTotalPacketsDelta", "thresholdValue": 700, "direction": "GREATER_OR_EQUAL", "severity": "CRITICAL", "closedLoopEventStatus": "ONSET" } ] } ] }"
controlLoop: version: 2.0.0 controlLoopName: ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a trigger_policy: unique-policy-id-1-modifyConfig timeout: 1200 abatement: false policies: - id: unique-policy-id-1-modifyConfig name: modify packet gen config description: actor: APPC recipe: ModifyConfig target: # TBD - Cannot be known until instantiation is done resourceID: Eace933104d443b496b8.nodes.heat.vpg type: VNF retry: 0 timeout: 300 success: final_success failure: final_failure failure_timeout: final_failure_timeout failure_retries: final_failure_retries failure_exception: final_failure_exception failure_guard: final_failure_guard
{ "closedLoopEventClient": "DCAE_INSTANCE_ID.dcae-tca", "policyVersion": "1.0.0.5", "policyName": "vFirewall", "policyScope": "resource=SampleResource,service=SampleService,type=SampleType,closedLoopControlName=SampleClosedLoop", "target_type": "VNF", "AAI": { "generic-vnf.vnf-name": "zdfw1fwl01fwl02" }, "closedLoopAlarmStart": 1484855291527925, "closedLoopEventStatus": "ONSET", "closedLoopControlName": "ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a", "version": "1.0.2", "target": "generic-vnf.vnf-name", "requestID": "8c1b8bd8-06f7-493f-8ed7-daaa4cc481bc", "from": "DCAE" }
https://{aai}/aai/v11/network/generic-vnfs/generic-vnf?vnf-name=zdfw1fwl01fwl02
For a different vnfName { "vnf-id": "4e46ad6c-cebe-4460-858e-b5806883271b", "vnf-name": "vfw7f5a57d6", "vnf-type": "da818f33-97e1-4edf-98a5/5759f208-b75c-4b35-9599 0", "service-id": "a322c144-537c-4532-bf1b-0a4889083388", "prov-status": "PREPROV", "orchestration-status": "Created", "in-maint": false, "is-closed-loop-disabled": false, "resource-version": "1521467089262", "model-invariant-id": "a1efbbdd-2077-4b86-9fc0-244af99760f0", "model-version-id": "34c3221b-1326-4f35-9ed7-6f2f7e59d788", "model-customization-id": "1798c9a9-eaae-438f-bac3-b013599e8909", "nf-type": "", "nf-function": "", "nf-role": "", "nf-naming-code": "", "relationship-list": { "relationship": [ { "related-to": "service-instance", "related-link": "/aai/v11/business/customers/customer/DemoCust_7d454ef5-f5ea-4346-b2d3-e9797f5a57d6/service-subscriptions/service-subscription/vFW/service-instances/service-instance/7c45e4f7-aa7a-4130-9ee3-c5c1d81840df", "relationship-data": [ { "relationship-key": "customer.global-customer-id", "relationship-value": "DemoCust_7d454ef5-f5ea-4346-b2d3-e9797f5a57d6" }, { "relationship-key": "service-subscription.service-type", "relationship-value": "vFW" }, { "relationship-key": "service-instance.service-instance-id", "relationship-value": "7c45e4f7-aa7a-4130-9ee3-c5c1d81840df" } ], "related-to-property": [ { "property-key": "service-instance.service-instance-name", "property-value": "Service_Ete_Name7d454ef5-f5ea-4346-b2d3-e9797f5a57d6" } ] }, { "related-to": "vserver", "related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/50b190410b2a4c229d8a6044a80ab7c1/vservers/vserver/3f3f3c72-269d-45e6-8953-692424f2df1f", "relationship-data": [ { "relationship-key": "cloud-region.cloud-owner", "relationship-value": "CloudOwner" }, { "relationship-key": "cloud-region.cloud-region-id", "relationship-value": "RegionOne" }, { "relationship-key": "tenant.tenant-id", "relationship-value": "50b190410b2a4c229d8a6044a80ab7c1" }, { "relationship-key": "vserver.vserver-id", "relationship-value": "3f3f3c72-269d-45e6-8953-692424f2df1f" } ], "related-to-property": [ { "property-key": "vserver.vserver-name", "property-value": "demofwl01pgn" } ] }, { "related-to": "vserver", "related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/50b190410b2a4c229d8a6044a80ab7c1/vservers/vserver/4c45d0a4-a873-4d95-87ca-2a198322c9c4", "relationship-data": [ { "relationship-key": "cloud-region.cloud-owner", "relationship-value": "CloudOwner" }, { "relationship-key": "cloud-region.cloud-region-id", "relationship-value": "RegionOne" }, { "relationship-key": "tenant.tenant-id", "relationship-value": "50b190410b2a4c229d8a6044a80ab7c1" }, { "relationship-key": "vserver.vserver-id", "relationship-value": "4c45d0a4-a873-4d95-87ca-2a198322c9c4" } ], "related-to-property": [ { "property-key": "vserver.vserver-name", "property-value": "demofwl01snk" } ] }, { "related-to": "vserver", "related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/50b190410b2a4c229d8a6044a80ab7c1/vservers/vserver/b96416ef-fc4e-49cb-8120-1d56686d2e90", "relationship-data": [ { "relationship-key": "cloud-region.cloud-owner", "relationship-value": "CloudOwner" }, { "relationship-key": "cloud-region.cloud-region-id", "relationship-value": "RegionOne" }, { "relationship-key": "tenant.tenant-id", "relationship-value": "50b190410b2a4c229d8a6044a80ab7c1" }, { "relationship-key": "vserver.vserver-id", "relationship-value": "b96416ef-fc4e-49cb-8120-1d56686d2e90" } ], "related-to-property": [ { "property-key": "vserver.vserver-name", "property-value": "vfw7f5a57d6" } ] } ] } }
{ "CommonHeader": { "TimeStamp": 1500997725298, "APIver": "1.01", "RequestID": "664be3d2-6c12-4f4b-a3e7-c349acced200", "RequestTrack": [], "Flags": [] }, "Action": "ModifyConfig", "Payload": { "generic-vnf.vnf-id": "fw0001vm001fw001", "pg-streams": { "pg-stream": [ { "id": "fw_udp1", "is-enabled": "true" }, { "id": "fw_udp2", "is-enabled": "true" }, { "id": "fw_udp3", "is-enabled": "true" }, { "id": "fw_udp4", "is-enabled": "true" }, { "id": "fw_udp5", "is-enabled": "true" }] } } }
ACCEPT response { "Status": { "Value": "ACCEPTED", "Code": "100" }, "Payload": { "pg-streams": "{\\\"pg-streams\\\": {\\\"pg-stream\\\":[{\\\"id\\\":\\\"fw_udp1\\\", \\\"is-enabled\\\":\\\"true\\\"},{\\\"id\\\":\\\"fw_udp2\\\", \\\"is-enabled\\\":\\\"true\\\"},{\\\"id\\\":\\\"fw_udp3\\\", \\\"is-enabled\\\":\\\"true\\\"},{\\\"id\\\":\\\"fw_udp4\\\", \\\"is-enabled\\\":\\\"true\\\"},{\\\"id\\\":\\\"fw_udp5\\\", \\\"is-enabled\\\":\\\"true\\\"}]}}", "generic-vnf.vnf-id": "fw0001vm001fw001" }, "CommonHeader": { "TimeStamp": "1493841850199", "APIver": "1.01", "RequestID": "664be3d2-6c12-4f4b-a3e7-c349acced200", "SubrequestID": null, "OriginatorID": null } } SUCCESS response { "Status": { "Value": "SUCCESS", "Code": "400" }, "Payload": { "pg-streams": "{\\\"pg-streams\\\": {\\\"pg-stream\\\":[{\\\"id\\\":\\\"fw_udp1\\\", \\\"is-enabled\\\":\\\"true\\\"},{\\\"id\\\":\\\"fw_udp2\\\", \\\"is-enabled\\\":\\\"true\\\"},{\\\"id\\\":\\\"fw_udp3\\\", \\\"is-enabled\\\":\\\"true\\\"},{\\\"id\\\":\\\"fw_udp4\\\", \\\"is-enabled\\\":\\\"true\\\"},{\\\"id\\\":\\\"fw_udp5\\\", \\\"is-enabled\\\":\\\"true\\\"}]}}", "generic-vnf.vnf-id": "fw0001vm001fw001" }, "CommonHeader": { "TimeStamp": "1493841850199", "APIver": "1.01", "RequestID": "664be3d2-6c12-4f4b-a3e7-c349acced200", "SubrequestID": null, "OriginatorID": null } }
vDNS Use Case
tca_policy: "{ "domain": "measurementsForVfScaling", "metricsPerEventName": [{ "eventName": "vLoadBalancer", "controlLoopSchemaType": "VM", "policyScope": "DCAE", "policyName": "DCAE.Config_tca-hi-lo", "policyVersion": "v0.0.1", "thresholds": [{ "closedLoopControlName": "ControlLoop-vDNS-6f37f56d-a87d-4b85-b6a9-cc953cf779b3", "version": "1.0.2", "fieldPath": "$.event.measurementsForVfScalingFields.vNicUsageArray[*].receivedTotalPacketsDelta", "thresholdValue": 300, "direction": "GREATER_OR_EQUAL", "severity": "CRITICAL", "closedLoopEventStatus": "ONSET" }] }] }"
controlLoop: version: 2.0.0 controlLoopName: ControlLoop-vDNS-6f37f56d-a87d-4b85-b6a9-cc953cf779b3 trigger_policy: unique-policy-id-1-scale-up timeout: 1200 abatement: false policies: - id: unique-policy-id-1-scale-up name: Create a new VF Module description: actor: SO recipe: VF Module Create target: type: VNF retry: 0 timeout: 1200 success: final_success failure: final_failure failure_timeout: final_failure_timeout failure_retries: final_failure_retries failure_exception: final_failure_exception failure_guard: final_failure_guard
{ "closedLoopEventClient": "DCAE_INSTANCE_ID.dcae-tca", "policyVersion": "1.0.0.5", "policyName": "vLoadBalancer", "policyScope": "resource=SampleResource,service=SampleService,type=SampleType,closedLoopControlName=SampleClosedLoop", "target_type": "VM", "AAI": { "vserver.vserver-name": "dfw1lb01lb01" }, "closedLoopAlarmStart": 1484677482204798, "closedLoopEventStatus": "ONSET", "closedLoopControlName": "ControlLoop-vDNS-6f37f56d-a87d-4b85-b6a9-cc953cf779b3", "version": "1.0.2", "target": "vserver.vserver-name", "requestID": "97964e10-686e-4790-8c45-bdfa61df770f", "from": "DCAE" }
{ "query-parameters": { "named-query": { "named-query-uuid": "4ff56a54-9e3f-46b7-a337-07a1d3c6b469" } }, "instance-filters": { "instance-filter": [{ "vserver": { "vserver-name": "dfw1lb01lb01" } }] } }
{ "inventory-response-item": [ { "vserver": { "vserver-id": "6ed3642c-f7a1-4a7c-9290-3d51fe1531eb", "vserver-name": "zdfw1lb01lb02", "vserver-name2": "zdfw1lb01lb02", "prov-status": "ACTIVE", "vserver-selflink": "http://10.12.25.2:8774/v2.1/41d6d38489bd40b09ea8a6b6b852dcbd/servers/6ed3642c-f7a1-4a7c-9290-3d51fe1531eb", "in-maint": false, "is-closed-loop-disabled": false, "resource-version": "1510606403522" }, "extra-properties": {}, "inventory-response-items": { "inventory-response-item": [ { "model-name": "vLoadBalancer", "generic-vnf": { "vnf-id": "db373a8d-f7be-4d02-8ac8-6ca4c305d144", "vnf-name": "Vfmodule_vLB1113", "vnf-type": "vLoadBalancer-1106/vLoadBalancer 0", "service-id": "66f157fc-4148-4880-95f5-e120677e98d1", "prov-status": "PREPROV", "orchestration-status": "Created", "in-maint": false, "is-closed-loop-disabled": false, "resource-version": "1510604011851", "model-invariant-id": "cee050ed-92a5-494f-ab04-234307a846dc", "model-version-id": "fd65becc-6b2c-4fe8-ace9-cc29db9a3da2", "model-customization-id": "1983c783-444f-4e79-af3a-85e5d49628f3", "nf-type": "", "nf-function": "", "nf-role": "", "nf-naming-code": "" }, "extra-properties": { "extra-property": [ { "property-name": "model-ver.model-version-id", "property-value": "fd65becc-6b2c-4fe8-ace9-cc29db9a3da2" }, { "property-name": "model-ver.model-name", "property-value": "vLoadBalancer" }, { "property-name": "model.model-type", "property-value": "resource" }, { "property-name": "model.model-invariant-id", "property-value": "cee050ed-92a5-494f-ab04-234307a846dc" }, { "property-name": "model-ver.model-version", "property-value": "1.0" } ] }, "inventory-response-items": { "inventory-response-item": [ { "model-name": "vLoadBalancer-1106", "service-instance": { "service-instance-id": "3b12f31f-8f2d-4f5c-b875-61ff1194b941", "service-instance-name": "vLoadBalancer-1113", "model-invariant-id": "1321d60d-f7ff-4300-96c2-6bf0b3268b7a", "model-version-id": "732d4692-4b97-46f9-a996-0b3339e88c50", "resource-version": "1510603936425" }, "extra-properties": { "extra-property": [ { "property-name": "model-ver.model-version-id", "property-value": "732d4692-4b97-46f9-a996-0b3339e88c50" }, { "property-name": "model-ver.model-name", "property-value": "vLoadBalancer-1106" }, { "property-name": "model.model-type", "property-value": "service" }, { "property-name": "model.model-invariant-id", "property-value": "1321d60d-f7ff-4300-96c2-6bf0b3268b7a" }, { "property-name": "model-ver.model-version", "property-value": "1.0" } ] } }, { "model-name": "Vloadbalancer..base_vlb..module-0", "vf-module": { "vf-module-id": "e6b3e3eb-34e1-4c00-b8c1-2a4fbe479b12", "vf-module-name": "Vfmodule_vLB1113-1", "heat-stack-id": "Vfmodule_vLB1113-1/3dd6d900-772f-4fcc-a0cb-e250ab2bb4db", "orchestration-status": "active", "is-base-vf-module": true, "resource-version": "1510604612557", "model-invariant-id": "6d760188-9a24-451a-b05b-e08b86cb94f2", "model-version-id": "93facad9-55f2-4fe0-9574-814c2bc2d071", "model-customization-id": "93fd5bd4-8051-4074-8530-c0c504604df5", "module-index": 0 }, "extra-properties": { "extra-property": [ { "property-name": "model-ver.model-version-id", "property-value": "93facad9-55f2-4fe0-9574-814c2bc2d071" }, { "property-name": "model-ver.model-name", "property-value": "Vloadbalancer..base_vlb..module-0" }, { "property-name": "model.model-type", "property-value": "resource" }, { "property-name": "model.model-invariant-id", "property-value": "6d760188-9a24-451a-b05b-e08b86cb94f2" }, { "property-name": "model-ver.model-version", "property-value": "1" } ] } }, { "model-name": "Vloadbalancer..dnsscaling..module-1", "vf-module": { "vf-module-id": "dummy_db373a8d-f7be-4d02-8ac8-6ca4c305d144", "vf-module-name": "dummy_db373a8d-f7be-4d02-8ac8-6ca4c305d144", "is-base-vf-module": false, "resource-version": "1510610079687", "model-invariant-id": "356a1cff-71f2-4086-9980-a2927ce11c1c", "model-version-id": "6b93d804-cfc8-4be3-92cc-9336d135859a" }, "extra-properties": { "extra-property": [ { "property-name": "model-ver.model-version-id", "property-value": "6b93d804-cfc8-4be3-92cc-9336d135859a" }, { "property-name": "model-ver.model-name", "property-value": "Vloadbalancer..dnsscaling..module-1" }, { "property-name": "model.model-type", "property-value": "resource" }, { "property-name": "model.model-invariant-id", "property-value": "356a1cff-71f2-4086-9980-a2927ce11c1c" }, { "property-name": "model-ver.model-version", "property-value": "1" } ] } } ] } }, { "tenant": { "tenant-id": "41d6d38489bd40b09ea8a6b6b852dcbd", "tenant-name": "Integration-SB-00", "resource-version": "1509587770200" }, "extra-properties": {}, "inventory-response-items": { "inventory-response-item": [ { "cloud-region": { "cloud-owner": "CloudOwner", "cloud-region-id": "RegionOne", "cloud-type": "SharedNode", "owner-defined-type": "OwnerType", "cloud-region-version": "v1", "cloud-zone": "CloudZone", "sriov-automation": false, "resource-version": "1509587770092" }, "extra-properties": {} } ] } } ] } } ] }
NOTE: Robot must add preload for dummy module for this to work. { "requestDetails": { "modelInfo": { "modelType": "vfModule", "modelInvariantId": "356a1cff-71f2-4086-9980-a2927ce11c1c", "modelVersionId": "6b93d804-cfc8-4be3-92cc-9336d135859a", "modelName": "Vloadbalancer..dnsscaling..module-1", "modelVersion": "1" }, "cloudConfiguration": { "lcpCloudRegionId": "RegionOne", "tenantId": "41d6d38489bd40b09ea8a6b6b852dcbd" }, "requestInfo": { "instanceName": "vDNS_vLB1113-1", "source": "POLICY", "suppressRollback": false, "requestorId": "policy" }, "relatedInstanceList": [ { "relatedInstance": { "instanceId": "3b12f31f-8f2d-4f5c-b875-61ff1194b941", "modelInfo": { "modelType": "service", "modelInvariantId": "1321d60d-f7ff-4300-96c2-6bf0b3268b7a", "modelVersionId": "732d4692-4b97-46f9-a996-0b3339e88c50", "modelName": "vLoadBalancer-1106", "modelVersion": "1.0" } } }, { "relatedInstance": { "instanceId": "db373a8d-f7be-4d02-8ac8-6ca4c305d144", "modelInfo": { "modelType": "vnf", "modelInvariantId": "cee050ed-92a5-494f-ab04-234307a846dc", "modelVersionId": "fd65becc-6b2c-4fe8-ace9-cc29db9a3da2", "modelName": "vLoadBalancer", "modelVersion": "1.0", "modelCustomizationName": "vLoadBalancer 0" } } } ], "requestParameters": {} } }
SUCCESS: { "requestReferences": { "instanceId": "ff305d54-75b4-ff1b-bdb2-eb6b9e5460ff", "requestId": "e4f95e0c-a013-4530-8e59-c5c5f9e539b6" }, "httpResponseCode": 200 }
VOLTE Use Case
controlLoop: version: 2.0.0 controlLoopName: ControlLoop-VOLTE-2179b738-fd36-4843-a71a-a8c24c70c55b trigger_policy: unique-policy-id-1-restart timeout: 3600 abatement: false policies: - id: unique-policy-id-1-restart name: Restart the VM description: actor: VFC recipe: Restart target: type: VM retry: 3 timeout: 1200 success: final_success failure: final_failure failure_timeout: final_failure_timeout failure_retries: final_failure_retries failure_exception: final_failure_exception failure_guard: final_failure_guard
{ "closedLoopEventClient": "DCAE.HolmesInstance", "policyVersion": "1.0.0.5", "policyName": "vVOLTE", "policyScope": "resource=volte,service=VolteSErvice,type=SampleType,closedLoopControlName=CL-VOLTE-SIG-d925ed73-8231-4d02-9545-db4e101f88f8", "target_type": "VM", "AAI": { "vserver.vserver-name": "dfw1lb01lb01", "service-instance.service-instance-id" : "TBD", "generic-vnf.vnf-id" : "TBD", "generic-vnf.vnf-name" : "TBD" }, "closedLoopAlarmStart": 1484677482204798, "closedLoopEventStatus": "ONSET", "closedLoopControlName": "ControlLoop-VOLTE-2179b738-fd36-4843-a71a-a8c24c70c55b", "version": "1.0.2", "target": "vserver.vserver-name", "requestID": "97964e10-686e-4790-8c45-bdfa61df770f", "from": "DCAE" }
This call is a simple GET in order to retrieve "is-closed-loop-diable" flag.
Below is a sample GET response format. Field values are just examples. Will update to real values later. { "vnf-id": "5e49ca06-2972-4532-9ed4-6d071588d792", "vnf-name": "USUCP0PCOIL0110UJRT01", "vnf-type": "RT", "service-id": "d7bb0a21-66f2-4e6d-87d9-9ef3ced63ae4", "equipment-role": "UCPE", "orchestration-status": "created", "management-option": "ATT", "ipv4-oam-address": "32.40.68.35", "ipv4-loopback0-address": "32.40.64.57", "nm-lan-v6-address": "2001:1890:e00e:fffe::1345", "management-v6-address": "2001:1890:e00e:fffd::36", "in-maint": false, "is-closed-loop-disabled": false, "resource-version": "1493389458092", "relationship-list": {"relationship": [ { "related-to": "service-instance", "related-link": "https://aai-int1.test.att.com:8443/aai/v9/business/customers/customer/1610_Func_Global_20160817084727/service-subscriptions/service-subscription/uCPE-VMS/service-instances/service-instance/USUCP0PCOIL0110UJZZ01", "relationship-data": [ { "relationship-key": "customer.global-customer-id", "relationship-value": "1610_Func_Global_20160817084727" }, { "relationship-key": "service-subscription.service-type", "relationship-value": "uCPE-VMS" }, { "relationship-key": "service-instance.service-instance-id", "relationship-value": "USUCP0PCOIL0110UJZZ01" } ], "related-to-property": [{"property-key": "service-instance.service-instance-name"}] }, { "related-to": "vserver", "related-link": "https://aai-int1.test.att.com:8443/aai/v9/cloud-infrastructure/cloud-regions/cloud-region/att-aic/AAIAIC25/tenants/tenant/USUCP0PCOIL0110UJZZ01%3A%3AuCPE-VMS/vservers/vserver/3b2558f4-39d8-40e7-bfc7-30660fb52c45", "relationship-data": [ { "relationship-key": "cloud-region.cloud-owner", "relationship-value": "att-aic" }, { "relationship-key": "cloud-region.cloud-region-id", "relationship-value": "AAIAIC25" }, { "relationship-key": "tenant.tenant-id", "relationship-value": "USUCP0PCOIL0110UJZZ01::uCPE-VMS" }, { "relationship-key": "vserver.vserver-id", "relationship-value": "3b2558f4-39d8-40e7-bfc7-30660fb52c45" } ], "related-to-property": [ { "property-key": "vserver.vserver-name", "property-value": "USUCP0PCOIL0110UJZZ01-vsrx" }] } ]} }
Request URI: POST http(s)://[hostname][:port]/api/nslcm/v1/ns/{nsInstanceId }/heal Request JSON: { " healVnfData": { “vnfInstanceId”: ”1”, “cause”: ”vm is down”, “additionalParams”: { “action”: ”restartvm”, “actionvminfo”: { “vmid”: ”33”, “vmname”: ”xgw - smp11” } } } }
Response JSON with response code 202: { “jobId”:”1” } Get Operation Status to read the status GET http(s)://[hostname][:port]/api/nslcm/v1/jobs/{jobId}&responseId={responseId} Response JSON with response code 200: { "jobId": "1234566", "responseDescriptor": { "progress": "40", "status": "proccessing", "statusDescription": "OMC VMs are decommissioned in VIM", "errorCode": null, "responseId": "42", "responseHistoryList": [{ "progress": "40", "status": "proccessing", "statusDescription": "OMC VMs are decommissioned in VIM", "errorCode": null, "responseId": "1" }, { "progress": "41", "status": "proccessing", "statusDescription": "OMC VMs are decommissioned in VIM", "errorCode": null, "responseId": "2" } ] } }
vCPE Use Case
tca_policy: "{ "domain": "measurementsForVfScaling", "metricsPerEventName": [{ "eventName": "Measurement_vGMUX", "controlLoopSchemaType": "VNF", "policyScope": "DCAE", "policyName": "DCAE.Config_tca-hi-lo", "policyVersion": "v0.0.1", "thresholds": [{ "closedLoopControlName": "ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e", "version": "1.0.2", "fieldPath": "$.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value", "thresholdValue": 0, "direction": "EQUAL", "severity": "MAJOR", "closedLoopEventStatus": "ABATED" }, { "closedLoopControlName": "ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e", "version": "1.0.2", "fieldPath": "$.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value", "thresholdValue": 0, "direction": "GREATER", "severity": "CRITICAL", "closedLoopEventStatus": "ONSET" }] }] }"
controlLoop: version: 2.0.0 controlLoopName: ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e trigger_policy: unique-policy-id-1-restart timeout: 3600 abatement: true policies: - id: unique-policy-id-1-restart name: Restart the VM description: actor: APPC recipe: Restart target: type: VM retry: 3 timeout: 1200 success: final_success failure: final_failure failure_timeout: final_failure_timeout failure_retries: final_failure_retries failure_exception: final_failure_exception failure_guard: final_failure_guard
{ "closedLoopControlName": "ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e", "version": "1.0.2", "requestID": "0abc0000-b032-4e4b-bd30-88260f444888", "closedLoopAlarmStart": 1478189220547, "closedLoopEventClient": "DCAE_INSTANCE_ID.dcae-tca", "target_type": "VNF", "target": "generic-vnf.vnf-name", "AAI": { "generic-vnf.vnf-name" : "vCPE_Infrastructure_vGMUX_demo_app" }, "from": "DCAE", "policyScope": "DCAE", "policyName": "DCAE.Config_tca-hi-lo", "policyVersion": "v0.0.1", "closedLoopEventStatus": "ONSET" }
{ "body": { "input": { "common-header": { "timestamp": "2017-08-25T21:06:23.037Z", "api-ver": "2.00", "originator-id": "a20e2073-30b1-4357-893b-f5ed57b66ef0", "request-id": "a20e2073-30b1-4357-893b-f5ed57b66ef0", "sub-request-id": "1", "flags": {} }, "action": "Restart", "action-identifiers": { "vnf-id": "vCPE_Infrastructure_vGMUX_demo_app" } } }, "version": "2.0", "rpc-name": "restart", "correlation-id": "a20e2073-30b1-4357-893b-f5ed57b66ef0-1", "type": "request" }
{ "body": { "output": { "common-header": { "timestamp": "2017-08-25T21:06:23.037Z", "api-ver": "2.00", "originator-id": "a20e2073-30b1-4357-893b-f5ed57b66ef0", "request-id": "a20e2073-30b1-4357-893b-f5ed57b66ef0", "sub-request-id": "1", "flags": {} }, "status": { "code": 400, "message": "Restart Successful" } } }, "version": "2.00", "rpc-name": "restart", "correlation-id": "a20e2073-30b1-4357-893b-f5ed57b66ef0-1", "type": "response" }
{ "closedLoopControlName": "ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e", "version": "1.0.2", "requestID": "0abc0000-b032-4e4b-bd30-88260f444888", "closedLoopAlarmStart": 1478189220547, "closedLoopAlarmEnd": 1478589220547, "closedLoopEventClient": "DCAE_INSTANCE_ID.dcae-tca", "target_type": "VNF", "target": "generic-vnf.vnf-name", "AAI": { "generic-vnf.vnf-name" : "vCPE_Infrastructure_vGMUX_demo_app" }, "from": "DCAE", "policyScope": "DCAE", "policyName": "DCAE.Config_tca-hi-lo", "policyVersion": "v0.0.1", "closedLoopEventStatus": "ABATED" }