blob: 4620696739d6862b4163c491a2932ae146537022 [file] [log] [blame]
andreasgeisslerf3612302019-04-24 12:42:08 +02001.. This work is licensed under a Creative Commons Attribution 4.0
2.. International License. http://creativecommons.org/licenses/by/4.0
3.. Copyright 2019 ONAP Contributors. All rights reserved.
4
5Control Loop Design
6===================
7**Goal:** Create and distribute closed-loop models for automating:
8 * recovery of faults reported by traps or alarms
9 * capacity management as performance thresholds are crossed
10
11**Tool:** SDC/DCAE-DS/CLAMP
12
13**SDC user role:** Designer
14
15Closed loops use feedback to control and optimize their behavior.
16A closed loop can proactively respond to network and service conditions
17without human intervention.
18
19There are different phases to the Closed Loop (CL) design:
20
21 #. Design a closed loop template and associate it to a Service,
22 the template represents the theoretical flow of the CL. (DCAE-DS/SDC)
23
24 #. generate a deployment artifact that can be ingested by the DCAE,
25 today it is a "cloudify" blueprint.
26
27 #. Distribute the control loop to CLAMP and DCAE, the csar is distributed
28 to CLAMP, the blueprint is distributed to both CLAMP and DCAE. (SDC)
29 #. Submit the closed loop, meaning provision Policy/DCAE with
30 closed loop data. (CLAMP)
31 #. Deploy the closed loop, it initiates the deployment of the micro
32 service on DCAE side (CLAMP)
33
34*Release 1 (Amsterdam)* includes control loop template designer in Clamp UI.
35
36*Release 2 (Bejing)* does not include the control loop template designer
37in Clamp UI, this is implemented in DCAE-DS.
38
39**Steps**
40
41 * `Design a Model`_
42 * `Configure Collector`_
43 * `Configure Alarm Detector`_
44 * `Configure Data Analytics Function`_
45 * `Configure Policy`_
46 * `Distribute the Model`_
47 * `Open Loop Design`_
48
49Design a Model
50--------------
51
52.. note::
53 When required, contact the DCAE Group (see `Mailing Lists <https://wiki.onap.org/display/DW/Mailing+Lists>`_) to
54 confirm that a blueprint for the Service has been generated and
55 is available on DCAE.
56
57**Prerequisites:** Create and test a VF
Aric Gardner6ceaa842020-04-10 14:00:17 -040058
59#TODO ADD A LINK TO VF Creation and Testing user-guides-service-design?
andreasgeisslerf3612302019-04-24 12:42:08 +020060
61 #. Create and name a new model
62 #. Associate a Service with the model
63 #. Based on the service, provide values for its attributes
64 #. Select the Resource-VF and Resource-VFC to associate with the model
65 #. Select one or more locations in the cloud where the
66 closed loop will be deployed
67 #. Here is a view of a hypothetical visual design tool
68 showing loop modeling components:
69
70 |image0|
71
72 #. Use the tool to select and connect components,
73 thus defining the structure of the model
74 #. Configure each of the components of the model
75
76 #. `Configure Collector`_
77 #. `Configure Alarm Detector`_
78 #. `Configure Data Analytics Function`_
79 #. `Configure Policy`_
80
81Configure Collector
82-------------------
83
84**Prerequisites:** `Design a Model`_.
85
86Using the modeling tool, assign a message topic to which this
87component will subscribe.
88
89Configure Alarm Detector
90------------------------
91
92**Prerequisites:** `Design a Model`_.
93
94Using the modeling tool, configure the fields described in this table:
95
96+------------+----------------------------+-------------------------------+
97| Field | Values | Description |
98+============+============================+===============================+
99| Topic | * DCAE-CL-EVENT | DMAAP message topic to |
100| Publishes | * OPEN-DCAE-HIGHLANDPARK- | which the component |
101| | EVENT-OUTPUT | subscribes. |
102+------------+----------------------------+-------------------------------+
103| Alarm | (Multiple values) | Populated from vendor-provided|
104| Condition | | list of alarm names. Stored in|
105| | | SDC and retrieved by the |
106| | | modeling tool. Alarms differ |
107| | | per VNF. |
108+------------+----------------------------+-------------------------------+
109| Event | (Multiple values) | Categories of alarms for a VNF|
110| Source Type| | .Differs per VNF. |
111+------------+----------------------------+-------------------------------+
112| Event | * NORMAL | Severity level of the alarm |
113| Severity | * not-NORMAL | that caused the rule to match.|
114| | * WARNING | All conditions are exact |
115| | * MINOR | matches, except for not-Normal|
116| | * MAYOR | , which matches anything |
117| | * CRITICAL | except NORMAL. |
118+------------+----------------------------+-------------------------------+
119
120
121Configure Data Analytics Function
122---------------------------------
123
124**Prerequisites:** `Design a Model`_.
125
126 #. In the model, click the *StringMatch*.
127 #. Click the *Properties* icon.
128 #. Configure fields as required (see table).
129 #. Click *Close*.
130
131+------------+----------------------------+-------------------------------+
132| Field | Values | Description |
133+============+============================+===============================+
134| Topic | * DCAE-CL-EVENT | DMAAP message topic to |
135| Publishes | | which the component subscribes|
136+------------+----------------------------+-------------------------------+
137| AAI Fields | (Multiple values) | Additional VM-related fields |
138| Matching | | that downstream elements such |
139+------------+ | as Policy and APPC can use to |
140| AAI Field | | take action on the signature. |
141| Send | | |
142| (Select | | |
143| Multiple) | | |
144+------------+----------------------------+-------------------------------+
145| Resource- | Integer | Group of string matching rules|
146| Group | | that are to be treated |
147| | | together. For example, a |
148| | | resource group could contain |
149| | | two different traps that must |
150| | | be received to produce a |
151| | | signature, as well as the |
152| | | abatement match. |
153+------------+----------------------------+-------------------------------+
154| Alarm | (Multiple values) | Populated from vendor-provided|
155| Condition | | list of alarm names. Stored in|
156| | | SDC and retrieved by the |
157| | | modeling tool. Alarms differ |
158| | | per VNF. |
159+------------+----------------------------+-------------------------------+
160| Event | * NORMAL | Severity level of the alarm |
161| Severity | * not-NORMAL | that caused the rule to match.|
162| | * WARNING | All conditions are exact |
163| | * MINOR | matches, except for not-Normal|
164| | * MAYOR | , which matches anything |
165| | * CRITICAL | except NORMAL. |
166+------------+----------------------------+-------------------------------+
167| Event | (Multiple values) | Categories of alarms for a |
168| Source Type| | VNF. Differs per VNF. |
169+------------+----------------------------+-------------------------------+
170| Time | Integer | Interval during which multiple|
171| Window | | traps must be received in |
172| | | order to produce a single |
173| | | signature. This value has no |
174| | | meaning if only one onset rule|
175| | | exists. A value of 0 means an |
176| | | unlimited time window. |
177+------------+----------------------------+-------------------------------+
178| Age | Integer | Traps older than this limit |
179| Limit | | are deemed too stale to be |
180| | | meaningful and are not |
181| | | processed. |
182+------------+----------------------------+-------------------------------+
183| Create CL | * Initial | *Initial:* start a closed |
184| Event ID | * Close | loop with a new request ID |
185| | | |
186| | | *Close:* end an existing |
187| | | closed loop (Close) |
188+------------+----------------------------+-------------------------------+
189| Create CL | * OnSet | *OnSet:* start a closed loop |
190| Event ID | * Abatement | when a condition starts. |
191| Output | | Triggered with a new |
192| Event Name | | request_id and signature flag |
193| | | of *Initial* |
194| | | |
195| | | *Abatement:* end a closed loop|
196| | | when a condition is corrected.|
197| | | Triggered with signature flag |
198| | | of *Close*. |
199+------------+----------------------------+-------------------------------+
200
201
202Configure Policy
203----------------
204
205Use this task to configure the operational policy of the closed loop.
206
207**Prerequisites:** `Design a Model`_.
208
209Model configuration involves setting the values in this table,
210for each of the Rebuild and Migrate recipies in the model.
211
212+------------+----------------------------+-------------------------------+
213| Field | Values | Description |
214+============+============================+===============================+
215| Overall | Integer | Maximum overall time that can |
216| Time Limit | | be spent on attempting all |
217| | | actions. |
218+------------+----------------------------+-------------------------------+
219| Receipe | * Restart | The automated action to be |
220| | * Rebuild | triggered on the VM by the |
221| | * Migrate | closed loop. |
222+------------+----------------------------+-------------------------------+
223| Max Retries| Positive Integer | Number of times this action |
224| | | should be attempted before |
225| | | failing on MaxRetriesExceeded.|
226+------------+----------------------------+-------------------------------+
227| Retry Time | Positive Integer | Maximum amount of time to take|
228| Limit | | performing retries before |
229| | | failing on TimeLimitExceeded. |
230+------------+----------------------------+-------------------------------+
231| Parent | (Selection | Recipe that precedes this one |
232| Policy | | in the chain of operations. |
233| | | If this is the first action in|
234| | | the chain, this field is not |
235| | | set. |
236+------------+----------------------------+-------------------------------+
237| Parent | * Failure: | Types of results from the |
238| Policy | MaxRetriesExceeded | previous action on the chain |
239| Conditions | * Failure: | that would cause a transition |
240| | TimeLimitExceeded | to this action. |
241| | * Failure: Exception | |
242| | * Failure: Other | |
243| | * Success | |
244+------------+----------------------------+-------------------------------+
245
246
247Distribute the Model
248--------------------
249
250**Prerequisites:** `Design a Model`_.
251
252In this step, the user distributes the models to the DCAE and
253Policy subsystems of ONAP.
254
255After a model is uploaded to a VNF, the status icon of the VNF changes
256to from "Design" to "Activated" in the ONAP Portal GUI.
257
258Open Loop Design
259----------------
260
261Create and distribute open control loops for managing VF faults and
262performance after instantiation.
263
264With open loop control systems, the action(s) taken by the Policy do
265not affect the output of the system.
266
267For information about creating policy using the Policy Designer,
Aric Gardner6ceaa842020-04-10 14:00:17 -0400268
269#TODO ADD A LINK TO VF Creation and Testing user-guides-service-design?
andreasgeisslerf3612302019-04-24 12:42:08 +0200270
271
272.. |image0| image:: media/DesignModel.png
273