Centinel A framework for monitoring and predictive analytics of SDN ecosystem Presented by: Sumit Kapoor Abhishek A www.opendaylight.org Centinel | Example Use case User Actions 1. Log In: User logs into the Centinel with required credentials using following URL:Localhost:8181/index.html Use Case : Detection of flapping of switch links very frequently If multiple applications start reacting to the link-up down events at a very high rate, the possibility of system becoming unstable is very high. So, selective Openflow must be dampened before escalating the same to the applications layer 2. Set detaild for dependencies: a) Select Centinel sub-tree present in left side and go to Settings tab. b) Provide IP and port details for shown dependencies. 2. Set Rule: a) Go to Rule tab and create Rule with title and description. a) Configure flow rule on the stream to filter the logs accordingly i.e. bundle_name=org.opendaylight.openflow-plugin 3. Set Alarm Condition: Configure alarm condition e.g. message-count-rule such that if 10 messages comes on a stream ( i.e openflow-plugin) in last 1 minute with an alert is generated. 4. Create Dashboard: Configure dashboard for stream and alert widgets. www.opendaylight.org 2 Centinel | Example Use case(Contd..) Technical Details : 1. Data collection: a) Syslog collector of Centinel listens for Syslog messages on TCP socket 3335. Syslog messages parsing is done as per RFC 3164 and 5424. b) Openflow plugin is Use Case : configured to send link up down log messages to TCP port Detection of flapping of switch links exposed by Syslog collector. very frequently - 2. Data Persistence : Syslog data is persisted to hbase using Storage RPC which intently implements flume client. syslog data If multiple applications start reacting is also sent to Graylog. Storage and Query RPCs are generic and to the link-up down events at a very can be used for all type of data models. high rate, the possibility of system 3. Rules configuration : CRUD operations on Stream/Alert rules becoming unstable is very high. So, are saved onto MD-SAL data-store (Both Config and Operational) selective Openflow must be and communicated to Graylog. Dashboard Rules are stored into dampened before escalating the same MD-SAL. to the applications layer 4. Event Processing : Graylog plugin process events from Graylog server and send it to LAAS module. Event handler module receives Events from MD-SAL and process it. 5. Event persistence : Events( Streaming data/ Alarms) are persisted to hbase using storage API( Supports JSON / AVRO) www.opendaylight.org 3 Centinel | Example Use case(Contd..) Technical Details (contd..) : Use Case : 6. Data Query : Web UI support data( Streaming data/Alarms Detection of flapping of switch links and Dashboard stats) query using Query RPC ( SQL and Lucene ) very frequently - provided by Stream Handler module. 7. Subscription for Stream and Alert: Events are sent to If multiple applications start reacting subscribed application using HTTP post. to the link-up down events at a very high rate, the possibility of system Expected result : becoming unstable is very high. So, 1. Verify event i.e. Alarm and corresponding stream in Event selective Openflow must be page. dampened before escalating the same 2. Verify Alarm and Stream count in Dashboard. to the applications layer 3. Also, verify history of this alarms using histogram in dashboard. www.opendaylight.org 4 Centinel | Backup slides to present stated use case – Configuring dependencies www.opendaylight.org 5 Centinel | Backup slides to present stated use case – Creating a Rule www.opendaylight.org 6 Centinel | Rule created www.opendaylight.org 7 Centinel |Adding a Flow Rule www.opendaylight.org 8 Centinel |Flow Rule added www.opendaylight.org 9 Centinel |Creating an Alarm Condition www.opendaylight.org 10 Centinel | Adding an Alarm Condition (Contd..) www.opendaylight.org 11 Centinel | Alarm Condition added www.opendaylight.org 12 Centinel | Creating a Dashboard www.opendaylight.org 13 Centinel | Dashboard created www.opendaylight.org 14 Centinel | Adding widgets to Dashboard www.opendaylight.org 15 Centinel | Widget added www.opendaylight.org 16 Centinel | Starting the Rule www.opendaylight.org 17 Centinel | Rule started www.opendaylight.org 18 Centinel | Counter widget updates www.opendaylight.org 19 Centinel | Events (Querying the records ) www.opendaylight.org 20 Centinel | Events (Querying the records – A sample record) www.opendaylight.org 21 Centinel | Events (An alarm) www.opendaylight.org 22 Thanks www.opendaylight.org
© Copyright 2024 Paperzz