• No results found

opennms reporting generation tool

N/A
N/A
Protected

Academic year: 2021

Share "opennms reporting generation tool"

Copied!
49
0
0

Loading.... (view fulltext now)

Full text

(1)

openNMS reporting generation tool

Juan Pedro Escalona

DevOps Southampton, UK - 2014

(2)

Juan Pedro Escalona

DevOps / Systems Administrator with over 6 years experience administering different OS, network systems and anything that is thrown to my desk.

At the present, I work in QA Automation & Performance group, providing tools to automate processes.

Monitoring lover, background in several Open Source monitoring solutions. Six months ago, these words changed me:

- “Hi Juan Pedro. Have you met openNMS? Let me introduce you...”

(3)

Agenda

Introduction

Load Test Processes

Automating processes progress

Reporting Tool in Load test processesPython openNMS Library

DemoLiveviewResultsQ & A

(4)

Agenda

Introduction

Load Test Processes

Automating processes progress

Reporting Tool in Load test processesPython openNMS Library

DemoLiveviewResultsQ & A

(5)

Introduction

Over 1000 servers in production

Exact copy of production environment for test

Releases every 2 weeks

Load Test is mandatory

(6)

Agenda

Introduction

Load Test Processes

Automating processes progress

Reporting Tool in Load test processesPython openNMS Library

DemoLiveviewResultsQ & A

(7)

Launch Load Test

Prepare Load Test Report Load Test

(8)

Load Test Processes

Prepare Load Test:

(9)

Load Test Processes

Prepare Load Test:

Set initial configuration in order to replicate production status (ie. Refresh DBs)

Launch Load Test:

Most of load generators and monitors are compatible only with Windows OS Webload & Neoload + 25 Load Generators (Windows / Linux)

(10)

Load Test Processes

Prepare Load Test:

Set initial configuration in order to replicate production status (ie. Refresh DBs)

Launch Load Test:

Most of load generators and monitors are compatible only with Windows OS Webload & Neoload + 25 Load Generators (Windows / Linux)

Report Load Test:

openNMS: Main key metrics of servers and graphs

(11)

Agenda

Introduction

Load Test Processes

Automating processes progressReporting Tool in Load test processes

Python openNMS LibraryDemo

LiveviewResultsQ & A

(12)

Automating Processes Progress

Prepare Load Test:

It's complex but for the time being we use scripts to do it Orchestration: check dependencies + call scripts

(13)

Automating Processes Progress

Prepare Load Test:

It's complex but for the time being we use scripts to do it Orchestration: check dependencies + call scripts

Launch Load Test:

Generate load templates based on load profiles

(14)

Automating Processes Progress

Prepare Load Test:

It's complex but for the time being we use scripts to do it Orchestration: check dependencies + call scripts

Launch Load Test:

Generate load templates based on load profiles

Run/stop and control status of Load Generator Consoles

Report Load Test:

Schedule report generation or trigger when load test has finished

Aggregate different servers with different type of graphs in same report Provide a single view to check status of all nodes we're testing

(15)
(16)

Automating Processes Progress > Report

At the beginning:

Time: 10-20 minutes

No health key metrics of server

Site Catalyst

(17)

Automating Processes Progress > Report

Spreadsheet reports:

Time: From 1 hour to days

OpenNMS: health statistics

Screenshot + Cut + Paste (1 node)

(18)
(19)

Automating Processes Progress > Report

KSC Reports:

Time: 30 minutes to several hours

Join different servers + Graphs

Save as HTML

(20)
(21)

Automating Processes Progress > Report

Report generation is not automatic

Not possible join several KSC Reports in once

KSC Report configuration is not easy

(22)

Agenda

Introduction

Load Test Processes

Automating processes progress

Reporting Tool in Load test processesPython openNMS Library

DemoLiveview

Improvements & ResultsQ & A

(23)

Reporting Tool in Load Test Processes

Key features

Support multiple environments (a.k.a. multiple OpenNMS instances)

Easy configuration building new Server Reports ( hosts + graphs)

Easy report generation: few clicks + few minutes

Liveview: lets you aggregate different Server Reports in a same view

just on click

(24)

Reporting Tool in Load Test Processes

Architecture and components:

Python OpenNMS Client module: Retrieve info from openNMS

Contributed by Jason Viloria

Memcache:

Cache all info obtained from openNMS

Django Application:

Provide UI interface

(25)
(26)

Agenda

Introduction

Load Test Processes

Automating processes progress

Reporting Tool in Load test processesPython openNMS Library

DemoLiveview

Improvements & ResultsQ & A

(27)

Python openNMS library

Retrieve the list of available nodes in OpenNMS instances:

Assets: Node label, node id, categories

Node Resources: JMX, SNMP

Graphs

Node Level: CPU, Memory

Interface Level: Net Interface Bandwidth, Disk IO

Caching

(28)

Python openNMS library

(29)

Python openNMS library

(30)

Python openNMS library

(31)

Python openNMS library

(32)

Agenda

Introduction

Load Test Processes

Automating processes progress

Reporting Tool in Load test processesPython openNMS Library

DemoLiveview

Improvements & ResultsQ & A

(33)
(34)
(35)
(36)
(37)
(38)
(39)
(40)
(41)

Agenda

Introduction

Load Test Processes

Automating processes progress

Reporting Tool in Load test processesPython openNMS Library

DemoLiveview

Improvements & ResultsQ & A

(42)
(43)

Agenda

Introduction

Load Test Processes

Automating processes progress

Reporting Tool in Load test processesPython openNMS Library

DemoLiveview

Improvements & ResultsQ & A

(44)
(45)

Report Generation OpenNMS graphs Analysis 0 1 2 3 4 5 6 7 2 6 1 1 0.1 2

Time Spent per Stage

2012 2013 0 2 4 6 8 10 9 3

Overall Reporting Time

(46)

Jan Feb Mar Apr May Jun Jul Aug Sep Oct 0 20 40 60 80 100 120 30 24 17 32 24 39 60 105 94 65

Load Test Executions

Load Tests Capacity

Executions x 3.5 since January:

January 2013 (1st Big Event): 30 executionsAugust 2013 (2nd Big Event): 105 executions

Results Analysis:

2 X analysis time

1/3 overall report time

(47)

Improvements & Results

At the beginning Spreadsheets KSC Reports Reporting Tool

● No server key

metrics

● Key metrics (1 node) ● Manual process

● Much time

● Key metrics (all) ● Save time

● Still manually

● Key metrics (all) ● Save huge time ● Automatic

(48)
(49)

Thanks!

References

Related documents