HP  Network  Node  Manager  i  alternative  integration  with  HP  Operations  Manager   Technical  White  Paper  2011   Sebastian  YEPES

 FERNANDEZ    

HP  Network  Node  Manager  i   alternative  integration  with   HP  Operations  Manager  

1    

HP  Network  Node  Manager  i  alternative  integration  with  HP  Operations  Manager   Technical  White  Paper  2011   Sebastian  YEPES  FERNANDEZ    

MOTIVATION: .................................................................................................................. 1   LEGAL NOTICE: .............................................................................................................. 2   NNMI2OM SOLUTION: .................................................................................................... 3   NNMI2OM INSTALLATION / CONFIGURATION: ........................................................... 4   POSSIBLE OPTIMIZATIONS / LIMITATIONS: ............................................................... 5   PERSONAL COMMENTS / RANTS: ............................................................................... 6   CONTACT: ....................................................................................................................... 7  

2    

HP  Network  Node  Manager  i  alternative  integration  with  HP  Operations  Manager   Technical  White  Paper  2011   Sebastian  YEPES  FERNANDEZ    

M OTIVATION :
This white paper was motivated because of the limited filtering functionalities of both of the integration methods (HPOM Agent or Web Services) included in the official NNMi OM Integration module as of version 9.11+P2 As in any major enterprise there are many networking devices and environments Production, PreProduction, Development and lots of other non-critical components that should also be controlled. NNMi’s auto-discovery functionality discovers all these environments, even if we meticulously exclude the elements that should not be discovered there are always unexpected surprises. In any case we should have the possibility to decide which elements are critical and for whom the forwarding should be enabled. The integration functionality that I was expecting was one that let us choose from which nodes or node groups we wanted to forward the generated incidents to OM and not just forward all the incidents generated from all the discovered NNMi nodes. So after several days of HP support emailing and phone feedback I finally decided I was going to create my own NNMi OM integration solution rather than waiting for this to be resolved. Note that there is currently a HP Enhancement request to resolve this issue:
http://support.openview.hp.com/selfsolve/document/FID/DOCUMENTUM_QCCR1B91609

L EGAL N OTICE :
The author Sebastian YEPES FERNADEZ reserves the right not to be responsible for the correctness, completeness or quality of the information provided. Liability claims regarding any kind of damages caused by the use of any information provided, including any kind of information which is incomplete or incorrect, will therefore be rejected. Please be aware that the usage of this integration solution or any of the modifications provided by this white paper can void the HP warranty and break support contracts. The usage of the solution or partial is totally at your own risk.

3    

HP  Network  Node  Manager  i  alternative  integration  with  HP  Operations  Manager   Technical  White  Paper  2011   Sebastian  YEPES  FERNANDEZ    

NNM I 2OM S OLUTION :
This integration permits us to limit the forwarding of incidents generated only by the nodes contained in a specific topology map (Node Group) and at the same time we can also decide which incidents are allowed to be forwarded. Note that this last filtering option is also available with the official integration. Let me explain this with a small example. Let’s say we are monitoring the ACME’s company networking infrastructure in Europe and we have created the following topology maps: Company ACME - EMEA (Root NG) + Data centers (Critical) + Spain (Barcelona) + France (Paris) + Local sites (Non-Critical) + Spain + Barcelona + Madrid + France + Paris + Rennes + Germany + Berlin In this case the company management only wants to forward to the OM operations team the incidents generated from any of the nodes that are in the ACME’s data centers. Local site networking infrastructure is not critical, but at the same time it is important to have the status and incidents of local sites so the networking teams can troubleshoot local issues. So with this integration, we just need to specify on which of the topology maps (Node Groups) we want to activate the forwarding of incidents and then schedule the integration process. Now how does it work? It is relatively simple there are just a couple of PotgreSQL functions that find all the nodes that are assigned to each of the topology maps (ng_tree). This search is done recursively, so if you specify a top-level map it will find all the nodes of all its child's. Then once we have found all the nodes, we search for the incidents that have the stat registered (nnm2om_open) associated with them and we only forward to OM the incidents of the type we have specified in the table (nnm2om_incicents_allowed). Finally we search for the incidents that have been closed (nnm2om_close) and then we send to OM the acknowledgements of the previously sent registered incidents that now have a closed stat. The forwarding mechanism works in a similar way as the original HPOM Agent based integration. However instead of using TRAPS, it uses the Open Message Interface (opcmsg). Consequently each time a NNMi incident needs to be forwarded to OM, the PostgreSQL functions (nnm2om_open & nnm2om_close) execute a shell command using a custom built PL/SQL function (shell). Note that if you're not confortable with the compiling of the PL/SQL (shell) function, you can use an external script that reads the content of the table (nnm2om_incicents) and then executes the corresponding opcmsgs.

