...
Code Block | ||||
---|---|---|---|---|
| ||||
@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 |
Flow
...
4:
...
Update
...
Control Loop by Reconfiguring TCA
Reconfigure
Code Block | ||||
---|---|---|---|---|
| ||||
@startuml title This is the policy-update flow that will be tested in Beijing actor CLAMP_Tester participant CLAMP participant Policy box "DCAE controller" participant "Policy-handler" as PH participant "Deployment-handler" as DH control Cloudify database "Consul-kv" as consul participant "Config-binding service" as CBS end box participant TCA_Instance autonumber CLAMP_Tester -> CLAMP : Update control loop settings CLAMP -> Policy: update policy group policy update Policy -> PH : updated policy\n with policyName = policy_id activate PH PH -> Policy : /getConfig latest\n policy for\n policyName = policy_id Policy --> PH : return found policy PH -> DH : policy updated deactivate PH activate DH DH -> Cloudify : get components Cloudify --> DH : components and\n run-time properties DH -> DH : find TCA_Instance\n by policy_id DH -> Cloudify : policy updated\n on TCA_Instance deactivate DH activate Cloudify Cloudify -> consul: store updated policies\n for TCA_Instance Cloudify -> TCA_Instance: notify about updated policies through script deactivate Cloudify activate TCA_Instance hnote over TCA_Instance: policy changed TCA_Instance -> TCA_Instance: act on\n changed policy TCA_Instance -->]: continue deactivate TCA_Instance end ||| ==alternative to acting on the push-notification through script from DCAE-Controller== ||| group polling for policy changes TCA_Instance -> CBS: get Config\n and policies activate TCA_Instance CBS -> consul: get Config\n and policies consul --> CBS: Config\n and policies CBS --> TCA_Instance: Config and policies hnote over TCA_Instance: policy might have changed TCA_Instance -->]: continue deactivate TCA_Instance end @enduml |
...
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.
Flow
...
5: Stop and Restart Control Loop
Code Block | ||||
---|---|---|---|---|
| ||||
@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 |
...