Day 0: On-Boarding DCAE Micro Services
Image RemovedImage Added
Code Block |
---|
title | DCAE Micro Service On-Boarding UML |
---|
collapse | true |
---|
|
@startuml
title This is the flow for onboarding DCAE components. All components get onboarded and made available to DCAE template designer.
box "DCAE Development"
actor DCAEComponent_Developer
entity DCAE_Comp_JSON
participant DCAE_TOSCA_Tool
entity DCAE_TOSCACLI
end box
box "SDC GUI" #f4c69f
participant TOSCA_Tool as DCAE_TOSCA_Tool
entity "MODELS/BLUEPRINTS" as MODELS
participant SDC
database SDC_Catalog
end box
autonumber
loop for all DCAE Components
DCAEComponent_Developer -> DCAE_Comp_JSON : Offline createsCreates JSON schema\nspecifying the metadata\nrequired by this component.\nInputs\nOutputs\nConfiguration
Component_Developer <-> DCAE_CLI : Verifies the spec and deployment (if CBS/Consul are setup)
DCAE_Comp_JSON -> DCAE_TOSCA_Tool : UsesUse TOSCA tool to\ncreate artifact.
DCAE_TOSCA_Tool -> DCAE_TOSCAMODELS : TOSCA Artifact created.
DCAE_TOSCAMODELS -> SDC : Imports into SDC\nto onboard their\nDCAE component
SDC -> SDC_Catalog : Saved into catalog
end
@enduml
|
...
For a complete description, examples and details of on-boarding of DCAE Micro Services, please refer to MicroServices Onboarding in ONAP.
Day 0: DCAE Design Studio Creation of Service Assurance Flows
...
Day 1: SDC/CLAMP Create a Control Loop in a Service
Image RemovedImage Added
Code Block |
---|
title | UML for CLAMP Service Assurance Configuration |
---|
collapse | true |
---|
|
@startuml
title This is the flow during Service Design for designing, Controlconfiguring Loopand Blueprintsdeploying viaControl CLAMP.Loops
actor Service_Designer
participant SDC
participant CLAMP
databaseactor SDC_CatalogOperator
entityparticipant ServiceDCAE_1SCH
#ffb266participant entity VNF_Artifact #b266ffDCAE_Deployment
participant CLAMPDCAE_Inventory
participant Policy
databaseparticipant DCAE_Policy_RepoHandler
autonumber
Service_Designer -> SDC : Log into SDC Create/Test/Certify service, \nwith control loop DCAE flow
SDC -> CLAMP : Blueprint distribution
SDC : Create service
loop for all VNFs
note right
For simplicity, assume the designer
will create a control loop per VNF.
end note
SDC_Catalog -> VNF_Artifact : Find artifact
VNF_Artifact -> Service_1 : Add VNF to service.
SDC -> CLAMP : Go to CLAMP\nto create a Control Loop
CLAMP -> SDC_Catalog : Find DCAE Template
create collections DCAE_Template_1 #red-> DCAE_SCH : Blueprint distribution
DCAE_SCH -> DCAE_Inventory : Save blueprint
Operator -> CLAMP : Configuration of control loop
CLAMP -> Policy : Create Configuration and Operational Policies
Policy -> DCAE_Policy_Handler : Configuration Policy
CLAMP -> DCAE_Inventory : Get DCAE Service Id based on Distributed Parameters
note left
Steps 8 and 9 are involved when there is no
pre-deployment of control loop in DCAE
end note
CLAMP -> DCAE_Template_1Deployment : Trigger SelectDeployment
DCAE@enduml
Template\nand
create a working model\nof the Control Loop.
create collections Model_1 #00FFFF
DCAE_Template_1 -> Model_1 : Now designing a model\nbased on the template.
loop for all DCAE Components in Template (now Model)
Model_1 -> Model_1 : Configure the\nDCAE Component as desired.
Model_1 -> Policy : Create DCAE Component\nConfig Policy based on default TOSCA
create entity Config_Policy #green
Policy -> Config_Policy : Creates XACML
Config_Policy -> Policy_Repo : Stores runtime\config policy.
Policy -> Model_1 : Returns Policy ID
end loop
Model_1 -> Policy : Create Operational Policy
create entity Op_Policy #green
Policy -> Op_Policy : Using a Drools\ncontrol loop template,\na policy is created for\nthis specific control loop.
Op_Policy -> Policy_Repo : Stores runtime operational policy.
Policy -> Model_1 : Returns Policy ID
Model_1 -> SDC_Catalog : Generate "BLUEPRINT" and save to catalog
end loop
SDC -> SDC_Catalog : Save service to database
@enduml
|
...
TODO: Update UML with correct terminology. Update UML to add SDC Service Distribution
example of policies, blueprints, api calls. etc.
Day N: Control Loop Deployment
Control Loop deployment happens when an instance of a Service is created.
TODO flow diagram
Day N: Runtime Flow of a Control Loop
The following is a control loop message flow, across DCAE, Policy and App-C. The sections afterward will describe the process for designing, configuring and instantiating this flow.
Image Added
Code Block |
---|
title | (1) Output of VES Collector for new PM message |
---|
collapse | true |
---|
|
{
"event": {
"commonEventHeader": {
"startEpochMicrosec": 1500584201765465,
"sourceId": "Dummy VM UUID - No Metadata available",
"eventId": "11",
"reportingEntityId": "No UUID available",
"internalHeaderFields": {
"collectorTimeStamp": "Thu, 07 20 2017 08:56:52 GMT"
},
"eventType": "HTTP request rate",
"priority": "Normal",
"version": 1.2,
"reportingEntityName": "fwll",
"sequence": 11,
"domain": "measurementsForVfScaling",
"lastEpochMicrosec": 1500584212017216,
"eventName": "vnfScalingMeasurement",
"sourceName": "Dummy VM name - No Metadata available"
},
"measurementsForVfScalingFields": {
"cpuUsageArray": [{
"percentUsage": 0,
"cpuIdentifier": "cpu1",
"cpuIdle": 100,
"cpuUsageSystem": 0,
"cpuUsageUser": 0
}],
"measurementInterval": 10,
"requestRate": 7832,
"vNicUsageArray": [{
"transmittedOctetsDelta": 5680,
"receivedTotalPacketsDelta": 14,
"vNicIdentifier": "eth0",
"valuesAreSuspect": "true",
"transmittedTotalPacketsDelta": 31,
"receivedOctetsDelta": 1332
}],
"measurementsForVfScalingVersion": 2.1
}
}
} |
Code Block |
---|
title | (2) Output of TCA Microservice for Onset Signature |
---|
collapse | true |
---|
|
{
"closedLoopControlName": "ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e",
"version": "1.0.2",
"requestID": "a20e2073-30b1-4357-893b-f5ed57b66ef0",
"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"
} |
Code Block |
---|
title | (3) Policy to App-C Request |
---|
collapse | true |
---|
|
{
"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"
} |
Code Block |
---|
title | (4) Response from App-C to Policy |
---|
collapse | true |
---|
|
{
"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"
} |
Code Block |
---|
title | (6) Output of TCA Microservice for Abate Signature |
---|
collapse | true |
---|
|
{
"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"
} |
Day N: Runtime Monitoring of a Control Loop
...