<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress.com" -->
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	>

<channel>
	<title>snmp &amp;laquo; WordPress.com Tag Feed</title>
	<link>http://en.wordpress.com/tag/snmp/</link>
	<description>Feed of posts on WordPress.com tagged "snmp"</description>
	<pubDate>Tue, 01 Dec 2009 21:08:30 +0000</pubDate>

	<generator>http://en.wordpress.com/tags/</generator>
	<language>en</language>

<item>
<title><![CDATA[System Administrator - Abu Dhabi, UAE]]></title>
<link>http://careeratkbs.wordpress.com/2009/11/26/system-administrator-abu-dhabi-uae/</link>
<pubDate>Thu, 26 Nov 2009 04:39:16 +0000</pubDate>
<dc:creator>careeratkbs</dc:creator>
<guid>http://careeratkbs.wordpress.com/2009/11/26/system-administrator-abu-dhabi-uae/</guid>
<description><![CDATA[Hi, Here the placement for System Administrator &#8211; Abu Dhabi, UAE. Position : System Administra]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Hi,</p>
<p>Here the placement for<strong> <span style="color:#008000;"><strong>System Administrator &#8211; Abu Dhabi, UAE</strong></span>.</strong></p>
<p><strong><span style="color:#000080;">Position</span> : System Administrator<br />
</strong></p>
<p><strong><span style="color:#000080;">No.Of Openings</span> : </strong>3<br />
<strong></strong></p>
<p><strong><span style="color:#000080;">Experience</span> : </strong>3 years.<br />
<strong></strong></p>
<p><strong><span style="color:#000080;">Qualification :</span></strong></p>
<li>Microsoft Certification preferred.<br />
<strong></strong></li>
<p><strong><span style="color:#000080;">Location </span>: </strong>Abu Dhabi, UAE.<br />
<strong></strong></p>
<p><strong><span style="color:#000080;">Required Skill set :</span></strong></p>
<ul>
<li>General understanding of Microsoft Windows Server OS and supporting systems including SMTP, Sites and directory object management.</li>
<li>Knowledge of basic networking protocols such as TCP/IP, Kerberos and SNMP.</li>
<li>Understanding of Server hardware and peripherals.</li>
<li>Knowledge of Microsoft Windows based Operating Systems, networking best practices and troubleshooting techniques/</li>
<li>Experience with Dell hardware and Dell Blade Servers.</li>
<li>HP and/or Dell certification a plus.</li>
<li>Hands on experience with a helpdesk ticket system. Remedy is preferred.</li>
<li>Team oriented with a desire to succeed in a fast paced environment.</li>
<li>Excellent customer service.</li>
</ul>
<p>Would you be interested ?</p>
<p>Please send us your latest updated profile with contact nos.<br />
current &#38; expected salary details and joining time required to<a href="mailto:radha@kbsconsultants.com?subject=Device Driver Architect - Chennai"><span style="text-decoration:underline;">radha@kbsconsultants.com</span></a></p>
<p>You may also suggest this opening to your friends who may be interested.</p>
<p><strong><span style="color:#33cccc;">Further Information:</span></strong></p>
<p><strong><span style="color:#0000ff;">KBS</span> <span style="color:#ff0000;">Consultants<br />
</span></strong></p>
<p>Flat H,Kulothungan Apts,<br />
No, 5 Natesan Road<br />
Ashoknagar,<br />
Chennai 600 083.<br />
India<br />
Phone: +91-44 2489 5341 / 2371 9622</p>
<p><strong><span style="color:#33cccc;">Visit Our Sites:</span></strong></p>
<p><strong><span style="color:#800080;">International jobs: </span></strong><a href="http://www.jobsearchworld.com/"><span style="text-decoration:underline;"><span style="color:#0000ff;">http://www.jobsearchworld.com/</span></span></a><br />
<strong><span style="color:#800080;">SAP ERP Jobs :</span> </strong><a href="http://www.jobsvista.com/"><span style="text-decoration:underline;"><span style="color:#0000ff;">http://www.jobsvista.com/</span></span></a><br />
<strong><span style="color:#800080;">Core Engineering Jobs :</span> </strong><a href="http://www.gotachance.com/"><span style="text-decoration:underline;"><span style="color:#0000ff;">http://www.gotachance.com/</span></span></a><br />
<strong><span style="color:#800080;">Technology Jobs :</span> </strong><a href="http://www.kbsconsultants.com/"><span style="text-decoration:underline;">http://www.kbsconsultants.com/</span></a><br />
<strong><span style="color:#800080;">India Jobs :</span></strong><a href="http://www.kbsconsultants.org.in/"><span style="text-decoration:underline;">http://www.kbsconsultants.org.in</span></a></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Monitoreo de Java Virtual Machine con SNMP]]></title>
<link>http://openjlife.wordpress.com/2009/11/22/monitoreo-de-java-virtual-machine-con-snmp/</link>
<pubDate>Mon, 23 Nov 2009 04:25:36 +0000</pubDate>
<dc:creator>Jose Manuel</dc:creator>
<guid>http://openjlife.wordpress.com/2009/11/22/monitoreo-de-java-virtual-machine-con-snmp/</guid>
<description><![CDATA[La manera no intrusiva de monitorear parámetros de la máquina virtual de java, es habilitar la capac]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>La manera no intrusiva de monitorear parámetros de la máquina virtual de java, es habilitar la capacidad de emitir datos por SNMP (Simple Network Management Protocol) al agregar los siguientes parámetros en las opciones extra de la JVM:</p>
<blockquote><p>JAVA_OPTS=$JAVA_OPTS &#8221; -Dcom.sun.management.config.file=/path/to/file/jvm.management.properties&#8221;</p></blockquote>
<p>Contenido del archivo /path/to/file/jvm.management.properties</p>
<blockquote><p># SNMP Management Settings<br />
com.sun.management.snmp.interface=0.0.0.0<br />
com.sun.management.snmp.port=8162<br />
com.sun.management.snmp.acl=false<br />
#com.sun.management.snmp.acl.file=filepath<br />
#com.sun.management.snmp.trap=&#60;hostname:port&#62;</p></blockquote>
<p>Para comprobar que los parámetros fueron aceptados de manera exitosa, podemos buscar el puerto establecido, en este caso 8162, con estado Idle con netstat de la siguiente manera:</p>
<blockquote><p>netstat -an &#124; grep 8162<br />
*.8162                              Idle</p></blockquote>
<p>Finalmente, con el comando snmpwalk (linux) obtenemos los datos de la JVM:</p>
<blockquote><p>snmpwalk -v2c -m all -c public &#60;server&#62;:8162 .1</p>
<p>.</p>
<p>JVM-MANAGEMENT-MIB::jvmThreadInstState.&#8217;&#8230;&#8230;..&#8217; = BITS: 01 00 waiting(7)<br />
JVM-MANAGEMENT-MIB::jvmThreadInstState.&#8217;&#8230;&#8230;..&#8217; = BITS: 01 00 waiting(7)<br />
JVM-MANAGEMENT-MIB::jvmThreadInstState.&#8217;&#8230;&#8230;..&#8217; = BITS: 01 00 waiting(7)<br />
JVM-MANAGEMENT-MIB::jvmThreadInstState.&#8217;&#8230;&#8230;..&#8217; = BITS: 01 00 waiting(7)<br />
JVM-MANAGEMENT-MIB::jvmThreadInstState.&#8217;&#8230;&#8230;..&#8217; = BITS: 01 00 waiting(7)<br />
JVM-MANAGEMENT-MIB::jvmThreadInstState.&#8217;&#8230;&#8230;..&#8217; = BITS: 01 00 waiting(7)<br />
JVM-MANAGEMENT-MIB::jvmThreadInstState.&#8217;&#8230;&#8230;..&#8217; = BITS: 01 00 waiting(7)<br />
JVM-MANAGEMENT-MIB::jvmThreadInstState.&#8217;&#8230;&#8230;..&#8217; = BITS: 01 00 waiting(7)<br />
JVM-MANAGEMENT-MIB::jvmThreadInstState.&#8217;&#8230;&#8230;.$&#8217; = BITS: 01 00 waiting(7)<br />
JVM-MANAGEMENT-MIB::jvmThreadInstState.&#8217;&#8230;&#8230;.%&#8217; = BITS: 02 00 terminated(6)<br />
JVM-MANAGEMENT-MIB::jvmThreadInstState.&#8217;&#8230;&#8230;.&#38;&#8217; = BITS: 01 00 waiting(7)<br />
JVM-MANAGEMENT-MIB::jvmThreadInstState.&#8217;&#8230;&#8230;.(&#8216; = BITS: 01 00 waiting(7)<br />
JVM-MANAGEMENT-MIB::jvmThreadInstState.&#8217;&#8230;&#8230;.)&#8217; = BITS: 01 00 waiting(7)<br />
JVM-MANAGEMENT-MIB::jvmThreadInstState.&#8217;&#8230;&#8230;.*&#8217; = BITS: 01 00 waiting(7)<br />
JVM-MANAGEMENT-MIB::jvmThreadInstState.&#8217;&#8230;&#8230;.+&#8217; = BITS: 01 00 waiting(7)<br />
JVM-MANAGEMENT-MIB::jvmThreadInstState.&#8217;&#8230;&#8230;.,&#8217; = BITS: 01 00 waiting(7)<br />
JVM-MANAGEMENT-MIB::jvmThreadInstState.&#8217;&#8230;&#8230;.-&#8217; = BITS: 01 00 waiting(7)<br />
JVM-MANAGEMENT-MIB::jvmThreadInstState.&#8217;&#8230;&#8230;..&#8217; = BITS: 01 00 waiting(7)<br />
JVM-MANAGEMENT-MIB::jvmThreadInstState.&#8217;&#8230;&#8230;.0&#8242; = BITS: 01 00 waiting(7)<br />
JVM-MANAGEMENT-MIB::jvmThreadInstState.&#8217;&#8230;&#8230;.1&#8242; = BITS: 01 00 waiting(7)<br />
JVM-MANAGEMENT-MIB::jvmThreadInstState.&#8217;&#8230;&#8230;.2&#8242; = BITS: 01 00 waiting(7)<br />
.</p></blockquote>
<p>&#160;</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[SNMP is Simply Not My Problem]]></title>
<link>http://nsrd.wordpress.com/2009/11/19/snmp-is-simply-not-my-problem/</link>
<pubDate>Thu, 19 Nov 2009 08:05:11 +0000</pubDate>
<dc:creator>Preston</dc:creator>
<guid>http://nsrd.wordpress.com/2009/11/19/snmp-is-simply-not-my-problem/</guid>
<description><![CDATA[When I first started in system administration, I asked a colleague who was talking about SNMP what t]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>When I first started in system administration, I asked a colleague who was talking about SNMP what the ETLA* stood for.</p>
<p>His response: <em>Simply Not My Problem</em>.</p>
<p>SNMP – The Simple Network Management Protocol, is something that a lot of people get hung up over in relation to NetWorker. There&#8217;s usually two complaints:</p>
<ol>
<li>Why do I have to <em>pay</em> for SNMP integration?</li>
<li>Where&#8217;s the MIBs?</li>
</ol>
<p>The first question is more easily answered after answering the second; there are no MIBs (well, no official MIBs) for NetWorker. NetWorker doesn&#8217;t support being <em>controlled</em> by SNMP; instead, its SNMP &#8220;module&#8221; simply supports sending SNMP traps – broadcasts onto the network.</p>
<p>So now we return to the first question – why do I have to pay for SNMP integration?</p>
<p>The short answer is <em>you don&#8217;t</em>. I wouldn&#8217;t. If I were back to being a regular system administrator and someone walked in with a quote for NetWorker and included the SNMP module in it, I&#8217;d grab the quote and draw a big red line through it as being a complete waste of money.</p>
<p>Why pay for being able to send SNMP traps when there are free tools available for practically <em>every</em> operating system that allow you to do just that?</p>
<p>As to whether you should get hung up about NetWorker not natively supporting SNMP traps without any additional licensing – honestly, it&#8217;s not worth getting worked up about. NetWorker has a very extensible notification system where you can assign any action (read: executable with any command line actions) to practically any event within the system. With that much flexibility you can whack a free SNMP utility on the system and go to town.</p>
<p>&#8211;<br />
* ETLA &#8211; Extended Three Letter Acronym</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[SNMP packages for Debian Machine]]></title>
<link>http://mohammednv.wordpress.com/2009/11/15/snmp-packages-for-debian-machine/</link>
<pubDate>Sun, 15 Nov 2009 07:08:52 +0000</pubDate>
<dc:creator>Mohammed</dc:creator>
<guid>http://mohammednv.wordpress.com/2009/11/15/snmp-packages-for-debian-machine/</guid>
<description><![CDATA[If you want to configure SNMP on a Debian machine, you should install the following packages. You ca]]></description>
<content:encoded><![CDATA[If you want to configure SNMP on a Debian machine, you should install the following packages. You ca]]></content:encoded>
</item>
<item>
<title><![CDATA[Cliente NET-SNMP]]></title>
<link>http://torocatala.wordpress.com/2009/11/10/cliente-net-snmp/</link>
<pubDate>Tue, 10 Nov 2009 10:21:21 +0000</pubDate>
<dc:creator>torocatala</dc:creator>
<guid>http://torocatala.wordpress.com/2009/11/10/cliente-net-snmp/</guid>
<description><![CDATA[1.- MSWindows 2.- GNU/Linux El cliente NET-SNMP nos servira para Nagios, Cacti, Zenoss y otras aplic]]></description>
<content:encoded><![CDATA[1.- MSWindows 2.- GNU/Linux El cliente NET-SNMP nos servira para Nagios, Cacti, Zenoss y otras aplic]]></content:encoded>
</item>
<item>
<title><![CDATA[Cliente NET-SNMP en Windows &amp; Linux]]></title>
<link>http://torocatala.wordpress.com/2009/11/10/86/</link>
<pubDate>Tue, 10 Nov 2009 08:58:43 +0000</pubDate>
<dc:creator>torocatala</dc:creator>
<guid>http://torocatala.wordpress.com/2009/11/10/86/</guid>
<description><![CDATA[Windows&amp;Linux 1.- MSWindows El cliente NET-SNMP nos servira para Nagios, Cacti, Zenoss y otras a]]></description>
<content:encoded><![CDATA[Windows&amp;Linux 1.- MSWindows El cliente NET-SNMP nos servira para Nagios, Cacti, Zenoss y otras a]]></content:encoded>
</item>
<item>
<title><![CDATA[Cara Install Cacti di Ubuntu]]></title>
<link>http://brokenz1.wordpress.com/2009/10/31/cara-install-cacti-di-ubuntu/</link>
<pubDate>Sat, 31 Oct 2009 05:14:34 +0000</pubDate>
<dc:creator>brokenz1</dc:creator>
<guid>http://brokenz1.wordpress.com/2009/10/31/cara-install-cacti-di-ubuntu/</guid>
<description><![CDATA[Alhamdulillah, masih bisa nulis lagi nih Cacti merupakan software untuk memonitoring trafik jaringan]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p style="text-align:justify;">Alhamdulillah, masih bisa nulis lagi nih <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p style="text-align:justify;">Cacti merupakan software untuk memonitoring trafik jaringan dan menampilkan datanya dalam bentuk grafik yang mudah dimengerti dan dipahami tentunya disini merupakan software yang opensource. Sekarang kita mulai bagaimana cara menginstall cacti step by step :</p>
<p style="text-align:justify;"><!--more-->Karena saya menggunakan Ubuntu Sabily 9.04 maka harap disesuaikan saja apabila menggunakan distro yang berbeda <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' />  . Langkah pertama kita install dahulu software cacti beserta dependensi yang dibutuhkan :</p>
<p style="text-align:justify;">
<div id="_mcePaste" style="text-align:left;">
<div id="_mcePaste" style="text-align:left;">brokenz@brokenz:~$ sudo aptitude install mysql-server cacti snmpd</div>
<div id="_mcePaste" style="text-align:left;">[sudo] password for brokenz:</div>
</div>
<div style="text-align:left;">pada tahap installasi diatas kita diminta untuk mengisi password dan ikuti perintah sampai selesai (oya jangan lupa password nya <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> ). Dan sekarang saatnya mengkonfigurasi snmp :</div>
<div style="text-align:justify;">brokenz@brokenz:~$ cd /etc/snmp/</div>
<div style="text-align:justify;">brokenz@brokenz:~$ sudo cp snmpd.conf snmpd.conf.bak</div>
<div>
<div style="text-align:left;">
<div>
<div>brokenz@brokenz:~$ sudo -i</div>
<div>[sudo] password for brokenz:</div>
<div>Script started, file is /var/log/activities/20091031-11:58.18-root.log</div>
<div>
<div>root@brokenz:~# echo “rocommunity pr0xy” &#62; snmpd.conf</div>
<div>root@brokenz:~# exit</div>
<div>
<div>
<div>
<div>brokenz@brokenz:~$ sudo /etc/init.d/snmpd restart</div>
<div>* Restarting network management services:                               [ OK ]</div>
<div style="text-align:left;">Kemudian setelah service sudah kita restart, coba buka browser dan ketik alamat ini 127.0.0.1/cacti dan isikan</div>
</div>
</div>
<div style="text-align:justify;">Username : admin</div>
<div style="text-align:justify;">Password  : admin</div>
<div style="text-align:justify;">Seperti terlihat gambar dibawah</div>
</div>
<div><img class="aligncenter size-full wp-image-143" title="cacti1" src="http://brokenz1.wordpress.com/files/2009/10/cacti1.png" alt="cacti1" width="480" height="300" /></div>
</div>
<div style="text-align:justify;">dan inilah halaman home cacti yang sudah kita install, untuk konfigurasi cacti bagaimana cara menampilkan grafik di cacti akan saya bahas di tulisan berikutnya <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</div>
</div>
<div><img class="aligncenter size-full wp-image-144" title="cacti2" src="http://brokenz1.wordpress.com/files/2009/10/cacti2.png" alt="cacti2" width="480" height="300" /></div>
</div>
</div>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Monitoring NetApp: SNMP vs. NetApp API ]]></title>
<link>http://blog.netapp-monitoring.info/2009/10/28/monitoring-netapp-snmp-vs-netapp-api/</link>
<pubDate>Wed, 28 Oct 2009 16:07:29 +0000</pubDate>
<dc:creator>lanti</dc:creator>
<guid>http://blog.netapp-monitoring.info/2009/10/28/monitoring-netapp-snmp-vs-netapp-api/</guid>
<description><![CDATA[Zahlreiche Tools zur Überwachung von NetApp basieren auf dem Monitoring-Defacto-Standard SNMP. Diese]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><img class="alignleft size-thumbnail wp-image-11" title="NetApp-Nagios Überblick" src="http://netappmonitoring.wordpress.com/files/2009/10/netapp-nagios_ok-overview.png?w=150" alt="Überblick über NetApp-Service-Checks in Nagios" width="150" height="55" />Zahlreiche Tools zur Überwachung von NetApp basieren auf dem Monitoring-Defacto-Standard <em>SNMP</em>. Dieses Protokoll ist praktisch, da allgemein bekannt, weit unterstützt und leider auch uralt. Das zeigt sich zum Beispiel darin, dass heutige komplexe Systeme wie die Speichergeräte von NetApp eigene APIs bereitstellen, die auch bei komplexen Operationen noch übersichtlich programmatisch angesprochen werden können. Die NetApp-API ist unter anderem mit C, Java oder Perl anzusprechen. Somit war es für mich logisch, die <a title="NetApp Monitoring mit Nagios" href="http://netapp-monitoring.info/de/" target="_self">NetApp-Plugins für Nagios</a> in Perl zu entwicklen und dabei aber auf diese API zurück zu greifen.</p>
<p><a title="Article on NetApp's API" href="http://communities.netapp.com/blogs/fitforpurpose/2009/09/26/hello-netapp-manage-ontap-sdk-and-manageability-sdk" target="_blank">NetApp Manage ONTAP SDK</a> (NetApp Community Blog Article)</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[SCOM:  Combining a System.SnmpProbe and System.Performance.DeltaValueCondition Modules to Calculate SNMP Counter Delta Values]]></title>
<link>http://operatingquadrant.com/2009/10/14/scom-combining-a-system-snmpprobe-and-system-performance-deltavaluecondition-modules-to-calculate-snmp-counter-delta-values/</link>
<pubDate>Wed, 14 Oct 2009 22:18:07 +0000</pubDate>
<dc:creator>Kristopher Bash</dc:creator>
<guid>http://operatingquadrant.com/2009/10/14/scom-combining-a-system-snmpprobe-and-system-performance-deltavaluecondition-modules-to-calculate-snmp-counter-delta-values/</guid>
<description><![CDATA[I have previously written about using the combination of an SnmpProbe and script probe in Operations]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>I have <a href="http://operatingquadrant.com/2009/09/12/scom-advanced-snmp-monitoring-part-ii-designing-the-snmp-monitors/">previously</a> written about using the combination of an SnmpProbe and script probe in Operations Manager work flows to facilitate manipulation of numeric values.   While this is currently the only way to perform numeric operations, there are some cases in which the only required manipulation of a numeric value is the calculation of a delta between two polls, such as calculating the number of interface collisions in an interval (from the ifTable) or calculating the number of interface resets in a polling cycle (from the Cisco locIfTable).  In these cases, the SnmpProbe can be combined with a <strong>System.Performance.DeltaValueCondition</strong> condition detection module to calculate the delta value without having to engage a script probe.</p>
<p>The Performance.DeltaValueCondition module expects Performance Data as an input, so a System.Performance.DataGenericMapper must be used between the SnmpProbe and DeltavalueCondition modules to do the data conversion.   The DataGenericMapper accepts two options:  NumSamples and Absolute.   The NumSample parameter sets the number of value samples to maintain in memory, and the value returned is the difference between the first and last samples in memory.  The &#8220;Absolute&#8221; parameter, when true, causes the DeltaValueCondition module to return the delta as the raw difference between the samples, and when false, causes the module to return the percentage of change.</p>
<p>An example workflow can be represented in this diagram (the expression filter being used to validate the data returned from the SnmpProbe prior to continuing):</p>
<p><a href="http://jxjzig.bay.livefilestore.com/y1pl_EMplhzVnbcXJNGdN00e8QXFxgRSa-YXqVwOFDsJTY8FovHMyy6d1cy9Yaawhuw8EHZsguN105T3vRf3JKwiggjkGt4yAGR/DeltaWorkflow.jpg"><img class="alignnone" src="http://jxjzig.bay.livefilestore.com/y1pl_EMplhzVnbcXJNGdN00e8QXFxgRSa-YXqVwOFDsJTY8FovHMyy6d1cy9Yaawhuw8EHZsguN105T3vRf3JKwiggjkGt4yAGR/DeltaWorkflow.jpg" alt="" width="250" /></a></p>
<p> <!--more--></p>
<p>An example configuration of the DataGenericMapper in this workflow:</p>
<p><a href="http://jxjzig.bay.livefilestore.com/y1ptY_08CA2EuKP6uzoNOQdl1OtC7md5Mo9JZWCJGN4-ekJMVTFkxDfAjB7Z35Bg-zDo27I_WSeRiQAsimuVCCQHQ/deltamapper.jpg"><img class="alignnone" src="http://jxjzig.bay.livefilestore.com/y1ptY_08CA2EuKP6uzoNOQdl1OtC7md5Mo9JZWCJGN4-ekJMVTFkxDfAjB7Z35Bg-zDo27I_WSeRiQAsimuVCCQHQ/deltamapper.jpg" alt="" width="400" /></a></p>
<p>And an example configuration of the DeltaValueCondition module:</p>
<p><a href="http://jxjzig.bay.livefilestore.com/y1pREeVaSwhNF6djHs1ji6uvIaanx_1cWvHiDoZbEbQqEoOKFiOP31C4Guf1O2p0lpLW8falsV7rzTXA6DpwmeE4g/deltaconfig.jpg"><img class="alignnone" src="http://jxjzig.bay.livefilestore.com/y1pREeVaSwhNF6djHs1ji6uvIaanx_1cWvHiDoZbEbQqEoOKFiOP31C4Guf1O2p0lpLW8falsV7rzTXA6DpwmeE4g/deltaconfig.jpg" alt="" width="400" /></a></p>
<p>The output is in the System.PerformanceData format so the Value can be accessed with: /DataItem/Value in XPATH queries, or $Data/Value$ in value expressions.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Solaris uptime via SNMP]]></title>
<link>http://schmeits.wordpress.com/2009/10/07/solaris-uptime-via-snmp/</link>
<pubDate>Wed, 07 Oct 2009 17:27:35 +0000</pubDate>
<dc:creator>Davy</dc:creator>
<guid>http://schmeits.wordpress.com/2009/10/07/solaris-uptime-via-snmp/</guid>
<description><![CDATA[I have been very busy lately so I apologise for not posting anything sooner. I have some more stuff ]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>I have been very busy lately so I apologise for not posting anything sooner. I have some more stuff on the shelf, so check back for more posts or simply add me on your RSS tracker if you regularly check back to my blog. </p>
<p>Ok, so this one is quite useful for you Solaris geeks that need to report uptime of machines on a regular basis. You could login with SSH and type uptime for your hosts, but if you have SNMP enabled, you can use snmpget commands to get the info on your screen or web port. The setup is very simple.</p>
<p>To get the uptime of a Solaris 10 host with SNMP enabled, simply run the following command, where 10.10.10.10 is the IP of your Solaris host:<br />
<code><br />
root@server#  /usr/sfw/bin/snmpget -v 2c -c dtv_ro 10.10.10.10 sysUpTimeInstance<br />
</code><br />
The script below is a simple implementation of the command above, allowing you to add more IP addresses. You can alternative create an input file, which could be getting input from /etc/hosts. Obviously there are many ways of implementing this. I left it up to yourself to do that.<br />
<code><br />
#!/bin/sh</p>
<p>CMD="/usr/sfw/bin/snmpget -v 2c -c dtv_ro"<br />
OID="sysUpTimeInstance"<br />
IPS="10.10.10.10 10.10.10.11 10.10.10.12"<br />
DATE=`/usr/bin/date`</p>
<p>echo<br />
echo ${DATE}<br />
for ip in ${IPS}<br />
do<br />
        /usr/bin/printf "${ip}: "<br />
        ${CMD} ${ip} ${OID}<br />
done<br />
</code><br />
Enjoy! For any other OS simply change the path for SNMP.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[SCOM: WSH Vs. PowerShell Modules in Composite Workflows - Resource Utilization in SNMP Data Manipulation]]></title>
<link>http://operatingquadrant.com/2009/10/03/scom-wsh-vs-powershell-modules-in-composite-workflows-resource-utilization-in-snmp-data-manipulation/</link>
<pubDate>Sun, 04 Oct 2009 01:54:27 +0000</pubDate>
<dc:creator>Kristopher Bash</dc:creator>
<guid>http://operatingquadrant.com/2009/10/03/scom-wsh-vs-powershell-modules-in-composite-workflows-resource-utilization-in-snmp-data-manipulation/</guid>
<description><![CDATA[One of the realities of working with SNMP monitoring is that more often than not, the monitoring dat]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>One of the realities of working with SNMP monitoring is that more often than not, the monitoring data are presented in a raw form that requires some kind of manipulation in order to render meaningful output.  For example, required data manipulation may be a simple arithmetic operation on two values to calculate a percentage, or in the case of Counter data, mathematical operations based on the delta between values recorded in multiple polling cycles.  In Operations Manager, these manipulations require exiting the realm of managed code and utilizing script-based modules to perform the operations or facilitate temporary storage of values from previous polling cycles.  Two sets of modules are available for the Operations Manager –supported scripting engines: WSH and PowerShell.  To date, I had been opting to use VB scripts when authoring Management Packs for two reasons: 1) WSH is universally deployed in Windows environments whereas PowerShell is not necessarily so – by using VB scripts, there is no requirement to install Power Shell on proxy agents 2) I had assumed that the resource utilization impact of PowerShell was equal or greater than that of WSH.   I had assumed that PowerShell would carry a heavier impact based on the simple notion that if one were to watch process resource utilization when simply launching powershell.exe and cscript.exe, powershell.exe consumes more memory and CPU time (assuming WSH 5.7 is installed).  </p>
<p>The resource utilization of these script providers becomes a major concern particularly when implementing script-based modules in SNMP monitoring scenarios.   To illustrate this point, if a proxy agent were configured to proxy SNMP requests for 10 Cisco switches, with each of these switches having an average of 20 interfaces discovered, and each interface monitored with two monitors that utilize a script probe action to manipulate the raw SNMP data (e.g. collisions and octets), 400 scripts would be executed in a single polling cycle for just the interface monitors for this small scale monitoring scenario.  This poses a threat to the scalability of SNMP monitoring and could severely limit the number of devices/objects a single proxy agent can handle effectively.  </p>
<p>In the course of trying to find a way to address this scalability issue, I was fortunate enough to communicate with someone possessing a great deal of insight into Operations Manager who helpfully suggested that the PowerShell modules should be more efficient than WSH-based modules in composite workflows.  I rewrote all of the scripts in the Cisco MP to convert them from VB Script to PowerShell and began some testing.  I was familiar with the tighter integration of PowerShell in R2 modules (PS scripts no longer have to be launched as external commands), but to be honest, I was expecting to see a large number of powershell.exe processes spawned as the monitors fired.   However, this is not the case.  Rather, it looks to me that the modules are executing the PowerShell script through the .NET framework within the context of the monitoringhost.exe process.   This does appear to be more efficient overall, as the overhead associated with spawning new processes is effectively eliminated, and my impressions thus far are that CPU utilization overall is reduced.</p>
<p>However, switching from WSH scripts to PowerShell scripts in R2 workflows is a little bit of jumping from the frying pan and into the fire in that, instead of spawning a large number of processes each consuming relatively small amounts of processor and memory resources, the PowerShell script modules drive a single process (monitroinghost.exe) to consume a large quantity of resources, particularly CPU cycles.   Overall, memory utilization looks a lot better with the PowerShell modules, and although CPU utilization does seem to be better, it is still a concern for scalability. </p>
<p>Thus far, I have been doing this performance testing in a development environment, with OpsMgr running on some virtual machines on both on workstation and older server class hardware, neither of which provide a good indication of real-world scalability (particularly given the fact that I have these VM’s running SQL, all OpsMgr duties, and SNMP simulations to boot).  On one of these woefully over-utilized VM’s, something around 130-150 interfaces on 10 monitored Cisco devices seemed to be the breaking point, but a more realistic OpsMgr deployment scenario (segregated database, RMS, and MS duties) on physical hardware should be able to handle far more than that.   I will report an update once I get a chance to do some broader scalability testing with the PowerShell version of the MP on more appropriate hardware. </p>
<p>In summary, both the WSH and PowerShell probe and write action modules introduce a relatively heavy CPU load when utilized for data manipulation – relative to the very simple operations required to manipulate SNMP data, and a managed code module would be far more desirable, if available.  However, at present, these two providers are the only supported mechanisms for handling data that require processing before returning to a rule or monitor.   My testing thus far appears to support the assertion that R2 implements the PowerShell modules more efficiently than the WSH-based modules, which is welcome news, given the relative ease and impressive flexibility of scripting with PowerShell.  I’ve seen a bit of talk that PowerShell V2 is supposed to bring significant performance improvements over V1, and I hope to do some testing with the CTP version of V2 on an OpsMgr proxy agent in the very near future to see if it helps address any of the scalability challenges in SNMP monitoring with OpsMgr.  As for the best approach for the present, it looks like PowerShell is the way to go, and the overall impact on the MS/proxy agents can be mitigated by spreading monitored objects across multiple proxy agents, focusing discovery to only those objects which are required to be monitored (i.e. interfaces), and avoiding overly-aggressive scheduling of monitors.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[SCOM:  Building on the Net-SNMP MPs]]></title>
<link>http://operatingquadrant.com/2009/10/03/scom-building-on-the-net-snmp-mps/</link>
<pubDate>Sat, 03 Oct 2009 16:10:21 +0000</pubDate>
<dc:creator>Kristopher Bash</dc:creator>
<guid>http://operatingquadrant.com/2009/10/03/scom-building-on-the-net-snmp-mps/</guid>
<description><![CDATA[Due to the ubiquity of the Net-SNMP agent, the Net-SNMP management packs can be used for a wide rang]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Due to the ubiquity of the Net-SNMP agent, the <a href="http://operatingquadrant.com/2009/09/23/scom-updates-to-the-net-snmp-management-packs-v1-0-1-30/">Net-SNMP management packs</a> can be used for a wide range of UNIX/Linux devices, and one of my primary intentions in creating these management packs was to extend them to Linux-based proprietary platforms such as Check Point Secure Platform and VMWare ESX.  To that end, I am currently putting the finishing touches on management packs for Check Point Splat and VMWare ESX SNMP monitoring that reference the Net-SNMP Library MP. </p>
<p><strong>Check Point Secure Platform</strong></p>
<p>SPlat is a hardened Linux kernel, which conveniently supports the Net-SNMP agent for manageability.  The Check Point-specific SNMP objects are exposed through the extended Net-SNMP agent as described in the CHECKPOINT-MIB.   So in this case, the Net-SNMP Monitoring MP can be used for basic system health, while an additional Check Point MP can be added to monitor the Check Point software modules for availability status and Firewall/VPN/Etc performance metrics.  </p>
<p><a href="http://jxjzig.bay.livefilestore.com/y1pVAvo59nBKFNEdpYpD7epwNanTtKTNDfj8JdnYm00gmadCaDQ2pmXq1y7JTRfT3Hqt0a07ONeuDvWFOAl8jKtN3oA30nTIs-W/cpdiag.jpg"><img class="alignnone" src="http://jxjzig.bay.livefilestore.com/y1pVAvo59nBKFNEdpYpD7epwNanTtKTNDfj8JdnYm00gmadCaDQ2pmXq1y7JTRfT3Hqt0a07ONeuDvWFOAl8jKtN3oA30nTIs-W/cpdiag.jpg" alt="" width="400" /></a></p>
<p><strong>VMWare ESX &#8211; SNMP</strong></p>
<p>Of course, ESX server is a modified Red Hat Enterprise Linux distribution that also utilizes the Net-SNMP agent for SNMP support.  VMWare exposes ESX-specific objects to SNMP via dlMod extensions to the Net-SNMP agent, including VM Guest info and some performance metrics.   So, in VMWare environments, the host operating system can be monitored for health through traditional Net-SNMP-implemented MIBs (UCD-SNMP, HOST-RESOURCES), while VMWare-specific counters can be monitored through the use of the VMWare MIBs.  </p>
<p><a href="http://jxjzig.bay.livefilestore.com/y1pZkKhKyxOY37LRa4Q9ZUwxss-Wj1j50Mv762GZGLLzgYTNOrR1w0TfkynitjzX3jKgoCMNfFE3Ew3Qhbo5LBXa2B1SeFnXv6I/vmwarediag.jpg"><img class="alignnone" src="http://jxjzig.bay.livefilestore.com/y1pZkKhKyxOY37LRa4Q9ZUwxss-Wj1j50Mv762GZGLLzgYTNOrR1w0TfkynitjzX3jKgoCMNfFE3Ew3Qhbo5LBXa2B1SeFnXv6I/vmwarediag.jpg" alt="" width="400" /></a></p>
<p>When it comes to monitoring of VMWare,  the VMWare SNMP implementation has the advantage of being easy to deploy and rather lightweight, and given the likelihood that SNMP may be used in VMWare environments for full vendor hardware monitoring, the VMWare SNMP implementation is a good way to introduce some monitoring of the hypervisor virtualization layer.  That being said, the VMWare SNMP implementation does leave a lot to be desired; for example, alarms/events are only exposed in SNMP through traps, only a few performance counters are available, and many VMWare Infrastructure objects are not represented.    For more complete/comprehensive monitoring of VMWare environment, the only data provider choice seems to be the VMWare API.   I’m working on something along those lines presently, but I’ll post more on that at a later date.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[La potencia sin control, no sirve de nada: Monitorizar el CPD]]></title>
<link>http://murchan.wordpress.com/2009/10/02/la-potencia-sin-control-no-sirve-de-nada/</link>
<pubDate>Fri, 02 Oct 2009 04:33:57 +0000</pubDate>
<dc:creator>Iñaki Casajús</dc:creator>
<guid>http://murchan.wordpress.com/2009/10/02/la-potencia-sin-control-no-sirve-de-nada/</guid>
<description><![CDATA[Así reza el eslogan de un fabricante de neumáticos, y no le falta razón. Tambien viene al caso otra ]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Así reza el eslogan de un fabricante de neumáticos, y no le falta razón.</p>
<p>Tambien viene al caso  otra famosa frase:  &#8220;<em>Lo que mides es lo que tienes</em>&#8221; (Que afirma que si no se conoce el estado de algo, no es posible afirmar que funciona correctamente o se le saca todo el partido de que es capaz)</p>
<p>Ambas frases aportan algo tan simple como la necesidad que existe de medir y controlar todos los aspectos del centro de datos.</p>
<p>Hay ciertos aspectos fácilmente medibles, pero otros son de más difícil consecución.</p>
<p>Pongamos un ejemplo:</p>
<p><em>Se adquiere un switch con 48 puertos  Gigabit y una vez instalado se comienza a agregar tráfico por cada uno de esos puertos. Una vez se empieza a detectar que existe un descarte  de paquetes, colisiones de red u otros problemas es muy fácil detectar el problema pero hubiese sido más efectivo conocer que la CPU del dispositivo no puede con ese nivel de tráfico. El problema reside en que no todos los switches nos informan directamente de su nivel de carga de CPU,  throwput total y otros valores importantes que permitan conocer en cada momento el estado del mismo y el potencial de desempeño libre que dispone en cada momento.</em></p>
<p>Herramientas como los gestores SNMP, Nagios o  Network PRTG, por poner algunos de los más conocidos, son hoy en día indispensables en el centro de datos y permiten un control pormenorizado de los elementos y servicios .</p>
<p>Igualmente, cada elemento a incluir en el equipamiento del centro de datos debe ser compatible con protocolos de monitorización estandarizados, huyendo siempre de los métodos propietarios de unos u otros fabricantes.</p>
<p>De igual importancia son la correcta gestión de los mensajes, alertas, e-mails, alarmas sonoras y demás señales que estas herramientas generan y que deben ser tratadas, de forma automatizada unas y de forma manual otras.</p>
<div id="attachment_281" class="wp-caption aligncenter" style="width: 299px"><img class="size-full wp-image-281" title="VMWareVirtualSwitch" src="http://murchan.wordpress.com/files/2009/10/vmwarevirtualswitch1.png" alt="Switch Virtual" width="289" height="431" /><p class="wp-caption-text">Switches Virtuales</p></div>
<p>Un reto actual consiste en monitorizar con la misma capacidad, flexibilidad y potencia las redes virtuales que se están apoderando de los centros de datos. Los datos que pasan por los &#8220;virtual switch&#8221;, no son tan fáciles de monitorizar como lo son en este tipo de elementos físicos tradicionales y si bien es cierto que ya empiezan a surgir herramientas que facilitan estos menesteres, no se conseguirá un control  perfecto mientras estos switches virtuales no incluyan interfaces snmp, y módulos creados al efecto.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[virt-uname]]></title>
<link>http://rwmj.wordpress.com/2009/09/29/virt-uname/</link>
<pubDate>Tue, 29 Sep 2009 15:45:00 +0000</pubDate>
<dc:creator>rich</dc:creator>
<guid>http://rwmj.wordpress.com/2009/09/29/virt-uname/</guid>
<description><![CDATA[# virt-uname CentOS5x32 Guest System name CentOS5x32 Linux centos5x32.home.annexia.org 2.6.18-128.7.]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><pre style="background-color:#fcfcfc;border-left:6px solid #f0f0f0;margin-left:1em;font-size:120%;padding:5px;">
# <b>virt-uname CentOS5x32</b>
Guest            System name
CentOS5x32       Linux centos5x32.home.annexia.org 2.6.18-128.7.1.el5 #1 SMP Mon Aug 24 08:20:55 EDT 2009 i686
# <b>virt-uname CentOS5x32 --csv</b>
Guest,System name
CentOS5x32,Linux centos5x32.home.annexia.org 2.6.18-128.7.1.el5 #1 SMP Mon Aug 24 08:20:55 EDT 2009 i686
</pre>
<p>The query is done over an authenticated and encrypted SNMPv3 connection into the guest.  This requires that the guest is running snmpd, but the end game here would be to have snmpd installed routinely, with a minimal config that only answers localhost connections which are properly encrypted with the key known only by the host and the guest.</p>
<p><a href="http://git.et.redhat.com/?p=virt-tools.git;a=summary">Code here</a>, and <a href="http://rwmj.wordpress.com/2009/09/24/virt-ifconfig/">previous discussion</a>.</p>
<h3>Edit:</h3>
<pre style="background-color:#fcfcfc;border-left:6px solid #f0f0f0;margin-left:1em;font-size:120%;padding:5px;">
# <b>virt-uptime CentOS5x32</b>
Guest            Uptime
CentOS5x32       3 hours, 16:33.96
# <b>virt-ping </b>
Guest            Status
CentOS5x32       ok
</pre>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Controllare i parametri ambientali di una sala server tramite SNMP]]></title>
<link>http://maxdonati.wordpress.com/2009/09/28/controllare-una-sala-server-tramite-snmp/</link>
<pubDate>Mon, 28 Sep 2009 11:59:03 +0000</pubDate>
<dc:creator>maxdonati</dc:creator>
<guid>http://maxdonati.wordpress.com/2009/09/28/controllare-una-sala-server-tramite-snmp/</guid>
<description><![CDATA[In Azienda è ormai onni presente il problema del monitoraggio dei server e degli apparati di rete. O]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>In Azienda è ormai onni presente il problema del monitoraggio dei server e degli apparati di rete. Ormai molti software, anche Open Source, ci permettono di tenere sotto controllo funzioni cruciali delle nostre macchine quali risorse CPU, spazio disco, funzionamento di servizi o demoni unix ecc. Inoltre, i software che sono<!--more--> compatibili SNMP, ci danno la possibilità di controllare anche apparati normalmente più difficili da tenere sotto controllo, quali Router, Switch e altri apparati. Questi sistemi, adeguatamente configurati possono avvertire, tramite SMS, email o POPUP di eventuali problemi verificatisi sulle macchine.</p>
<p>Personalmente avevo un&#8217;altra necessità, controllare che la temperatura della sala server rimanesse entro certi parametri. L&#8217;idea era di trovare non un semplice termometro che allertasse in qualche modo in caso di pericolo, ma un apparato che fosse collegabile al nostro sistema di monitoraggio.</p>
<p>La scela è ricaduta sull&#8217;ENVIROMUX Mini di NTI (<a title="Enviromux Mini" href="http://www.networktechinc.com/enviro-mini.html" target="_blank">link</a>) un sistema a abbastanza economico (anche se il costo in Italia in Euro, è superiore al costo negli Stati Uniti in Dollari ndr) al quale è possibile collegare tutta una serie di sensori fra cui:</p>
<ul>
<li>Temperatura</li>
<li>Umidità</li>
<li>Allagamento</li>
</ul>
<p>e dispone inoltre di 4 contatti &#8220;switch&#8221; al quale collegare anche sensori fatti in casa (contatti apriporta o altri ad esempio) è inoltre monirotabile e configurbile via SNMP il che gli permette di essere visto anche da Zabbix (<a title="Zabbix" href="http://www.zabbix.org/">link</a>) il nostro sistema di monitoraggio.</p>
<p>Attualmente ho installato la 1.6.5 che ha la possiblità di lavorare utilizzando template per la configurazione veloce di apparati conosciuti. Una (grande) serie si trova già all&#8217;interno, e, dove sia utile farlo, è possibile crearne di personalizzati.</p>
<p>di Seguito ecco quello che ho creato per l&#8217;Enviromux da me acquistato. Premetto immediatamente che ho acquistato il solo sensore di temperatura, quindi Item monitorati e Trigger configurati sugli stessi sono relativi al solo sensore della temperatura. Nell&#8217;XML è presente un HOST già monitoratocon Indirizzo 10.10.10.10</p>
<p>Per utilizzarlo è sufficente copiare ed incollare in un file il codice XML <a title="Zabbix Wiki" href="http://www.zabbix.com/wiki/templates/start#misc">presente nella wiki del sito ZABBIX</a>, quindi importare nella sezione import/export della configurazione il file così ottenuto.</p>
<p><a title="Zabbix forum" href="http://www.zabbix.org/forum/showthread.php?p=51975#post51975">Qui il link</a> al Thread sul Forum Ufficiale contenente le presentazioni di tutti i template caricati dagli utenti</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[SCOM:  SP1 Edition of the Cisco Management Pack , v1.0.2.6]]></title>
<link>http://operatingquadrant.com/2009/09/26/scom-sp1-edition-of-the-cisco-management-pack-v1-0-2-6/</link>
<pubDate>Sun, 27 Sep 2009 03:50:14 +0000</pubDate>
<dc:creator>Kristopher Bash</dc:creator>
<guid>http://operatingquadrant.com/2009/09/26/scom-sp1-edition-of-the-cisco-management-pack-v1-0-2-6/</guid>
<description><![CDATA[I have completed the first version of the Cisco Management Pack for SP1 compatibility.  The monitori]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>I have completed the first version of the <a href="http://operatingquadrant.com/downloads/">Cisco Management Pack for SP1 </a>compatibility.  The monitoring in the management pack is identical to the R2 version of the MP, described most recently <a href="http://operatingquadrant.com/2009/09/26/scom-updates-to-the-cisco-management-pack-r2-v1-0-2-6/">here</a>.      Due to the dependence on the WMI SNMP provider for object discovery, there are inevitably some scalability limitations intrinsic to the SP1 edition of this MP, but I haven’t done enough full-scale testing to ascertain those limitations as of yet.   Additionally, deployment of this management pack requires some additional steps.   These steps are detailed below (taken from the MP documentation):</p>
<p style="line-height:14.25pt;"><span style="font-family:Georgia,serif;font-size:10pt;"><strong><strong>Prerequisites</strong></strong></span></p>
<p>This management pack utilizes the WMI SNMP provider to perform discovery of SNMP objects.  In order to use this management pack, the following steps <em>must</em> be completed <em>on each server that will function as a proxy agent</em> for SNMP-monitored Cisco devices.</p>
<p>Install the SNMP protocol and WMI SNMP provider</p>
<ul>
<li>To install these components, access Add/Remove Programs in the Control Panel, and select Add/Remove Windows Components.  Under Management and Monitoring select: Simple Network Management Protocol and WMI SNMP Provider</li>
</ul>
<p>The following MIBs must be exported to MOF files with smi2smir.exe and imported with MOFComp.exe:  CISCO-ENVMON-MIB and CISCO-MEMORY-POOL-MIB.  </p>
<ul>
<li>The MIBs and a batch file to perform these steps can be found in the /Setup directory included with this MP distribution.   Run the RegCiscoMibs.cmd file and check the output log: register.log to confirm that the mibs were successfully compiled and imported.</li>
</ul>
<p><strong>Recommended Proxy Agent Configuration</strong></p>
<p>If WMI receives too many requests in a short time, it may suspend processing of requests for a period of time.   This can impact the ability of this management pack to discover Cisco SNMP objects in a timely fashion (WMI SNMP is only used by this MP for discovery, and not object monitoring).   In order to minimize the chances of this situation occurring, the object discoveries in this MP should not be scheduled too aggressively.   Additionally, it is recommended that if a large number of Cisco SNMP devices are to be monitored, they should be distributed across multiple proxy agents for load-balancing of the WMI SNMP requests. </p>
<p>It is highly recommended that all agents that will function as proxy agents for SNMP devices have the Windows Script Host version 5.7 installed.  Version 5.7 is far more efficient than previous versions and reduces the resource utilization by the cscript.exe process dramatically.</p>
<p>It is also highly recommended that all agents that will function as proxy agents for SNMP devices have the hotfix: KB96163 applied.  This hotfix resolves instability with SNMP monitoring in Operations Manager 2007 SP1. <a href="http://support.microsoft.com/default.aspx/kb/961363">http://support.microsoft.com/default.aspx/kb/961363</a></p>
<p> </p>
<p>I&#8217;m interested to hear how this SP1 edition of the Cisco Management Pack functions in different environments, so any feedback is most certainl welcome.  I will continue to post updates to this site so be sure to check back regularly.   For more information about the scripts utilized in discoveries in this edition of the MP, <a href="http://operatingquadrant.com/2009/09/17/scom-advanced-snmp-monitoring-part-iv-making-the-cisco-mp-sp1-compatible/">this post </a>should sum it up.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[SCOM:  Updates to the Cisco Management Pack (R2) v1.0.2.6]]></title>
<link>http://operatingquadrant.com/2009/09/26/scom-updates-to-the-cisco-management-pack-r2-v1-0-2-6/</link>
<pubDate>Sat, 26 Sep 2009 16:13:00 +0000</pubDate>
<dc:creator>Kristopher Bash</dc:creator>
<guid>http://operatingquadrant.com/2009/09/26/scom-updates-to-the-cisco-management-pack-r2-v1-0-2-6/</guid>
<description><![CDATA[I&#8217;m hoping to finish up the SP1 version of the Cisco Management Pack pretty soon, but I&#8217;]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>I&#8217;m hoping to finish up the SP1 version of the Cisco Management Pack pretty soon, but I&#8217;ve modified the R2 version to include several new changes.  The current version: 1.0.2.6 can be downloaded <a href="http://operatingquadrant.com/downloads/">here</a>. </p>
<p>The changes in this version are:</p>
<ul>
<li>Added three new containment classes:  Cisco Device Chassis, Cisco Device System Components, and Cisco Device Interfaces.   These classes contain monitored objects to add an additional level of hierarchical organization.</li>
<li>Added discovery of the IFAlias property for Interfaces</li>
<li>Added discovery of the Hostname (OLD-CISCO-MIB) and Chassis description for the Cisco Device class.</li>
<li>Updated the properties displayed by default in the Device and Interface views</li>
<li>Added a rule to clean up unused XML temporary files once a day.   Several of the monitors utilize temporary XML files written to the %TEMP% path.  In the previous version, old files would be left on the file system if a previously monitored object was removed.  This rule will remove those temporary files.</li>
<li>Modified discovery intervals for some objects for more balanced timing.</li>
<li>Added four new monitors for switches that implement the CISCO-STACK-MIB.  The monitors are targeted at the Cisco Device Chassis class and include
<ul>
<li>Fan Alarm</li>
<li>Temperature Alarm</li>
<li>Minor Alarm</li>
<li>Major Alarm</li>
</ul>
</li>
</ul>
<p>With the new containment classes, the diagram view looks a lot better:</p>
<p><a href="http://jxjzig.bay.livefilestore.com/y1pMafmfBFSiU_uoBzaoxYIk6_kDuqZ0oOyhZnagfI178fIRaWYHgyQ3PhvGyKi-I3Bg1yz29_y7xOlFrAZRpDXTT0YGEeIv4FM/ciscodiagview1.jpg"><img class="alignnone" src="http://jxjzig.bay.livefilestore.com/y1pMafmfBFSiU_uoBzaoxYIk6_kDuqZ0oOyhZnagfI178fIRaWYHgyQ3PhvGyKi-I3Bg1yz29_y7xOlFrAZRpDXTT0YGEeIv4FM/ciscodiagview1.jpg" alt="" width="400" /></a></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[SCOM: Updates to the Net-SNMP Management Packs.  v1.0.1.30]]></title>
<link>http://operatingquadrant.com/2009/09/23/scom-updates-to-the-net-snmp-management-packs-v1-0-1-30/</link>
<pubDate>Thu, 24 Sep 2009 03:32:45 +0000</pubDate>
<dc:creator>Kristopher Bash</dc:creator>
<guid>http://operatingquadrant.com/2009/09/23/scom-updates-to-the-net-snmp-management-packs-v1-0-1-30/</guid>
<description><![CDATA[I&#8217;ve made a few minor updates to the Net-SNMP Management Packs, available at the same download]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>I&#8217;ve made a few minor updates to the Net-SNMP Management Packs, available at the same <a href="http://operatingquadrant.com/downloads/">download location</a>.   The changes in 1.0.1.30 are:</p>
<ul>
<li>Implemented new class:  Net-SNMP Monitored Process Instance, along with rules to collect and monitor process instance CPU and memory use.  Reference the MP documentation in the zip file (and the preceding post) for more information.</li>
<li>Updated all alerts to include the hosting device name.</li>
<li>Added a rule to periodically purge old temporary files used by the Interface Utilization data source.</li>
</ul>
<p>Any future updates will be posted to this blog, and thanks to everyone who has commented on these management packs. </p>
<p>Some screenshots of the new process instance monitoring capabilities:</p>
<p><a href="http://jxjzig.bay.livefilestore.com/y1p4c3ac9TbMTSTx198L6uu0tViY10fPoskJz5nO-VimUCjR959SMBEtzLZMs3ww4_ZqpMkuWadEBdxDNqW1Nje4E__n75WazEF/procdiagview.jpg"><img class="alignnone" src="http://jxjzig.bay.livefilestore.com/y1p4c3ac9TbMTSTx198L6uu0tViY10fPoskJz5nO-VimUCjR959SMBEtzLZMs3ww4_ZqpMkuWadEBdxDNqW1Nje4E__n75WazEF/procdiagview.jpg" alt="" width="400" /></a></p>
<p><a href="http://jxjzig.bay.livefilestore.com/y1pmtP6lNu8poYs5glQaj9QYtBj7p_GWlPgqAOYLdtnwLmSGmFIsdnEioA5fibJgHF-LkAYG7DD2X7tnMs4mgsJ8fDvyB57DHzZ/procperfview.jpg"><img class="alignnone" src="http://jxjzig.bay.livefilestore.com/y1pmtP6lNu8poYs5glQaj9QYtBj7p_GWlPgqAOYLdtnwLmSGmFIsdnEioA5fibJgHF-LkAYG7DD2X7tnMs4mgsJ8fDvyB57DHzZ/procperfview.jpg" alt="" width="400" /></a></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[SCOM:  UNIX/Linux Process Monitoring in the Net-SNMP MP In Detail]]></title>
<link>http://operatingquadrant.com/2009/09/23/scom-unixlinux-process-monitoring-in-the-net-snmp-mp-in-detail/</link>
<pubDate>Thu, 24 Sep 2009 01:03:02 +0000</pubDate>
<dc:creator>Kristopher Bash</dc:creator>
<guid>http://operatingquadrant.com/2009/09/23/scom-unixlinux-process-monitoring-in-the-net-snmp-mp-in-detail/</guid>
<description><![CDATA[Regardless of the operating system, monitoring of the availability and resource utilization of indiv]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Regardless of the operating system, monitoring of the availability and resource utilization of individual processes is a pretty standard requirement.  Between WMI and PerfMon counters, this is easy on Windows systems, but doing the same on UNIX/Linux systems can be a little bit more complicated.   In Operations Manager 2007 (R2) environments, there are three general approaches (excluding third party products) that can be utilized to monitor individual processes on UNIX and Linux systems:</p>
<ol>
<li>An agent-based solution using the R2 Cross Platform agents</li>
<li>A purely SNMP solution using tables in the HOST-RESOURCES MIB</li>
<li>An extended SNMP solution using the <em>proc</em> or <em>exec </em>directives in the Net-SNMP agent’s snmpd.conf file</li>
</ol>
<p>I think it’s fair to say that in most cases (and when it is supported), the R2 Cross Platform agent is the best and most robust approach.   However, it’s almost an inevitability in medium and large enterprises that there will be some UNIX or Linux servers or appliances running distributions not supported by the R2 agents.  In these cases, or if there is another compelling reason not to deploy agent software to the device, SNMP may be the best or only option.   The pure SNMP option is probably the most universally applicable approach, but introduces a number of challenges, which I will discuss in this post.  The third option brings a great degree of flexibility (particularly with the <em>exec</em> directive, which can return the result of an on-demand shell script to an SNMP OID) but requires decentralized configuration. </p>
<p>The approach that I took in the Net-SNMP Management Pack is a hybrid of the pure SNMP and extended SNMP options.  The latest version of the MP (which I will be posting soon) supports process resource utilization through the HOST-RESOURCES MIB tables in addition to process availability monitoring facilitated by identifying the monitored processes with the <em>proc</em> directive in snmpd.conf.  And as described in the previous post about the MP, if ultimate flexibility is needed, the Extensible Object capability with the <em>exec </em>directive is still supported.  </p>
<p><strong>UNIX/Linux SNMP Process Monitoring In-Depth</strong></p>
<p><!--more--><strong> </strong></p>
<p><strong>Availability Monitoring:</strong></p>
<p>While it would be possible to configure SNMP process monitoring in a centralized fashion by defining processes to be monitored on an  SNMP management server and then monitoring by walking the agent’s hrSwRun SNMP table, this poses a number of challenges with Operations Manager.   The challenges exist on multiple levels and may be best illustrated with some examples.</p>
<p>In the simplest scenario, suppose the monitoring requirement was to confirm that a particular process was running on a system, at least once.   An SnmpProbe could be configured to walk the hrSwRunName column in the hrSwRun table, with the output data items passed to an ExpressionFilter that matches the returned value to a defined process name variable.   For any match, the workflow would continue and could be passed to a monitor type.   However, if no match were found (indicating a problem), no data item would make it through the filter and there would be nothing to evaluate in subsequent modules.     </p>
<p>Even if a creative solution were implemented to get around the filtering issue, there is still an issue when the monitoring requirement is to monitor both a minimum and maximum number of instances of the process.   If the workflow of scheduler -&#62; SnmpProbe (walk) -&#62; Expression Filter were used in this scenario, every matched data item that passes through the Expression Filter would be handled distinctly.  There would be no easy way to calculate the count of the data items to derive a number of running processes, making this an unappealing option in most cases (I did utilize something like this in the Net-SNMP MP though, for more details, reference the discussion of the zombie process count below). </p>
<p>What I concluded to be a more reasonable approach is to utilize the process monitoring capabilities of Net-SNMP and require that processes to be monitored for availability (minimum and maximum counts) be configured with <em>proc</em> directives in the snmpd.conf.   Processes configured for monitoring in this fashion are then exposed in the UCD-SNMP prTable, which includes the process name, current count, an error flag value, and a pre-formatted error message.   With this information readily exposed, it is easy to discover the defined process monitors in this table as OpsMgr monitored objects and monitor the error flag (and collect the error message for alert descriptions).</p>
<p>For the sake of thoroughness, there are some conceivable scenarios where a Scheduler -&#62; SnmpProbe (walk) -&#62; Condition Detection workflow would be an ideal approach for monitoring.   For example, if the presence of a process in one or more instances indicated a problem condition, this workflow could be configured followed by an alert-generating write action which would fire an alert for every instance matched. </p>
<p><strong>Resource Utilization Monitoring</strong></p>
<p>Having settled on using the Net-SNMP agent’s process monitoring configuration for process availability monitoring, I deliberated on monitoring process resource utilization for some time (and skipped it altogether in the first version of the Net-SNMP MP).   Performance metrics (memory used and cpu time) can be accessed in the hrSwRunPerf table, and rows in the hrSwRunPerf table correspond to rows in the hrSwRun table through the Index values (which match the PID of the process on the agent).    This too poses a number of challenges which I will try to describe through hypothetical examples. </p>
<p>If one wanted to monitor for any process consuming memory above a certain threshold, the hrSwRunPerfMem column of the hrSwRunPerf table could be walked and filtered to match only processes that exceeded the threshold.   This could then be passed to an alert-generating write action.  However, the only values available in this SnmpDataItem would be the OID and the memory use value, which would not make for a very friendly alert description.  </p>
<p>Supposing the requirement was to monitor the memory utilization of a particular process, it would be even more difficult.   The hrSwRun table would have to be walked to find the OID of the process that had a matching name, and then this OID would have to be passed to a script probe to calculate the PID/Index, and then another SnmpProbe would have to be initiated to retrieve the values – made all the more complicated by the fact that there may be more than one instance of the process to monitor.</p>
<p>One way to work around these challenges is to forgo SNMP walks in the monitors, and use SNMP walks to periodically discover the processes in the hrSwRun table and their properties, and then use the discovered index to formulate specific OIDs for use by the SnmpProbe with SNMP get requests.   Running processes can be quite numerous and dynamic, so such an approach with discoveries would necessitate filtering by process name to restrict discovery only to processes to be monitored.    Because I had already decided on using the <em>proc </em>directive to facilitate process availability monitoring in the Net-SNMP MP, I decided to extend that configuration by adding a new class for Monitored Process Instances, which are hosted by the Monitored Process objects.   So, as it is configured in the MP, process monitoring items defined in the snmpd.conf are discovered (followed by a second property discovery).  Another discovery then walks the hrSwRun table to match process names in the table to already discovered Monitored Process objects, and then a final discovery discovers the properties of these monitored processes.    The Monitored Process object is monitored for availability by polling the prTable for the errorflag value, and data for the Monitored Process Instance objects are collected by polling the hrSwRunPerf table.   While the discoveries introduce some latency in the performance monitoring every time a PID changes, the assumption is that the processes singled out for monitoring will not be that variable as they likely represent production services that do not recycle with high frequency.</p>
<p><strong>Process CPU Monitoring with the hrSwRunPerf Table</strong></p>
<p>The reason I used the process memory utilization in the preceding examples is because the CPU utilization monitoring is more complex.  The hrSwRunPerfCpu object is an SNMP counter, indicating the number of centiseconds of total CPU time used by the process.   This value is only meaningful (similar to other SNMP counters like ifOctets in the ifTable) when two samples are compared over time.   If my math is correct, the calculation should be as follows:</p>
<p>There are 100 centiseconds in 1 second of “wall-clock” time (as the MIB describes it).  So, 100% of CPU time in 1 second would be 100 centiseconds.    50% of CPU time in 1 second would be 50 centiseconds.   25% of CPU time in 60 seconds would be 1500 centiseconds.   The formula to calculate percent of CPU (in decimal notation 0 – 1 ) would be <em>X = delta / (time * 100)</em>, thus  1500/(60 * 100) = .25.   The formula to return the percentage in a 0 – 100 value would be: <em>(delta * 100)/(time * 100)</em> or simply <em>delta/time</em>.   As for calculating the delta, I utilized a similar approach as in a number of monitors in the Cisco MP.  That approach is to maintain a small XML file in a temporary directory (%temp%\Custom_SNMPFiles\) for the each object to be monitored by this data source.   If an existing file is found, the data source (via a property bag script probe) compares the time stamp and preceding value (if they are recent enough) to the current values, returns the calculated values as a property bag, and then writes the current values to the XML file.   It should be noted that the MIB definition for the HrSwRunPerfCpu counter warns that multi-processor systems may report values in excess of &#8220;wall-clock&#8221; time, which could create percent utilization values above 100%.   However, I believe this is an issue that has been resolved in most UNIX/Linux distributions.  </p>
<p><strong>Zombie Process Monitoring</strong></p>
<p>I never fully understood why many UNIX monitoring packages included monitoring for zombie process until one instance many years ago when I was troubleshooting a problem on an AIX 4.3 server.  In the course of troubleshooting, I checked the running processes with a <em>ps –ef</em> command and was a bit suprised as thousands of processes scrolled by.  It may not be a common problem, but it was one that I wanted to include monitoring for in the Net-SNMP MP.   To implement this monitor, I utilized a collection rule that fires an SnmpProbe that walks the hrSwRun table and filters for processes with a status of Invalid.   Every match is passed to a script write action that writes the device IP and pid to a text file in a temporary directory.   The monitor itself utilizes a script which scans the temporary directory for files that match the device IP (and are recently modified) to tabulate a count of zombie processes.   This value is then compared to a threshold to determine health state.   To keep the monitoring script running in a reasonable time, it also cleans up old files in the temporary directory.   In some cases, it would be possible for the collecting data source to spawn a high number of cscript processes concurrently if many matches were found, but I don’t think this will be a problem as the condition should be relatively rare and the default threshold (25) is pretty low.   The chances of a high number of monitored hosts simultaneously having a high number of zombie processes concurrently are pretty low. </p>
<p> </p>
<p>While this has been a rather wordy post, I hope that I was able to illustrate some of the challenges in the monitoring of tabular SNMP objects with OpsMgr 2007 R2 and the methods that I implemented to address those challenges in the Net-SNMP MP.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[SCOM:  Net-SNMP Management Packs for UNIX/Linux Monitoring, Version 1.0.1]]></title>
<link>http://operatingquadrant.com/2009/09/21/scom-net-snmp-management-packs-for-unixlinux-monitoring-version-1-01/</link>
<pubDate>Tue, 22 Sep 2009 01:36:02 +0000</pubDate>
<dc:creator>Kristopher Bash</dc:creator>
<guid>http://operatingquadrant.com/2009/09/21/scom-net-snmp-management-packs-for-unixlinux-monitoring-version-1-01/</guid>
<description><![CDATA[I have completed version 1.0.1 of the Net-SNMP management packs for OpsMgr 2007 R2 , and I thought I]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>I have completed version 1.0.1 of the Net-SNMP management packs for OpsMgr 2007 R2 , and I thought I’d go ahead and share them.  At this point, my testing of the management packs has been on a small development network with Sun and CentOS servers, but so far everything is looking pretty good.   These management packs should provide a pretty good set of monitoring for UNIX and Linux servers that run the Net-SNMP agent, which includes Solaris, most Linux distributions, and even VMWare ESX and Checkpoint Secure Platform. </p>
<p>As I had discussed in my last post, there are two management packs in this set.  The Net-SNMP Library management pack defines the classes and performs discoveries.   This can be imported by itself to facilitate completely custom monitoring or to be referenced in other management packs.   The Net-SNMP Monitoring management pack implements a pretty standard set of monitors for UNIX/Linux server performance and availability monitoring and supports the Exec, Proc, and File directives of the Net-SNMP <a href="http://www.net-snmp.org/docs/man/snmpd.conf.html">agent configuration</a>. </p>
<p>The management packs can be downloaded <a href="http://operatingquadrant.com/downloads/">here</a>.  They are released under the GNU Public License and can be used, modified, and distributed freely, as long as the attribution remains intact. </p>
<p>Some screenshots:</p>
<p><a href="http://jxjzig.bay.livefilestore.com/y1pRBGiOgfZGSq5TLPeibRVsVFGl7OZG7_Du9HFpqUqAUSLsG0COQzXEO6gXDF1SEXyedLseriHyx9_kalQZ6RgzaYljPiZPURb/diagramview.jpg"><img class="alignnone" src="http://jxjzig.bay.livefilestore.com/y1pRBGiOgfZGSq5TLPeibRVsVFGl7OZG7_Du9HFpqUqAUSLsG0COQzXEO6gXDF1SEXyedLseriHyx9_kalQZ6RgzaYljPiZPURb/diagramview.jpg" alt="" width="400" /></a></p>
<p><!--more--></p>
<p><a href="http://jxjzig.bay.livefilestore.com/y1p28UFU4XSGbl4Y_VuuJX1kEHCXKiWaBBjZGAKZkiWM9UPGGsUqTGCOatQmVd3e7P9sefANYnQDr5dkw5QU92LXLyNhN8WqV08/healthexplorer.jpg"><img class="alignnone" src="http://jxjzig.bay.livefilestore.com/y1p28UFU4XSGbl4Y_VuuJX1kEHCXKiWaBBjZGAKZkiWM9UPGGsUqTGCOatQmVd3e7P9sefANYnQDr5dkw5QU92LXLyNhN8WqV08/healthexplorer.jpg" alt="" width="400" /></a></p>
<p><a href="http://jxjzig.bay.livefilestore.com/y1pzfGfXt7jB0H4Pt8mZpqQCy9tjXqzfHk2O2dKoz5NxErSSMXdjmacHkYrvXL-Vlkm_fYJEJQpuifISevOYMs1VDZ5ljBs1_zN/PerfView.jpg"><img class="alignnone" src="http://jxjzig.bay.livefilestore.com/y1pzfGfXt7jB0H4Pt8mZpqQCy9tjXqzfHk2O2dKoz5NxErSSMXdjmacHkYrvXL-Vlkm_fYJEJQpuifISevOYMs1VDZ5ljBs1_zN/PerfView.jpg" alt="" width="400" /></a> </p>
<p>More details can be found in the documentation included in the .zip file, but here’s the abbreviated list of monitors and rules in the Net-SNMP Monitoring MP:</p>
<p><strong>Monitors</strong></p>
<p>Net-SNMP Device</p>
<ul>
<li>Net-SNMP CPU Context Switches per Second</li>
<li>Net-SNMP CPU Interrupts per Second</li>
<li>Net-SNMP CPU Percent Idle</li>
<li>Net-SNMP CPU System Percent Utilization</li>
<li>Net-SNMP CPU User Percent Utilization</li>
<li>Net-SNMP Percent Real Memory Free</li>
<li>Net-SNMP Percent Swap Memory Free</li>
<li>Net-SNMP Zombie Process Count Monitor</li>
</ul>
<p>Net-SNMP Network Interface</p>
<ul>
<li>Net-SNMP Network Interface Status</li>
<li>Net-SNMP Network Interface Percent Utilization</li>
</ul>
<p>Net-SNMP Monitored Extensible Object</p>
<ul>
<li>Net-SNMP Extensible Object Status</li>
</ul>
<p>Net-SNMP Monitored File</p>
<ul>
<li>Net-SNMP Monitored File Status</li>
</ul>
<p>Net-SNMP Monitored File</p>
<ul>
<li>Net-SNMP Monitored Process Status</li>
</ul>
<p>Net-SNMP Volume</p>
<ul>
<li>Net-SNMP Volume Percent Utilization</li>
</ul>
<p><strong>Rules</strong></p>
<p>Net-SNMP Device</p>
<ul>
<li>Alert on Net-SNMP Device Rebooted</li>
<li>Collect Net-SNMP Total Available Memory</li>
<li>Collect Net-SNMP Swap Memory Percent Free</li>
<li>Collect Net-SNMP Real Memory Percent Free</li>
<li>Collect Net-SNMP Number of Current Users</li>
<li>Collect Net-SNMP Number of Current Processes</li>
<li>Collect Net-SNMP I/O Sent</li>
<li>Collect Net-SNMP I/O Received</li>
<li>Collect Net-SNMP CPU Interrupts per Second</li>
<li>Collect Net-SNMP CPU User Percent Utilization</li>
<li>Collect Net-SNMP CPU System Percent Utilization</li>
<li>Collect Net-SNMP CPU Percent Idle</li>
<li>Collect Net-SNMP CPU Context Switches per Second</li>
<li>Collect Net-SNMP Zombie Processes</li>
</ul>
<p>Net- SNMP Network Interface</p>
<ul>
<li>Collect Net-SNMP Network Interface Out Percent Utilization</li>
<li>Collect Net-SNMP Network Interface In Percent Utilization</li>
</ul>
<p>Net-SNMP Volume</p>
<ul>
<li>Collect Net-SNMP Volume Percent Utilization</li>
</ul>
<p>Be sure to check back here for updates to these management packs and if you give thema try, I&#8217;d love to hear your impressions or suggested changes!</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[SCOM:  A Net-SNMP Management Pack for UNIX Monitoring, Part I - Desiging the MP]]></title>
<link>http://operatingquadrant.com/2009/09/19/scom-a-net-snmp-management-pack-for-unix-monitoring-part-i-desiging-the-mp/</link>
<pubDate>Sat, 19 Sep 2009 18:06:17 +0000</pubDate>
<dc:creator>Kristopher Bash</dc:creator>
<guid>http://operatingquadrant.com/2009/09/19/scom-a-net-snmp-management-pack-for-unix-monitoring-part-i-desiging-the-mp/</guid>
<description><![CDATA[The Net-SNMP agent is a cross-platform SNMP agent that is often bundled with UNIX (e.g. Solaris) and]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>The Net-SNMP agent is a cross-platform SNMP agent that is often bundled with UNIX (e.g. Solaris) and Linux distributions (including VMWare and Checkpoint Splat).   The agent implements some relatively standard MIBs, such as the UC Davis (UCD-SNMP-MIB) and HOST-RESOURCES MIBs, exposing a good selection of operating system metrics for monitoring.  Furthermore, the agent is remarkably extensible in a few different ways.  The agent can be extended with “dlMod” module extensions to integrate additional SNMP components, such as the VMWare or HP Insight Management Agent modules.   Additionally, the Net-SNMP agent can be configured to proxy for another SNMP agent listening on a different port, which is how the Sun SunFire Management Agent is typically configured.   Lastly, the Net-SNMP agent provides the ability to define processes, files, extensible objects, load average objects, and disks for specific monitoring.  For each of these, directives are configured in snmpd.conf with parameters and thresholds, and an SNMP table is exposed that will return the monitored value and status value to an SNMP poll, on-demand.   I had previously  posted <a href="http://operatingquadrant.com/2009/08/18/sun-hardware-monitoring-with-net-snmp-and-shell-scripts/">an article</a> on using the ext (Extensible Object/Arbitrary Extension) capabilities of the Net-SNMP agent to utilize shell scripts for monitoring of Sun hardware.   With this degree of flexibility, it’s easy to understand why the Net-SNMP agent is so widely utilized.</p>
<p><strong>Design Approach for the Net-SNMP Management Pack</strong></p>
<p>Building on the lessons learned from developing the Cisco Management Pack, I wanted to create a management pack with similar capabilities for monitoring of Net-SNMP agents, followed by a set of management packs for monitoring of vendor-specific hardware (e.g. HP Proliant servers running Linux).   After some thought, I decided that it would be advantageous to split the Net-SNMP management pack into two separate management packs, one that defines the base classes and performs discovery of the classes and one for the actual monitoring.   The reason for this is that I wanted a base management pack without any actual monitoring functions so that it could easily (and more flexibly) be reused for future hardware monitoring management packs.   To illustrate this point, if the native UNIX agent capabilities of R2 are being used to monitor OS-level objects, there is still a need to discover the Net-SNMP agent and create base classes for use in SNMP-based hardware monitoring, but in this case, monitoring OS-level objects with SNMP and the OpsMgr agent would be redundant.  With the multiple MP approach, just the base Net-SNMP management pack could be imported along with the hardware monitoring management packs, skipping the Net-SNMP monitoring management pack altogether.  Additionally, I wanted to leave the monitoring management pack unsealed for easy customization, and MP references can only be made to sealed management packs.  In this way, the Net-SNMP Library MP will be sealed, but the monitoring MP can remain unsealed.</p>
<p><strong>The Net-SNMP Library Management Pack</strong></p>
<p><!--more--><strong></strong></p>
<p>As described above, this management pack just defines the Net-SNMP object classes and performs the discovery of these objects.  The discovery methodology is pretty much the same as in the Cisco Management Pack, but I did do some things a bit differently.  Most notably, I added an additional layer of classes in the containment hierarchy.   In this management pack, the Net-SNMP Device class hosts a set of containment classes such as Network Interfaces, Volumes, and Monitored Processes.  These classes in turn host the actual objects to be monitored:  Network Interface, Volume, and Monitored Process.  My motivation for this was primarily to keep the object relationships more neatly organized, particularly when viewing the objects in a Diagram View.   This does add a slight degree of complexity, but I think the benefits of having a more usable Diagram View justify the additional complexity. </p>
<p>I chose to create hosted classes for the following objects:  Network Interfaces, Volumes (logical disks and memory pools from the hrStorage table), Monitored Processes, Monitored Files, and Monitored Extensible Objects.   I ignored the customizable Load Average and Disk monitoring capabilities of the Net-SNMP agent because those objects can be monitored through existing SNMP objects in the UCD-SNMP and HOST-RESOURCES MIBs and I wanted to keep the monitoring configuration within OpsMgr as much as possible (instead of in the agent snmpd.conf).   The Files, Processes, and Extensible Objects monitoring capabilities of the Net-SNMP agent cannot easily be replicated with other SNMP monitors, so I included those to maintain a high degree of monitoring extensibility. </p>
<p>The class diagram for the Net-SNMP Library MP is:</p>
<p><a href="http://jxjzig.bay.livefilestore.com/y1p40jBlb3xncF9QyZmis02VrfuMW5h53KWdo6rQICfmIqI0Z2K6buV348hOCyCETk8dWWdAH98Ejqv3yyIQ8CU7Q/ClassDiagram.jpg"><img class="alignnone" src="http://jxjzig.bay.livefilestore.com/y1p40jBlb3xncF9QyZmis02VrfuMW5h53KWdo6rQICfmIqI0Z2K6buV348hOCyCETk8dWWdAH98Ejqv3yyIQ8CU7Q/ClassDiagram.jpg" alt="" width="400" /></a></p>
<p><strong>Results</strong></p>
<p>With just the NetSNMP.Library MP imported, the Diagram View is a pretty good demonstration of the MP in action:</p>
<p><a href="http://jxjzig.bay.livefilestore.com/y1plzMV3YscTW1F6z6Kn8srg6HWp9G5Wq6ghfrqeBMWPI9GVr-hH33-WEvZgT3DMtdNo6CGaYcr2cDdNoXU7CqfMw/screen1.jpg"><img class="alignnone" src="http://jxjzig.bay.livefilestore.com/y1plzMV3YscTW1F6z6Kn8srg6HWp9G5Wq6ghfrqeBMWPI9GVr-hH33-WEvZgT3DMtdNo6CGaYcr2cDdNoXU7CqfMw/screen1.jpg" alt="" width="400" /></a></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[SCOM: Advanced SNMP Monitoring Part IV: Making the Cisco MP SP1 Compatible]]></title>
<link>http://operatingquadrant.com/2009/09/17/scom-advanced-snmp-monitoring-part-iv-making-the-cisco-mp-sp1-compatible/</link>
<pubDate>Thu, 17 Sep 2009 16:20:42 +0000</pubDate>
<dc:creator>Kristopher Bash</dc:creator>
<guid>http://operatingquadrant.com/2009/09/17/scom-advanced-snmp-monitoring-part-iv-making-the-cisco-mp-sp1-compatible/</guid>
<description><![CDATA[As previously mentioned, the Cisco Management Pack that I have been describing in the past several p]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>As previously mentioned, the Cisco Management Pack that I have been describing in the past several posts is specific to OpsMgr R2, due to its reliance on the capability of the System.SnmpProbe’s function to return multiple items in an SNMP walk, which is a feature introduced in R2.   My intention was to design the management pack so that it could easily be made SP1 compatible by substituting the discovery methodology, but keeping the classes and monitoring objects intact.   I am still doing more testing to finalize the SP1 version, but in this post, I am going to introduce the discovery methods that I have implemented for SP1 compatibility.</p>
<p>In general, when dealing with SNMP objects stored in tables, options in SCOM 2007 SP1 are a bit limited.  If the table objects are static, rules could be configured targeting specific OID’s, but this is unlikely to be a common scenario.   Another option (and a quite good one) would be to segregate monitoring duties between SCOM (for servers and applications) and a task-specific SNMP monitoring tool like SolarWinds or JalaSoft for SNMP device monitoring.   But for the purposes of this management pack, the option I pursued involves wrapping an external SNMP provider in WSH scripts to perform the discovery.   I chose to use the WMI provider because of its easy use in VBscripts and object-oriented capabilities, but something like the Net-SNMP binaries could be called with ShellExec methods in a vbs script to accomplish the same goal.  </p>
<p>Before I get into the use of the WMI SNMP provider in this MP, there is some background information that should be discussed.  Firstly, when the WMI SNMP provider is installed, it includes support only for the RFC-1213 MIB.   In order to use the WMI SNMP provider for OID’s not in the RFC-1213 MIB, the MIB files must be converted to MOF files with smi2smir.exe and then imported with mofcomp.exe.    This can get a bit tricky, largely depending on how well constructed the vendor’s MIB is and the dependencies of the MIB.   Once these steps are completed, the WMI SNMP provider exposes SNMP objects as collections that can be accessed natively in VBscripts.   However, the WMI provider is not terribly scalable and when overloaded with requests, WMI will cease to function in a timely fashion.   I had done some testing with using the WMI SNMP provider for rules and monitors, but decided against this approach due to the ease with which the provider can be overloaded when monitoring a handful of objects with reasonably aggressive frequencies.   On the other hand, discoveries are not as time-sensitive as monitors/rules and don’t need to run as frequently, so by using the WMI SNMP provider for discoveries, and the System.SnmpProbe provider for monitors and rules, this hybrid approach should remain pretty scalable. </p>
<p><strong>Implementation Overview</strong></p>
<p><!--more--></p>
<p><strong>Installing the WMI SNMP Provider</strong></p>
<p>The WMI SNMP Provider can be installed through the Control Panel’s Add/Remove Programs (or Program and Features for 2008) applet, by select Add/Remove Windows Features, then selecting the WMI SNMP Provider (and SNMP if it isn’t installed) under Management and Monitoring Tools.</p>
<p><strong>Registering MIB’s with the WMI Provider</strong></p>
<p>To register MIBS with the WMI SNMP Provider, they must first be converted to MOF files with smi2smir.exe and then imported with mofcomp.exe.  Both of these can be found under the %systemroot%\system32\wbem\ directory, with smi2smir.exe being in the \snmp subdirectory.  If the MIB file has dependencies on other MIBs, they must also be available and specified in the smi2smir.exe command.   To illustrate this, to create an MOF file for the CISCO-ENVMON-MIB, the command ends up as:</p>
<p><em>%SYSTEMROOT%\system32\wbem\snmp\smi2smir.exe /g CISCO-ENVMON-MIB.mib CISCO-SMI.mib &#62; CISCO-ENVMON.MOF</em></p>
<p>Then the mofcomp.exe import can be run with:</p>
<p><em>%SYSTEMROOT%\system32\wbem\mofcomp.exe CISCO-ENVMON.MOF</em></p>
<p>For the purposes of this management pack, all WMI SNMP discovered objects are available in the RFC-1213, Cisco-EnvMon, and Cisco-Memory-Pool mibs, so only two MIBs have to be imported.   The monitors/rules will continue to use the System.SnmpProbe, which can target an OID without importing the MIB.</p>
<p><strong>Querying the Snmp Provider</strong></p>
<p>Once the MOF is registered with the WMI SNMP provider, a VBScript can instantiate the provider and represent an SNMP table as a collection object, such as:</p>
<blockquote><p>Set objWMILocator = CreateObject(&#8220;WbemScripting.SWbemLocator&#8221;)<br />
Set objWMIServices = objWMiLocator.ConnectServer(&#8220;&#8221;,&#8221;root\snmp\localhost&#8221;)<br />
Set objWmiNamedValueSet = CreateObject(&#8220;WbemScripting.SWbemNamedValueSet&#8221;)<br />
objWmiNamedValueSet.Add &#8220;AgentAddress&#8221;, cstr(DeviceIP)<br />
objWmiNamedValueSet.Add &#8220;AgentReadCommunityName&#8221;, cstr(CommStr)</p>
<p>Set colPowerSupplies = objWmiServices.InstancesOf(&#8220;SNMP_CISCO_ENVMON_MIB_ciscoEnvMonSupplyStatusTable&#8221;, , objWMINamedValueset)</p>
<p>For each objItem in colPowerSupplies<br />
   sDesc = objItem.ciscoEnvMonSupplyStatusDescr<br />
  nIndex = objItem.ciscoEnvMonSupplyStatusIndex<br />
Next</p></blockquote>
<p>By using this in a script discovery probe, the values retrieved from WMI SNMP can be used to discover objects and properties all in one script.  Continuing with teh Cisco power supply example, the objectdiscovery portion of the script would look something like:</p>
<blockquote><p>set oInst = oDiscoveryData.CreateClassInstance(&#8220;$MPElement[Name='CiscoSNMP.Class.CiscoDevice.PowerSupply']$&#8221;)<br />
call oInst.AddProperty(&#8220;$MPElement[Name='MicrosoftSystemCenterNetworkDeviceLibrary!Microsoft.SystemCenter.NetworkDevice']/IPAddress$&#8221;, DeviceIP)<br />
call oInst.AddProperty(&#8220;$MPElement[Name='CiscoSNMP.Class.CiscoDevice.PowerSupply']/Index$&#8221;, cdbl(nIndex))<br />
call oInst.AddProperty(&#8220;$MPElement[Name='System!System.Entity']/DisplayName$&#8221;, sDesc) <br />
call oDiscoveryData.AddInstance(oInst)               </p></blockquote>
<p>At the risk of going too far off on a tangent, I’ve come upon a few idiosyncrasies in working with the WMI SNMP provider for this MP.  The first peculiarity is that the index value in the Cisco EnvMon tables is properly populated. When browsing the Cisco EnvMon objects with a MIB browsing utility or using the System.SnmpProbe, these index values are not populated, so I&#8217;m not sure why it works with WMI SNMP and not these other more traditional methods.   The second peculiarity is that I have found that in some cases, octetstrings are not properly converted to text strings when using the WMI SNMP Provider.  Specifically, the names of some of the Cisco EnvMon objects would be returned as hex strings for some objects and text strings for others.   To work around this issue, I added a little function in the discovery scripts that attempts to convert the names from hex to strings, and only uses the converted value if no errors were trapped in the conversion (which should indicate that it is actually a hex string).  This function looks like:</p>
<blockquote><p>Function HexToString(str)<br />
                on error resume next<br />
                sOutput = &#8220;&#8221;<br />
                For x = 1 To len(str) Step 2<br />
                                sChar = Chr(Clng(&#8220;&#38;h&#8221; &#38; Mid(str,x,2)))<br />
                                sOutput = sOutput &#38; sChar<br />
                Next<br />
                if err.number = 0 then<br />
                                HexToString = sOutput<br />
                Else<br />
                                HexToString = str<br />
                end if<br />
End Function</p></blockquote>
<p>Other than the discoveries, everything else in the MP should remain pretty much unchanged (unless something unexpected is exposed in testing).</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[SCOM:  Updates to the Cisco Management Pack]]></title>
<link>http://operatingquadrant.com/2009/09/17/scom-updates-to-the-cisco-management-pack/</link>
<pubDate>Thu, 17 Sep 2009 15:24:32 +0000</pubDate>
<dc:creator>Kristopher Bash</dc:creator>
<guid>http://operatingquadrant.com/2009/09/17/scom-updates-to-the-cisco-management-pack/</guid>
<description><![CDATA[I have uploaded version 1.01.27 of the Cisco Management Pack.   This minor update includes a few fix]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>I have uploaded version 1.01.27 of the <a href="http://operatingquadrant.com/downloads/">Cisco Management Pack</a>.   This minor update includes a few fixes and some new features added in response to some helpful comments from readers who have tried this MP out.  The changes in this version are:</p>
<ol>
<li>Group Population rules have been fixed so that they can be edited in the GUI</li>
<li>Performance data collection has been modified to not collect data when the interface is in a partially discovered state.  This should prevent duplication of performance counters for interfaces going forward.   Because the Interface discovery occurs in two parts: 1) discovering the interfaces and 2) discovering the interface properties, I added a property to the Interface class named: Discovered.  When the Interface discovery runs (which just discovers the index), the discovered property will be set to False.  Once the Interface Property discovery runs, this property will be set to True.   The performance collection rules have been modified to only collect data if this property is set to true. </li>
<li>Index discovery can now be filtered with a RegEx expression for a device via an override (create the override on the Discover Cisco Interfaces discovery).   By default, the RegEx expression:  (.&#124;..&#124;…) will be used to discover interfaces, which will discover all interfaces with indexes with 1, 2, or 3 digits in length.  To filter by interface index, the expression can be modified to:  (1&#124;2&#124;3&#124;10&#124;15) where the numbers are the index values for the interfaces to be discovered, separated by pipe characters.   The override for this filter can be targeted at all Cisco devices, a group, or specific devices.</li>
<li>I have added a new property to the Interface class named:  “Speed &#8211; Override.”  This property allows for manually defining a speed value for the interface to be used in utilization calculations.  There are two scenarios where this is useful: 1) sometimes the value reported in the RFC-1213 ifTable for an interface’s speed isn’t accurate, and 2) if an Ethernet port is the last monitored hop before a lower bandwidth wide-area connection (i.e. the vendor equipment is not monitored), it can be useful to monitor the Ethernet port as if its speed were equivalent to the wide-area connection bandwidth.   For example, if a switch is the last monitored device before connecting to a vendor-managed MetroE connection with a maximum bandwidth of 500Mbit, monitoring utilization on the gigabit switch port will be more accurate if the speed were overridden to 500Mbit.  This property can be set with an override on the Discover Cisco Interface Properties object discovery, by setting the OverrideIFSpeed value to the desired speed, in bits per second.</li>
</ol>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[SCOM: Advanced SNMP Monitoring Part III: The Completed Cisco Management Pack]]></title>
<link>http://operatingquadrant.com/2009/09/14/scom-advanced-snmp-monitoring-part-iii-the-completed-cisco-management-pack/</link>
<pubDate>Tue, 15 Sep 2009 00:00:14 +0000</pubDate>
<dc:creator>Kristopher Bash</dc:creator>
<guid>http://operatingquadrant.com/2009/09/14/scom-advanced-snmp-monitoring-part-iii-the-completed-cisco-management-pack/</guid>
<description><![CDATA[Note:  Updates to this MP are described here. I still have some more full-scale testing to complete,]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Note:  Updates to this MP are described <a href="http://operatingquadrant.com/2009/09/26/scom-updates-to-the-cisco-management-pack-r2-v1-0-2-6/">here</a>.</p>
<p>I still have some more full-scale testing to complete, but I have finished the first version of the Cisco monitoring management pack that I have described in the last few posts.   This version is R2 only, but I hope to have an SP1 version of it complete soon.  The management pack can be downloaded <a href="http://operatingquadrant.com/downloads/">here</a>.  </p>
<p><a href="http://jxjzig.bay.livefilestore.com/y1pF1APSvoa1g8Z3ogMWMJRES5wxJttRWONmQcqh03bfexCqpfV3NUYj2x5iqgcO_M8miPOR9ESY_49SOL7-_2DGCj7LF_U_Ofm/screen1.JPG"><img class="alignnone" src="http://jxjzig.bay.livefilestore.com/y1pF1APSvoa1g8Z3ogMWMJRES5wxJttRWONmQcqh03bfexCqpfV3NUYj2x5iqgcO_M8miPOR9ESY_49SOL7-_2DGCj7LF_U_Ofm/screen1.JPG" alt="" width="400" /></a></p>
<p><a href="http://jxjzig.bay.livefilestore.com/y1pmHN7OawS8AXDXHai7F3ysJyNOyjXnexnDTdiD99WOMoYqIZ9lZ-Qepx13G2osvBaDk3FTAfEOHRi4WigNudT9ZSh5TOf6H9V/screen2.JPG"><img class="alignnone" src="http://jxjzig.bay.livefilestore.com/y1pmHN7OawS8AXDXHai7F3ysJyNOyjXnexnDTdiD99WOMoYqIZ9lZ-Qepx13G2osvBaDk3FTAfEOHRi4WigNudT9ZSh5TOf6H9V/screen2.JPG" alt="" width="400" /></a></p>
<p><!--more--></p>
<p><a href="http://jxjzig.bay.livefilestore.com/y1pbg3DwNH_pFnqP6VLgKwkvUMsiy-prn525TYAreqre8YU7Allc3uzBBI9lO9A6ilgAm0SSV_ibQ5VuERd2GW5sXHpUKt3F-av/screen3.JPG"><img class="alignnone" src="http://jxjzig.bay.livefilestore.com/y1pbg3DwNH_pFnqP6VLgKwkvUMsiy-prn525TYAreqre8YU7Allc3uzBBI9lO9A6ilgAm0SSV_ibQ5VuERd2GW5sXHpUKt3F-av/screen3.JPG" alt="" width="400" /></a></p>
<p>I have decided to license this management pack under the <a href="http://www.gnu.org/licenses/agpl.txt">GNU Public License</a>; so in short, you are free to use, modify or distribute it as long as any distribution maintains the original attribution.   Be sure to check back at this site for updates to the management pack, and feel free to let me know if you come upon any issues with this management pack or want to request additional features.</p>
<p>More complete documentation of the management pack can be found in the zip file, but the management pack elements are as follows:</p>
<p><strong>Classes</strong></p>
<ul>
<li>Cisco Device</li>
<li>Cisco Interface</li>
<li>Cisco Power Supply</li>
<li>Cisco Fan</li>
<li>Cisco Temperature Sensor</li>
<li>Cisco Memory Pool</li>
</ul>
<p><strong>Groups</strong></p>
<ul>
<li>Cisco Devices</li>
<li>Cisco Ethernet Interfaces</li>
<li>Cisco Serial Interfaces</li>
</ul>
<p><strong>Monitors</strong></p>
<ul>
<li>Cisco Device Default GW Changed Monitor: <br />
Monitor that detects and alerts on changes to the device’s default gateway, as defined in the IP route table.</li>
<li>Cisco Device CPU Utilization Monitor: <br />
Monitor that generates an alert on high CPU utilization.</li>
<li>Cisco Interface Status Monitor: <br />
Monitor that generates an alert when the OperStatus for the interface is not up.  Alert is only generated when AdminStatus is up. </li>
<li>Cisco Serial Interface Flapping Monitor: <br />
Monitor that generates an alert when the ifResets counter for the interface increases by more than 2 in a polling cycle. </li>
<li>Cisco Interface Collisions Monitor: <br />
Monitor that generates an alert when the collisions reported on an interface increase by more than 25 in a polling cycle. </li>
<li>Cisco Interface Utilization Monitor: <br />
Monitor that generates an alert when the percentage of inbound or outbound utilization is above 85.</li>
<li>Cisco Power Supply Status: <br />
Monitor that generates an alert when the power supply status is not ok.</li>
<li>Cisco Fan Status Monitor: <br />
Monitor that generates an alert when the fan status is not ok. </li>
<li>Cisco Temperature Sensor Status Monitor: <br />
Monitor that generates an alert when the temperature sensor status is not ok.</li>
<li>Cisco Memory Pool Utilization Monitor: <br />
Monitor that generates an alert when the utilization of the memory pool is greater than 90 percent.</li>
</ul>
<p><strong>Rules</strong></p>
<ul>
<li>Collect Cisco CPU Utilization 5min:<br />
Rule that collects the average CPU load over the past five minutes for performance reporting</li>
<li>Alert on Cisco Device Rebooted:<br />
Rule that generates an alert when the SysUptime is less than 10 minutes, indicating a reboot</li>
<li>Collect Interface In Utilization:<br />
Rule that collects the percentage of inbound interface utilization for performance reporting, calculated from the change in ifInOctets in the past polling cycle and divided by the interface speed.</li>
<li>Collect Interface Out Utilization:<br />
Rule that collects the percentage of outbound interface utilization for performance reporting, calculated from the change in ifOutOctets in the past polling cycle and divided by the interface speed.</li>
<li>Collect Cisco Interface Collisions:<br />
Rule that collects the number of collisions recorded for the interface in the last polling cycle for performance reporting.</li>
<li>Collect Cisco Memory Pool Utilization:<br />
Rule that collects the percentage of memory pool utilization determined from the free and available bytes counters, for performance reporting</li>
<li>Collect Cisco Temperature Sensor Data:<br />
Rule that collects the reported temperature value of a temperature sensor for performance reporting. </li>
</ul>
<p><strong>Views</strong></p>
<ul>
<li>Cisco Device Alerts:  Alerts view</li>
<li>Cisco Device Performance:  Performance view</li>
<li>Cisco Devices: State view</li>
<li>Cisco Fans:  State view</li>
<li>Cisco Interfaces:  State view</li>
<li>Cisco Memory Pools:  State view</li>
<li>Cisco Power Supplies:  State view</li>
<li>Cisco Temperature Sensors:  State view</li>
</ul>
</div>]]></content:encoded>
</item>

</channel>
</rss>