4    

HP  Network  Node  Manager  i  alternative  integration  with  HP  Operations  Manager   Technical  White  Paper  2011   Sebastian  YEPES  FERNANDEZ    

NNM I 2OM I NSTALLATION / C ONFIGURATION :
First you have to take the decision: - If you are OK with the compiling of the PL/SQL function, then please read the installation notes in the file (shell.c) and once you have installed the shared library (shell.so), you can continue. - If you have decided not to use the shell function, you will have to comment out the lines where it is used in the installation script (NNMi2OM_Install.sql) and modify the function return type to void. After carrying out one of the previous step, you need to get access to the PostgreSQL NNMi database. This can be done through the psql command or using the pgAdmin GUI. Then you will have: - To execute the installation script (NNMi2OM_Install.sql) that will create the necessary functions and tables, and - To customize the list of allowed incidents in the table (nnm2om_incicents_allowed) that will be then forwarded. Finally schedule the execution of the two functions (nnm2om_open & nnm2om_close) with the desired topology map name (Node Group), so they can start doing their work. This is an example of the messages sent to OM:

In the zip file provided with this white paper, I have included all the necessary files needed to start using this integration solution. I have also added the HPOM policy that needs to be deployed on the NNMi server. The necessary PostgreSQL header files to build the shared library shell.so: pgsql-server-inc.tgz The source code of the custom PL/SQL shell function: shell.c The HPOM Open Message Interface policy for NNMi server: om_NNMi2OM_opcmsg-policy.dat An example of the execution script: nnmi2om_schedule.sh Installation SQL script: NNMi2OM_Install.sql Uninstallation SQL script: NNMi2OM_Deinstall.sql 5    

HP  Network  Node  Manager  i  alternative  integration  with  HP  Operations  Manager   Technical  White  Paper  2011   Sebastian  YEPES  FERNANDEZ    

Possible optimizations / Limitations:
- Depending on the depth of your topology maps, the recursive search (ng_tree) of the nodes could be not that fast. Instead of searching for the nodes each time at runtime, it would be preferable just to create a materialized view and refresh it once every hour or so. - The search of the nodes contained in the “Additional Filters” tab (node_filter_parse) does not take into consideration all the possible search attributes and conditions. The current implementation just uses all the expressions against the nodes name. This could be more or less easily fixed if the PostgreSQL was of a newer version which supports native XML queries as the content of the records are actually XML. Please be aware that excluding nodes with a ‘NOT’ condition or adding nodes by other attributes other then nodeName or hostname will not work.

P ERSONAL COMMENTS / R ANTS :
- HP NNMi team, PostgreSQL version 8.2.17 come on guys it's old!! There is no support for XML queries nor support for simplified recursive queries (WITH). You have an extremely powerful and flexible database under the hood. Please just do not use it as a simple storage container and let’s not even talk about the related security issues in this version. - Hope in the future versions you could ship PostgreSQL with at least the PL/Perl module built-in, it would make things just lot easier from a developing point of view. - The Web Service integration would be a great solution if it could handle the heavy load of messages, especially if we could customize the incident attributes that are forwarded to OM, for example the message text and CMA’s. - Do not think anyone has really used the current integration module in a really complex networking environment, without any good filtering mechanism. It is just useless. If it took one guy four days to come up with this solution, you guys can do even better. 1 Day - HP support emailing and phone feedback 2 Days - Analysis of the problem and coding 1 Day - Creating the OM policy and final testing plus writing this pdf

CONTACT:
Please feel free to contact me, if you have any questions or comments.

syepes@gmail.com
http://fr.linkedin.com/in/sebastianyepes

6    

Sign up to vote on this title
UsefulNot useful