.. This work is licensed under a Creative Commons Attribution 4.0 .. International License. http://creativecommons.org/licenses/by/4.0 .. Copyright 2019 ONAP Contributors. All rights reserved. Control Loop Design =================== **Goal:** Create and distribute closed-loop models for automating: * recovery of faults reported by traps or alarms * capacity management as performance thresholds are crossed **Tool:** SDC/DCAE-DS/CLAMP **SDC user role:** Designer Closed loops use feedback to control and optimize their behavior. A closed loop can proactively respond to network and service conditions without human intervention. There are different phases to the Closed Loop (CL) design: #. Design a closed loop template and associate it to a Service, the template represents the theoretical flow of the CL. (DCAE-DS/SDC) #. generate a deployment artifact that can be ingested by the DCAE, today it is a "cloudify" blueprint. #. Distribute the control loop to CLAMP and DCAE, the csar is distributed to CLAMP, the blueprint is distributed to both CLAMP and DCAE. (SDC) #. Submit the closed loop, meaning provision Policy/DCAE with closed loop data. (CLAMP) #. Deploy the closed loop, it initiates the deployment of the micro service on DCAE side (CLAMP) *Release 1 (Amsterdam)* includes control loop template designer in Clamp UI. *Release 2 (Bejing)* does not include the control loop template designer in Clamp UI, this is implemented in DCAE-DS. **Steps** * `Design a Model`_ * `Configure Collector`_ * `Configure Alarm Detector`_ * `Configure Data Analytics Function`_ * `Configure Policy`_ * `Distribute the Model`_ * `Open Loop Design`_ Design a Model -------------- .. note:: When required, contact the DCAE Group (see `Mailing Lists `_) to confirm that a blueprint for the Service has been generated and is available on DCAE. **Prerequisites:** Create and test a VF (see :ref:`VF Creation and Testing `). #. Create and name a new model #. Associate a Service with the model #. Based on the service, provide values for its attributes #. Select the Resource-VF and Resource-VFC to associate with the model #. Select one or more locations in the cloud where the closed loop will be deployed #. Here is a view of a hypothetical visual design tool showing loop modeling components: |image0| #. Use the tool to select and connect components, thus defining the structure of the model #. Configure each of the components of the model #. `Configure Collector`_ #. `Configure Alarm Detector`_ #. `Configure Data Analytics Function`_ #. `Configure Policy`_ Configure Collector ------------------- **Prerequisites:** `Design a Model`_. Using the modeling tool, assign a message topic to which this component will subscribe. Configure Alarm Detector ------------------------ **Prerequisites:** `Design a Model`_. Using the modeling tool, configure the fields described in this table: +------------+----------------------------+-------------------------------+ | Field | Values | Description | +============+============================+===============================+ | Topic | * DCAE-CL-EVENT | DMAAP message topic to | | Publishes | * OPEN-DCAE-HIGHLANDPARK- | which the component | | | EVENT-OUTPUT | subscribes. | +------------+----------------------------+-------------------------------+ | Alarm | (Multiple values) | Populated from vendor-provided| | Condition | | list of alarm names. Stored in| | | | SDC and retrieved by the | | | | modeling tool. Alarms differ | | | | per VNF. | +------------+----------------------------+-------------------------------+ | Event | (Multiple values) | Categories of alarms for a VNF| | Source Type| | .Differs per VNF. | +------------+----------------------------+-------------------------------+ | Event | * NORMAL | Severity level of the alarm | | Severity | * not-NORMAL | that caused the rule to match.| | | * WARNING | All conditions are exact | | | * MINOR | matches, except for not-Normal| | | * MAYOR | , which matches anything | | | * CRITICAL | except NORMAL. | +------------+----------------------------+-------------------------------+ Configure Data Analytics Function --------------------------------- **Prerequisites:** `Design a Model`_. #. In the model, click the *StringMatch*. #. Click the *Properties* icon. #. Configure fields as required (see table). #. Click *Close*. +------------+----------------------------+-------------------------------+ | Field | Values | Description | +============+============================+===============================+ | Topic | * DCAE-CL-EVENT | DMAAP message topic to | | Publishes | | which the component subscribes| +------------+----------------------------+-------------------------------+ | AAI Fields | (Multiple values) | Additional VM-related fields | | Matching | | that downstream elements such | +------------+ | as Policy and APPC can use to | | AAI Field | | take action on the signature. | | Send | | | | (Select | | | | Multiple) | | | +------------+----------------------------+-------------------------------+ | Resource- | Integer | Group of string matching rules| | Group | | that are to be treated | | | | together. For example, a | | | | resource group could contain | | | | two different traps that must | | | | be received to produce a | | | | signature, as well as the | | | | abatement match. | +------------+----------------------------+-------------------------------+ | Alarm | (Multiple values) | Populated from vendor-provided| | Condition | | list of alarm names. Stored in| | | | SDC and retrieved by the | | | | modeling tool. Alarms differ | | | | per VNF. | +------------+----------------------------+-------------------------------+ | Event | * NORMAL | Severity level of the alarm | | Severity | * not-NORMAL | that caused the rule to match.| | | * WARNING | All conditions are exact | | | * MINOR | matches, except for not-Normal| | | * MAYOR | , which match