...
Flow 1: Design and Distribute First Control Loop
Step Range | Description | Status | Notes |
---|
1-3 | Upload artifact and distribute | Tested |
|
4 | Process distribution in CLAMP | Tested |
|
5-6 | Process distribution in DCAE | Tested |
|
|
|
|
|
Code Block |
---|
title | UML Code for Flow 1 |
---|
collapse | true |
---|
|
@startuml
title Creating the service design in SDC and distributing design artifacts
actor SDC_Tester
participant SDC
participant CLAMP
box "DCAE controller"
participant "Service Change Handler" as SCH
database Inventory
end box
autonumber
note over SDC_Tester: Closed loop 1
SDC_Tester -> SDC : Design vCPE service composed\nof one VNF resource
SDC_Tester -> SDC : Upload DCAE TCA blueprint\nas artifact
SDC_Tester -> SDC : Test, certify, distribute the service design
SDC -> CLAMP : Blueprint distribution
SDC -> SCH : Blueprint distribution
SCH -> Inventory : Save blueprint
@enduml |
Flow 2: Configure and Deploy First Control Loop
Step Range | Description | Status | Notes |
---|
1-3 | CLAMP Creates Policies | Tested |
|
4-11 | CLAMP Starts deployment in DCAE |
|
|
12-17 | CLAMP starts getting deployment status |
|
|
18-22 | DCAE gets and stores TCA policy |
|
|
23-30 | DCAE deploys TCA with config policy |
|
|
31-35 | CLAMP gets final status |
|
|
|
|
|
|
Code Block |
---|
title | UML Code for Flow 2 |
---|
collapse | true |
---|
|
@startuml
title Configure and Deploy First Control Loop
actor CLAMP_Tester
participant CLAMP
participant Policy
box "DCAE controller"
database Inventory
participant "Deployment-handler" as DH
control "Cloudify+plugin" as Cloudify
participant "Policy-handler" as PH
database "Consul-kv" as consul
participant "Config-binding service" as CBS
control k8s
end box
participant TCA_Instance
autonumber
note over CLAMP_Tester: Closed loop 1
hnote right CLAMP_Tester: decided to install TCA
CLAMP_Tester -> CLAMP : Configure thresholds\n of control loop
CLAMP_Tester -> CLAMP : Configure actions\n of control loop
activate CLAMP
CLAMP -> Policy : Create Configuration\n and Operational Policies
CLAMP -> Inventory : Get DCAE Service Id\n based on Distributed Parameters
group install TCA_Instance
CLAMP -> DH : install instance of TCA with policy_id as input
activate DH
DH -> Inventory : get blueprint for TCA
Inventory --> DH : blueprint for TCA
DH -> Cloudify : install TCA_Instance
activate Cloudify
Cloudify --> DH : started: execution_id
DH --> CLAMP : started installation: url to get status
deactivate DH
CLAMP -> CLAMP : sleep
group CLAMP polling for installation status
CLAMP -> CLAMP : wake up
activate CLAMP #DarkSalmon
CLAMP -> DH : get status of installation
activate DH #DarkSalmon
DH -> Cloudify : get execution status
activate Cloudify #DarkSalmon
Cloudify --> DH : status: started
deactivate Cloudify
DH --> CLAMP : installation status: **processing**
deactivate DH
CLAMP -> CLAMP : sleep
deactivate CLAMP
end group
Cloudify -> PH : get policy\n by policy_id
PH -> Policy : /getConfig policy for policyName = policy_id
Policy --> PH : return found policy
PH --> Cloudify : policy by policy_id
Cloudify -> consul: store config with policies\n for TCA_Instance
Cloudify -> k8s: create instance of TCA
activate k8s
create TCA_Instance
k8s -> TCA_Instance: deploys
activate TCA_Instance
k8s --> Cloudify: created instance of TCA
deactivate k8s
deactivate Cloudify
TCA_Instance -> CBS: get Config\n and policies\n (**new API**)
CBS -> consul: get Config\n and policies
consul --> CBS: Config\n and policies
CBS --> TCA_Instance: Config and policies
TCA_Instance -->]: run
group CLAMP polling for installation status
CLAMP -> CLAMP : wake up
activate CLAMP #DarkSalmon
CLAMP -> DH : get status of installation
activate DH #DarkSalmon
DH -> Cloudify : get execution status
activate Cloudify #DarkSalmon
Cloudify --> DH : status: terminated
deactivate Cloudify
DH --> CLAMP : installation status: **succeeded**
deactivate DH
deactivate CLAMP
end group
hnote over CLAMP: installed TCA
deactivate CLAMP
end group
@enduml |
Flow 3: Run Control
...
Loop After Deployment
Code Block |
---|
title | UML Code for Flow 3 |
---|
collapse | true |
---|
|
@startuml
title This is the flow that will be tested in Beijing
participant VNF
participant VES_Collector
participant TCA_Instance1
participant Policy
participant AppC
autonumber
VNF -> VES_Collector : VES Message\nmeasurementsForVfScaling
VES_Collector -> TCA_Instance1 : VES Message\nmeasurementsForVfScaling
TCA_Instance1 -> Policy : Signature ONSET Message
Policy -> AppC : Action
AppC -> VNF : Action
note left
VNF action taken which
corrects the condition
end note
VNF -> VES_Collector : VES Message\nmeasurementsForVfScaling
note left
Time passes until next
message
end note
VES_Collector -> TCA_Instance1 : VES Message\nmeasurementsForVfScaling
TCA_Instance1 -> Policy : Signature ABATE Message
@enduml |
Step Range | Description | Status | Notes |
---|
|
|
|
|
|
|
|
|
|
|
|
|
Flow 4: Update Control Loop by Reconfiguring TCA
...
After the control loop is reconfigured, we test that the changes have taken effect. This is done by running the control loop again. For example, if the threshold value was increased, we would initiate an event with the old threshold value, and see that the signature is no longer produced.
Step Range | Description | Status | Notes |
---|
|
|
|
|
|
|
|
|
Flow 5: Stop and Restart Control Loop
...
Code Block |
---|
title | UML Code for Flow 5 |
---|
collapse | true |
---|
|
@startuml
participant CLAMP
actor CLAMP_Tester
participant Policy
autonumber
CLAMP_Tester -> CLAMP : Stop operation\nof control loop
CLAMP -> Policy : Disable Operational Policy
participant VNF
participant VES_Collector
participant TCA_Instance1
participant AppC
autonumber
group Runtime Test
VNF -> VES_Collector : VES Message\nmeasurementsForVfScaling
VES_Collector -> TCA_Instance1 : VES Message\nmeasurementsForVfScaling
TCA_Instance1 -> Policy : Signature ONSET Message
end
CLAMP_Tester -> CLAMP : Restart operation\nof control loop
CLAMP -> Policy : Enable Operational Policy
participant VNF
participant VES_Collector
participant TCA_Instance1
participant AppC
autonumber
group Runtime Test
VNF -> VES_Collector : VES Message\nmeasurementsForVfScaling
VES_Collector -> TCA_Instance1 : VES Message\nmeasurementsForVfScaling
TCA_Instance1 -> Policy : Signature ONSET Message
Policy -> AppC : Action
AppC -> VNF : Action
VNF -> VES_Collector : VES Message\nmeasurementsForVfScaling
VES_Collector -> TCA_Instance1 : VES Message\nmeasurementsForVfScaling
TCA_Instance1 -> Policy : Signature ABATE Message
end
@enduml |
Flow 6: Undeploy Control Loop
Dashboard