new kick off meeting... · 2016. 5. 23. · management pack source code walkthrough ... for hpe and...
TRANSCRIPT
Kick Off MeetingOMi Management Pack Development Workshop23rd May 2016
AgendaOMi Management Pack Workshop
Workshop Overview
Community Content on HPE Live Network
ITOM Insiders
Introduction to OMi Management Packs
Overview of OMi Management Pack DevKit
Management Pack Source Code Walkthrough
Deploying and monitoring in a production setup
Q&A
2
Workshop Overview
3
Free Community Workshop: Management Pack Development
4
Get the skills, resources, and support
Develop your Management Pack
Submit it to the community
Get highlighted in the OpsBridge Blog
Earn points on „ITOM Insiders“ along the way
For HPE and HPE Channel Partner Internal Use
DevelopLearn Submit
The Process
5For HPE and HPE Channel Partner Internal Use
Registration
• Submit registration form• Receive more details• Select the Management
Pack you will implement• Setup GitHub repository• Earn points
Live Kickoff Webinar
• Introduction & Overview• Step by step process• Training presentation• Live Coding• Q & A• Earn points
Live Webinar„Meet the Experts“
• Discuss questions• Get advice for coding• Validate your approach• Q & A• Earn points
Submit your Management Pack
• Submit your Management Pack to the HPE Live Network as community content
• Earn a lot of points!
Coding & Learning Week Support from the Experts (Forum)Required for participation
Community Content on the HPE Live Network
6For HPE and HPE Channel Partner Internal Use
login to HPE Live Network
creating community
content is an easy task
involving few clicks only
any HP Passport will work
Useful Resources for OMi/OpsBridge on the HPE Live Network
7For HPE and HPE Channel Partner Internal Use
Offers exclusive benefits and networking opportunities for customersand partners using HPE IT Operations Management products
How it works
– You choose which activities to participate in Social media, attend webinars, volunteer to be a reference, test drive our products and more
– Earn points for completing activities, pick up badges, and move up in user status as you progress
– Points can be redeemed for items that will benefit you and your organization
We have special challenges for this workshop: Earn points for registration, webinar attendance and content submission.
Not a member yet? Send us an e-mail to receive your invitation.
HPE ITOM Insiders
Help & Resources
9For HPE and HPE Channel Partner Internal Use
R&D Experts will answer your questions Operations Manager i Integrations Forum
Meet the experts in another live session on Wednesday See your welcome e-mail for the invitation links
Find more content and free resources Operations Manager i @ HPE Live Network Operations Bridge @.HPE Live Network
General questions about the workshop? Send an e-mail to [email protected]
Watch out for more information via e-mail.
Introduction to OMi Management Packs
10
Overview of HPE OMi Management Pack
It is responsible for monitoring an applications.e.g. Essential Oracle Management Template, Extensive Oracle Management TemplateManagement
Templates
It is responsible for monitoring an aspect of an application.e.g. “Oracle Query Performance“, “Oracle Tablespace Health“, etc
Aspects
It is an enhancement to monitoring policy wherein monitoring can be adjusted on the fly using it.e.g. Oracle Instance Username, Oracle Instance Collection, etc.
Parameters
Templates
It is complete configuration set with parameters.e.g. OracleConfiguration, OracleListener, etc.
What is HPE OMi Management Pack?Simplified, next generation, topology based end-to-end monitoring solution
Management Templates
Parameters
HPE OMi Management Pack
Templates
Parameters
Aspects
Parameters
Automatic monitoring
Simple configuration
Easy-to-tune
Reporting
Overview of OMi Management Pack DevKit
14
Developing an OMi MP using the DevKit
STARTIdentify what aspects to monitor for the application.
Identify the interfaces/techniques to discover application components and to collect metrics
Develop and test iteratively the monitoring solution using the MP DevKit
Compile the source code artifacts in to an OMi Management Pack using the MP DevKit
Validate/Tune OMi Management Pack developed in an HPE OMi /OA set up.
END
Note:
The development and testing of the monitoring solution can be completed without having to install or depend on HP OMi or HP Operations Agent. It can be done, for example, on a laptop.
Technically each step of the development process can be owned by a different developer. For example, an SME with Perl skills can focus on developing the monitoring solution and an OMi expert can take ownership of certifying it on OMi/Agent setup.
Development Phase & Production Phase
Production Phase
OMi Management Pack for App-X
Development Kit
OMi Management Pack for App-X
Monitor Framework Content Pack
Development Phase
Running the monitoring solution
Perl Module
MP DevKit Runtime
(Same as the Monitor Framework Runtime)
Configuration File (YAML file)Read
Run
Three steps to develop MP using the DevKit
Primary artifacts:
monitorframework.pl
(The framework that executes your Perl module)
Collector.pm
(The parent class for your Perl module)
Important commands:
perl monitorframework.pl <Application.pm>
( Reads <Application.yml>. Executes the run() method of your Perl module)
perl monitorframework.pl -topology <Application.pm>
( Reads <Application.yml>. Executes the topology() method from your Perl module)
Important commands:
ContentCreator -yml <Full path to YAML file> (OMi MP is created in the folder <YAML Folder>/Output)
Example:
ContentCreator -yml PostGresMonitor/PostgresMonitor.yml(Above command results in:PostGresMonitor/Output/OMi_MP_PostGresMonitor.zip )
Extract the MP DevKit to a folder of your choice
Develop and Test the monitoring solution
Compile the monitoring solution in to an OMi MP
Management Pack Code WalkThrough
19
Compiling the monitoring solution
DevKit supported artifacts - 1
DevKit supported artifacts - 2
DevKit supported artifacts - 3
Writing your source code
DevKit APIs
Invoking your monitoring solutionMode Invoked as
Normal perl monitorframework.pl
Developer perl monitorframework.pl -developer
Production perl monitorframework.pl -production
Function Invoked asrun () method perl monitorframework.pl [+ - debug option] [+ - <Application.pm>]
perl monitorframework.pl –production [+ - debug option] [+ - <Application.pm>]perl monitorframework.pl –developer [+ - <Application.pm>]
topology () method perl monitorframework.pl -topology [+ - debug option] [+ - <Application.pm>]perl monitorframework.pl –production –topology [+ - debug option] [+ -<Application.pm>]perl monitorframework.pl –developer -topology [+ - <Application.pm>]
Submitting your metrics
Submitting Event and Availability Status
Managing Log Messages
The run time log level is checked against the log level of a message.
For the run time log level of DEBUG, both INFO and DEBUG level log messages are logged.
For the run time log level of INFO, only the INFO level log messages are logged.
Submitting Topology Information
my @topology = ();
my $instance1 = {};$instance1->{name} = <name of instance1>;$instance1->{application} = <value of the attribute application>$instance1->{vendor} = <value of the attribute vendor>$instance1->{type} = <value of the CI type of instance1>$instance1->{isSecure}{value} = <value e.g. true> # Technique for specifying data type$instance1->{isSecure}{type} = <value of data type e.g. bool> # boolean also works. $instance1->{application_port}{value} = <value of port of the application . e.g. 1234>$instance1->{application_port}{type} = <value of data type . e.g. int>; # integer or numeric also work$instance1->{requires} = <value of the key to the required entity>$instance1->{uses} = <value of the key to the used entity>$instance1->{member_of} = <value of the key to the entity to which member of>$instance1->{add_node_rootcontainer} = "true"; #Causes local node to be added as the root containerpush(@topology, $instance1);return @topology;
Additional Perl Modules
Non Perl artifact support
YAML FileSyntax
---application: HTTPEndPoint domain: Protocol description: URL monitor script: HTTPCollector.pm generate_availability: false generate_discovery: false interval: Very High ---proxy: proxy_port: proxy_user: proxy_password: ---instances: - url:
expected_string: expected_status: 200
----# proxy: string, Proxy Name, Name of the proxy to use [optional]# proxy_port: int, Proxy Port, Port of the proxy to use [optional]# proxy_user: string, Proxy User, Username necessary to authenticate with proxy [optional]# proxy_password: password, Proxy Password, Password necessary to authenticate with proxy [optional]# url: string, URL, Full URL to monitor# expected_string: string, Expected Text, Expected text that should be inside the returned body [optional]# expected_status: int, Expected HTTP Status, Expected HTTP status code returned by the URL [optional]---
EventYAML FileSyntax - 1
EventYAML FileSyntax - 2
Complete a challenge!You have registered for this workshop,but you have not earned the points?
Complete the challenge on ITOM Insidersto get 100 points:
https://itominsiders.influitive.com/challenges/1287
Not a member yet?Send us an e-mail to receive your invitation.
36
...or two?
Get another 150 points on ITOM Insidersfor having attended the kick off session:
https://itominsiders.influitive.com/challenges/1317
Not a member yet?Send us an e-mail to receive your invitation.
37
Thank you38