Table of Contents




The following 3 APIs will be introduced in Dublin to support the OOF CMSO Architecture:




The interface to the Change Management (CM) Schedule Optimizer Engine is not a REST API but rather a internal definition of the input/output to the MiniZinc based schedule optimizer engine.targeted for Dublin.


CMSO API Swagger Pages

Request / Response Examples

Updated CMSO Create Schedule Request

{
	"domain": "ChangeManagement",
	"scheduleName": "3e828de1-c6b9-4782-b028-e2a98b0cce72",
	"userId": "onap-user",
	"scheduleId": "3e828de1-c6b9-4782-b028-e2a98b0cce72",
	"commonData": [{
			"name": "requestType",
			"value": "VNF Config Update"
		}, {
			"name": "policies",
			"value": ["vertical", "localMaintenanceWindow"]
		}
	],
	"schedulingData": {
		"additionalDurationInSeconds": 10,
		"changeWindows": [{
				"endTime": "2019-02-01T00:00:00Z",
				"startTime": "2019-03-01T00:00:00Z"
			}, {
				"endTime": "2019-04-15T00:00:00Z",
				"startTime": "2019-05-15T00:00:00Z"
			}
		],
		"normalDurationInSeconds": 100,
		"concurrencyLimit": 10,
		"elements":
		[{
				"elementId": "nodeid1",
				"elementData": [{
						"name": "ticketManagementId",
						"value": "33333-333a-dsfa-dsfadsfadsfdsfdasfdaf"
					}, {
						"name": "id",
						"value": "33333333adsfadsfadsfadsfdsfdasfdaf"
					}
				],
				"request": {
					"vnfName": "rdm5adbux8991v",
					"vnfInstanceId": "7fe2a239-52c8-40ec-866a-53815c802f09",
					"modelInfo": {
						"modelType": "vnf",
						"modelInvariantId": "a8880c9f-9454-4a1e-b856-b3c0569625de",
						"modelVersionId": "0bc86968-fe07-4453-a729-683fafef2607",
						"modelName": "rdm5adbux8991v",
						"modelVersion": "1.0",
						"modelCustomizationId": "4e3bbaba-5348-4d4c-9d27-11ff39958a84"
					},
					"cloudConfiguration": {
						"lcpCloudRegionId": "rdm5a",
						"tenantId": "71b9b87f2ad947fa9a19eac463558040"
					},
					"requestInfo": {
						"source": "VID",
						"suppressRollback": false,
						"requestorId": "mm018u"
					},
					"relatedInstanceList": [{
							"relatedInstance": {
								"instanceId": "d91b2d81-3e96-43b8-b111-527d3a934a6a",
								"modelInfo": {
									"modelType": "service",
									"modelInvariantId": "dd118927-8360-4a9a-959c-403386a12226",
									"modelVersionId": "f98b191f-2bb6-4881-a514-ac9132f26284",
									"modelName": "vDBE_Svc_E2E_DBE_vDBE_U",
									"modelVersion": "1.0"
								}
							}
						}
					],
					"requestParameters": {
						"payload": "{\"request-parameters\":{\"vnf-host-ip-address\":\"135.50.170.7\",\"vnf-name\":\"rdm5adbux8991v\"},\"configuration-parameters\":{\"node0_name\":\"rdm5adbux8999vm001\"}}"
					}
				}
			}
		]
	}
}



This example represents CMSO Create Schedule for Dublin release. Significant changes are:


CMSO Optimization Engine Interface Input

numElements = 5;
maxTime = 5;
noConflict = [|
  true  , true  , true  , true  , true
| true  , true  , true  , true  , true
| false , true  , false , true  , false
| false , false , false , false , false
| true  , false , true  , false , true
|];
slotCapacity = [1, 2, 1, 3, 4];




This request will represent the information gathered by the Scheduler Optimizer to be passed to the Mini Zinc schedule optimizer engine.

CMSO Optimization Engine Interface Output

results:
  result:
    num_scheduled: 0
    total_completion_time: 0
    element_slot: |
      1,0
      2,0
      3,0
      4,0
      5,0
  result:
    num_scheduled: 1
    total_completion_time: 2
    element_slot: |
      1,0
      2,0
      3,2
      4,0
      5,0
  result:
    num_scheduled: 4
    total_completion_time: 8
    element_slot: |
      1,2
      2,1
      3,2
      4,0
      5,3
  elapsed_millis: 3400

This request will represent the information returned to the Scheduler Optimizer from the Mini Zinc schedule optimizer engine.