Quantcast
Channel: THWACK: Document List - Network Performance Monitor
Viewing all 1956 articles
Browse latest View live

Configuring SNMP Version 3 on AIX

$
0
0

It took me a while to get the right combination of AIX SNMP Version 3 settings that will work with Authentication & Privacy enabled for Solar Winds.

Hopefully the steps below will help you get it working too. A list of sources which provided the clues I needed is at the end, its a long one as no single place had everything you will need. Hopefully this doco corrects that.

 

AIX Configuration

These steps worked ok on "AIX 6 TL08" and "AIX 7 TL 03".

 

  • Install the snmp.crypto fileset to enable encryption (Obtained mine from AIX 6 Expansion Pack DVD 5765-G62 11/2012)

> lslpp -cl snmp.crypto

#Fileset:Level:PTF Id:State:Type:Description:EFIX Locked

/usr/lib/objrepos:snmp.crypto:6.1.2.0::COMMITTED:I:56-bit DES Encrypted SNMPV3 Support:

/etc/objrepos:snmp.crypto:6.1.2.0::COMMITTED:I:56-bit DES Encrypted SNMPV3 Support:

 

  • Backup the /etc/rc.tcpip file as it's about to be modified
  • Turn on encryption with the snmp switch command:

> /usr/sbin/snmpv3_ssw -e

This command will create symbolic links as required to enable/disable the encrypted/non-encrypted versions of snmpd & clsnmp

  • Confirm and update /etc/rc.tcpip so that the following lines are no longer commented. Comment out dpid2 if it hasn't already been by the above.

---cut---

# Start up the Simple Network Management Protocol (SNMP) daemon

start /usr/sbin/snmpd "$src_running"

 

# Start up the hostmibd daemon

start /usr/sbin/hostmibd "$src_running"

 

# Start up the snmpmibd daemon

start /usr/sbin/snmpmibd "$src_running"

 

# Start up the aixmibd daemon

start /usr/sbin/aixmibd "$src_running"

---cut---

It looks like /usr/sbin/dpid2 functionality has been rolled into one of the above from at least AIX 6 TL08 onwards.

  • Backup your existing snmp configuration files

---cut---

/etc/snmpdv3.conf

/etc/clsnmp.conf

/etc/snmpd.boots

/etc/snmpd.peers

---cut---

  • Pick one of your servers /etc/snmpd.boots files and make that file uniform across all your servers. Here's an example of its contents:

---cut---

00000002000000000A454172 0000000082

---cut---

The first value is your EngineID, which can be something you made up, or one provided by the vendor. The second is the number of times snmp has been restarted. If you ensure this file is consistent across your AIX servers you can reuse your /etc/snmpdv3.conf file across them all. In turn, you can reuse the credentials when adding the nodes to Solarwinds. The auth/priv keys are married to the EngineID and won't work on another server if the EngineID is different there.

  • Generate a new auth key with your local EngineID.

---cut---

pwtokey -e -u auth <auth password> $(cat /etc/snmpd.boots | cut -f2 -d' ')

 

Display of 16 byte HMAC-MD5 privKey:

5xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0

 

Display of 16 byte HMAC-MD5 localized privKey:

axxxxxxxxxxxxxxxxxxxxxxxxxxxxxx5

---cut---

Make a note of the non-localized key value. E.g 5xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 of the two above. Also ensure you make a note of the passwords of course. You _must_ use the passwords when adding the node to Solarwinds. Attempts to use the key instead met with failure, likely due to the need for the EngineID to be paired up with the key somehow (context field didn't help).

  • Generate a new priv key with your local EngineID. Again you're only interested in the non-localized key value. I'll use axxxxxxxxxxxxxxxxxxxxxxxxxxxxxx7 below for this.

---cut---

pwtokey -e -u priv <priv password> $(cat /etc/snmpd.boots | cut -f2 -d' ')

---cut---

  • Clear your command history if you're worried about maintaining the privacy of these keys (good habit but a touch paranoid!)

---cut---

> ~/.sh_history

---cut---

  • Update the /etc/clsnmp.conf file so it has an entry for local snmp testing. I'm using swro aka Solar-Winds-Read-Only. I might dabble with read-write later and want them segregated. Plug in your freshly generated auth/priv keys.

---cut---

/etc/clsnmp.conf

 

#winSnmpName  targetAgent  admin  secName  password  context secLevel authProto  authKey                           privProto  privKey

#----------------------------------------------------------------------------------------------------------------------------------------------------------

swro          127.0.0.1    snmpv3 swro     -         -       AuthPriv HMAC-MD5   5xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0  DES axxxxxxxxxxxxxxxxxxxxxxxxxxxxxx7

---cut---

You can replace the first "swro" with the local server name if you like. In fact multiple duplicate lines with each server/IP (and consistant snmpd.boots & snmpdv3.conf files) will allow you to kick off clsnmp commands from this server to any other that has been updated with this process. Handy if you want to setup scripting to pull specific MIB/OID values etc from all servers etc.

  • Update your snmpd.peers file to ensure it has the details required for the snmpd process to access other components (e.g hostmibd/snmpmibd etc) for specific MIB/OID resources.

---cut---

/etc/snmpd.peers

 

###############################################################################

#

"gated"     1.3.6.1.4.1.2.3.1.2.1.2     "gated_password"

"dpid2"     1.3.6.1.4.1.2.3.1.2.2.1.1.2 "dpid_password"

"muxatmd" 1.3.6.1.4.1.2.3.1.2.3.1.1 "muxatmd_password"

#

# Enables cpu & volume information visibility to snmpd

"xmtopas"       1.3.6.1.4.1.2.3.1.2.1.3 "xmtopas_pw"

#

## EOF

---cut---

The default AIX set of "passwords" is being used above (and in the following snmpdv3.conf) which should get you sorted. Sing out if you spot any issues with this approach as it depends on locking out non-local access to snmpd via the snmpdv3.conf file except for auth/priv key holders.

For example, I didn't have an entry here for xmtopas. Once I put that in place the SolarWinds discovered resources list suddenly included "Volume Utilization" values aka filesystem and logical volume info. Once selected they appear in the "Asset Inventory" tab under logical volumes.

  • Update your /etc/snmpdv3.conf file with the one below. Swap out the auth/priv keys with the ones you generated above.

---cut---

##

## Solar Winds Specific Entries

##

#

USM_USER swro 00000002000000000A454172 HMAC-MD5 5xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 DES axxxxxxxxxxxxxxxxxxxxxxxxxxxxxx7 N -

#

VACM_GROUP swrogrp - swro readonly

#

VACM_VIEW swroview internet                    - included -

VACM_VIEW swroview 1.3.6.1.4.1.2               - included -

VACM_VIEW swroview 1.3.6.1.4.1.2.2             - included -

VACM_VIEW swroview 1.3.6.1.4.1.2.3             - included -

VACM_VIEW swroview 1.3.6.1.4.1.2.5             - included -

VACM_VIEW swroview 1.3.6.1.4.1.2.6             - included -

VACM_VIEW swroview directory                   - included -

VACM_VIEW swroview mgmt                        - included -

VACM_VIEW swroview mib-2                       - included -

VACM_VIEW swroview system                      - included -

VACM_VIEW swroview aix                         - included -

VACM_VIEW swroview 1.3.6.1.4                   - included -

VACM_VIEW swroview 1.3.6.1.6                   - included -

VACM_VIEW swroview 1.3.6.1.6.3.1.1.5           - included -

VACM_VIEW swroview 1.3.6.1.4.1.2021            - included -

VACM_VIEW swroview 1.3.6.1.4.1.2.3.1.2.2.2.1.4 - included -

#

# Include snmpv3 managed MIBs with this view

VACM_VIEW swroview snmpModules                 - included -

# Include aixmibd managed MIBS with this view

VACM_VIEW swroview 1.3.6.1.4.1.2.6.191         - included -

#

VACM_ACCESS swrogrp - - AuthPriv - swroview - sworoview -

 

 

##

## AIX Internal SNMP Agent Specific Entries

##

#

# Allow localhost(only) SNMPv1 general access

COMMUNITY public public noAuthNoPriv 127.0.0.1 255.255.255.255  -

VACM_GROUP group1 SNMPv1  public  -

VACM_ACCESS  group1 - - noAuthNoPriv SNMPv1   defaultView - defaultView -

#

VACM_VIEW defaultView internet                    - included -

# Exclude snmpv3 related MIBs from the default view

VACM_VIEW defaultView snmpModules                 - excluded -

VACM_VIEW defaultView 1.3.6.1.6.3.1.1.4           - included -

VACM_VIEW defaultView 1.3.6.1.6.3.1.1.5           - included -

# Exclude aixmibd managed MIBS from this view

VACM_VIEW defaultView 1.3.6.1.4.1.2.6.191         - excluded -

#

# Access to data from gated/muxatmd/xmservd/dpid

smux   1.3.6.1.4.1.2.3.1.2.1.2   gated_password  # gated

smux   1.3.6.1.4.1.2.3.1.2.3.1.1   muxatmd_password #muxatmd

smux   1.3.6.1.4.1.2.3.1.2.1.3   xmservd_pw   #xmservd

smux   1.3.6.1.4.1.2.3.1.2.2.1.1.2   dpid_password   #dpid

#

#

# These entries appear to be for IBM director at a guess

#  They allow it to participate with the above

#VACM_GROUP director_group SNMPv2c public -

#VACM_ACCESS director_group - - noAuthNoPriv SNMPv2c defaultView - defaultView -

#

# Trap definitions

NOTIFY notify1 traptag trap -

TARGET_ADDRESS Target1 UDP 127.0.0.1 traptag trapparms1 - - -

TARGET_PARAMETERS trapparms1 SNMPv1  SNMPv1  public  noAuthNoPriv -

 

 

##

## Global Defaults

##

#

# Set no access unless explicitly allowed by previous entries

DEFAULT_SECURITY no-access - -

#

# Set log location, maximum size, log level

logging         file=/usr/tmp/snmpdv3.log       enabled

#logging         size=100000                     level=0

logging         size=100000                     level=2

#

## EOF

---cut---

Still a work in progress locking down the AIX Internal SNMP agents and of course getting the right set of MIB included in the Solar Winds view. At least now I've something working I can fine tune and will be looking at other related posts here.

  • Stop all snmp related services

---cut---

stopsrc -s snmpmibd;stopsrc -s aixmibd;stopsrc -s snmpd;stopsrc -s hostmibd;stopsrc -s dpid2

---cut---

  • Start all snmp related servers (excluding the now redundant dpid2)

---cut---

startsrc -s snmpmibd;startsrc -s aixmibd;startsrc -s snmpd;startsrc -s hostmibd

---cut---

  • Test things out locally by using the walk option on clsnmp (yup, IBM included a cleverly disguised snmpwalk command). I'm using the "internet" MIB in this example, lots of output!

---cut---

clsnmp -h swro walk internet

---cut---

If you get an error here, odds are you've a mismatched EngineID and auth/priv keys. Check out your /usr/tmp/snmpdv3.log for more details. As mentioned earlier the "swro" here is a reference to the matching line in /etc/clsnmp.conf. A server name could be used here (if defined there) instead and would result in a remote test.

  • Once the dust settles, turn down the log level in snmpdv3.conf (level=0) to avoid excessive logging for daily operation.

 

Solar Winds Configuration

 

It should now be possible to add this node in Solarwinds.

Key Values

  • SNMP Version: SNMPv3
  • SNMPv3 Username: swro
  • SNMPv3 Authentication Method: MD5
  • SNMPv3 Authentication Password: Use the password from pwtokey above (don't use the key, it doesn't work)
  • SNMPv3 Privacy Method: DES56
  • SNMPv3 Privacy Password: Use the password from pwtokey above (don't use the key, it doesn't work)

 

Hit the test button to see if all is ok. If it isn't make sure the services have been started and check the snmpdv3.log for more clues (especially the "did solar winds get here at all" clue).

 

As I've standardized the /etc/snmpd.boot and /etc/snmpdv3.conf files across the estate I can re-use these credentials and have saved them as "aix-swro".

swSNMP01.png

 

 

Update 09/11/2015 - Post AIX upgrade (TL08/SP02 -> TL09/SP04) - Repair links to encrypted binaries

 

After the upgrade the links to the alternate, encrypted binaries for SNMP were reset to the default non-encrypted ones. This wasn't immediately apparent on Solarwinds until you try to "List Resources" for the node, which fails.

Solarwinds error: "<node> is currently down, unreachable, or provided credentials are not valid"

 

  • Login as root on the target server
  • Attempt an snmp walk to confirm this is the same problem

> clsnmp -h swro walk internet 1>/dev/null

Error reading file /etc/clsnmp.conf(Line 46):    Invalid securityLevel

clsnmp: 1473-406 Error converting destinationName swro to Entity.

  • Check the current snmp binaries being linked to

> ls -la /usr/sbin/snmpd /usr/sbin/clsnmp

lrwxrwxrwx 1 root system 9 Oct 14 12:02 /usr/sbin/snmpd -> snmpdv3ne

lrwxrwxrwx 1 root system 9 Oct 14 12:02 /usr/sbin/clsnmp -> clsnmpne

  • Change the links to the encrypted snmpd binary with the command:

> snmpv3_ssw -e

In /etc/rc.tcpip file, comment out the line that contains: dpid2

In /etc/rc.tcpip file, remove the comment from the line that contains: snmpmibd

Stop daemon: snmpdMake the symbolic link from /usr/sbin/snmpd to /usr/sbin/snmpdv3e

Make the symbolic link from /usr/sbin/clsnmp to /usr/sbin/clsnmpe

Start daemon: snmpd

  • Check the linked binary again

> ls -la /usr/sbin/snmpd /usr/sbin/clsnmpe

lrwxrwxrwx 1 root system 18 Nov 09 14:49 /usr/sbin/snmpd -> /usr/sbin/snmpdv3e

lrwxrwxrwx 1 root system 18 Nov 09 14:49 /usr/sbin/clsnmp -> /usr/sbin/clsnmpe

  • On the solarwinds console, retry "list resources" on the node to confirm all is ok again

 

Sources

- IBM Doco

-- IBM SNMPv3 Documentation [http://www-01.ibm.com/support/knowledgecenter/api/content/ssw_aix_71/com.ibm.aix.networkcomm/snmpv3_intro.htm]

-- Creating users in SNMPv3 in AIX [http://www-01.ibm.com/support/knowledgecenter/api/content/ssw_aix_71/com.ibm.aix.networkcomm/HT_commadmn_create_snmpv3_user.htm#create_snmpv3_user]

-- AIX 7.1 snmpdv3.conf file setup [http://www-01.ibm.com/support/knowledgecenter/ssw_aix_71/com.ibm.aix.files/snmpdv3.conf.htm?lang=en]

-- IBM SNMP key generation [http://publib.boulder.ibm.com/infocenter/aix/v6r1/index.jsp?topic=/com.ibm.aix.commadmn/doc/commadmndita/snmpv3_genkeys.htm]

-- Using the clsnmp command [http://www-01.ibm.com/support/knowledgecenter/ssw_aix_53/com.ibm.aix.cmds/doc/aixcmds1/clsnmp.htm?cp=ssw_aix_53%2F1-2-0-2-122&lang=en]

--- Useful to test an snmp configuration as this can interrogate your snmp server to confirm its working ok.

- Solar Winds Doco

-- Solarwinds SNMPV3 Implementation Guide [http://www.solarwinds.com/support/Orion/docs/Implementing_SNMPv3r1.pdf]

-- Managing SNMP credentials guidelines [http://www.solarwinds.com/netperfmon/solarwinds/wwhelp/wwhimpl/js/html/wwhelp.htm]

- Solar Winds Forums

-- Example SNMPv3 Configuration on AIX from Solarwinds forum [https://thwack.solarwinds.com/message/249258]

-- Help with SNMPv3.1 on AIX [http://thwack.solarwinds.com/thread/42695]

-- Using SNMPv3.1 on AIX [http://thwack.solarwinds.com/thread/36507]

-- Configuring 3rd party Net-SNMP [http://thwack.solarwinds.com/thread/19323]

-- AIX Specific mods [http://thwack.solarwinds.com/community/application-and-server_tht/server-and-application-monitor/content?filterID=content~category[application-monitor-templates]&filterID=content~objecttype~objecttype[document]&query=unix]

- Make AIX a Solarwinds client on snmpv3 [http://odme.blogspot.com.au/2012/09/make-aix-solarwinds-client-on-snmpv3.html]

- Configuring AIX snmpd for MIB subagent access [http://odme.blogspot.com.au/2012/09/snmpdv3-wont-talk-to-mib-subagents.html]

-- The aixmbid, snmpmibd and similar subsystems depend on snmp to talk to each other! Here's the settings they use to do so.

-- Very detailed setup of the AIX snmpd for MIB subagent config including extra mib defaultviews [http://forums.cacti.net/viewtopic.php?t=19040]

- Nagios setup for snmp [http://nagios.frank4dd.com/howto/aix-snmp-setup.htm]

-- Examples on using snmpwalk

-- Example snmpdv3.conf for Nagios with highlights for nagios specifics

- [http://lparbox.com/how-to/powerha-cluster/21]

- [http://www.mcpressonline.com/system-administration/techtip-monitoring-aix-with-snmp.html]

- Using snmpwalk [http://www.net-snmp.org/tutorial/tutorial-5/commands/snmpv3.html]


Google Maps Integration

Google Maps in Orion NPM - How to Video

$
0
0

I've made some changes to the original Google Maps that I introduced about this time last year. This version provides a status icon on the map for each unique latitude and longitude value in the database. I'm leaving the old one up as it is better for environments where a large number of sites exist, and would simply be too cluttered with a status icon at each site.

 

Prerequisites:

1) Obtain Google API Key for Maps v3

2) Create and populate Custom Properties:

  • Country
  • City
  • Latitude
  • Longitude

 

Installation:

Copy files to the c:\inetpub\SolarWinds\Orion\GoogleMap\

Update your connection string and API key

Create a view in NPM using the Custom HTML resource, configure iFrame

 

See the movie (how to install the mod):

2013-07-25_10-43-25 - YouTube

 

Read the book (asp files, readme, notes on GitHub):

https://gist.github.com/BarefootAtomic/a396a12541ff97a2ce1f

 

map.png

 

 

Enjoy!

 

Andrew LaGrone, SCP#1368

95th Percentile Bandwidth Utilization using Netflow- IPGroups-Pxx1h

All IP Addresses on a node - potential replacement resource

How to trim, remove, or truncate domain names discovered and displayed in NPM 11.5.2 and NCM 7.4

$
0
0

If you are unhappy with NPM displaying the FQDN information of your network equipment for any reason (e.g.: the domain section takes up too much space in your diagrams and documents), I followed this process to trim the domain names off:

 

1.    RDP into the NCM server

2.    Backup the database:  http://www.mssqltips.com/sqlservertutorial/25/creating-a-backup-using-sql-server-management-studio/

3.    Open Database Manager on the NCM server (Start > All Programs > SolarWinds Orion > Advanced Features > Database Manager)

4.    Click Add Default Servers

5.    Click the + sign to expand the Instance

6.    Click Execute query

7.    Click Enable table editing

8.    Edit the value.

 

In the example below my goal was to remove the domain suffixes from NPM's discovery of our switches.  The domain names all began with .med

 

You can remove everything after the first dot by including only the decimal (.) between the single quotes (example:  '.' ) or include the dot and the first characters of any domains you wish to trim.

 

 

UPDATE [dbo].[NodesData]

SET Caption = (

   SELECT RTRIM(SUBSTRING(

     Caption,1,((

      Select CASE

       WHEN (CharIndex('.med',Caption)>0)

       THEN (CharIndex('.med',Caption)-1)

       ELSE (LEN(Caption))

       END))

       )

     )

)

 

9.      Click on a white blank page to save the changes

10.    Click Execute query to see if the changes have been saved

 

Kudos to Isaac Effinger for boldness, and Edwin Karl Ambrose from SolarWinds Technical Support for helping a SQL novice achieve a cosmetic task.

 

Here's hoping this process works for other versions of NPM and NCM!

 

Swift Packets!

 

Rick S.

Automatically balance nodes against multiple polling engines.

$
0
0

To give a little back, here's a script that I developed.

PROBLEM:

We have multiple people adding nodes to additional pollers, and they don't choose the one with the least nodes currently being polled. This was leading to some bottlenecks in our environment with some of our pollers reaching over 95% polling rate and others down at 10%. I created the attached script that:

  • Calculates the cost of each node, (Number of volumes, interfaces and IPSLA operations on each node)
  • Balances these nodes out across the all the additional pollers based on cost.
  • Only nodes that are in maintenance mode get assigned to the main poller as it is working hard enough.

 

Solution:

Attached SQL script is run as an SQL server Agent T-SQL job weekly.

 

 

Cisco ASR Showing 95% 98% Memory Used.

$
0
0

Since we are seeing very frequent issue with ASR Memory Consumption . Let me try to explain in a little details.

 

Issue: Cisco ASR Showing 95 % / 98 %  Memory Consumed.

Cisco ASR.PNG

 

 

Troubleshooting :-

When we checked with PollerChecker Tool we found no other Memory Poller are been responded by the Device.


SolarWinds Knowledge Base :: How to Use the Poller Checker Tool

pollerchecker.PNG

ONLY Responded Memory Poller is CiscoGen3


We then checked from the CiscoGen3 Memory poller i found following .


EXPLANATION OF EACH OID TABLE FUNCTION

cisco MemoryPoolName 1.3.6.1.4.1.9.9.48.1.1.1.2

Cisco ciscoMemoryPoolUsed 1.3.6.1.4.1.9.9.48.1.1.1.5

Cisco CiscoMemoryPoolFree 1.3.6.1.4.1.9.9.48.1.1.1.6

 

NAME OF MEMORY

.1.3.6.1.4.1.9.9.48.1.1.1.2.1 = STRING: "processor"

.1.3.6.1.4.1.9.9.48.1.1.1.2.6 = STRING: "reserved"

.1.3.6.1.4.1.9.9.48.1.1.1.2.7 = STRING: "image"

 

TOTAL MEMORY USED BY EACH NAME

.1.3.6.1.4.1.9.9.48.1.1.1.5.1 = GAUGE32: 1791774344

.1.3.6.1.4.1.9.9.48.1.1.1.5.6 = GAUGE32: 134217728

.1.3.6.1.4.1.9.9.48.1.1.1.5.7 = GAUGE32: 66994200

 

TOTAL PORTION OF MEMORY FREE

.1.3.6.1.4.1.9.9.48.1.1.1.6.1 = GAUGE32: 86892544

.1.3.6.1.4.1.9.9.48.1.1.1.6.6 = GAUGE32: 0

.1.3.6.1.4.1.9.9.48.1.1.1.6.7 = GAUGE32: 0

 

CALCULATION :

 

TOTAL USED MEMORY

1791774344 + 134217728 + 66994200 = 1992386272

TOTAL FREE MEMORY

0+0+86892544 = 86892544

TOTAL MEMORY

1992386272 + 86892544 = 2079278816

% MEMORY  UTILIZATION

1992386272 % 2079278816  = 95.8 %

 

/// <summary>

/// Memory poller for devices which support CISCO-MEMORY-POOL MIB (various Cisco devices)

/// <support pollertype="N.Memory.SNMP.CiscoGen3">

/// Poller utilizes GetSubtree request to gather used memory using OID:

/// ciscoMemoryPoolUsed = 1.3.6.1.4.1.9.9.48.1.1.1.5

/// Poller utilizes GetSubtree request to gather free memory using OID:

/// ciscoMemoryPoolFree = 1.3.6.1.4.1.9.9.48.1.1.1.6

/// Used memory is computed as SUM of all ciscoMemoryPoolUsed returned values.

/// Free memory is computed as SUM of all ciscoMemoryPoolFree returned values.

/// Total memory is computed as SUM of used and free memory.

 

 

Conclusion:-

By calculation above provided by the Node OID tables values .


Orion is marked the memory correctly by consuming 95% .

 

However We found the device is responded to following Poller for memory calculation other then the standard Cisco .CISCO-ENHANCED-MEMPOOL-MIB

 

CISCO-ENHANCED-MEMPOOL-MIB

 

Memory Free

Memory Used

.1.3.6.1.4.1.9.9.221.1.1.1.1.20.18788073.1 = COUNTER64: 6196785152

.1.3.6.1.4.1.9.9.221.1.1.1.1.18.18788073.1 = COUNTER64: 2198077384

.1.3.6.1.4.1.9.9.221.1.1.1.1.20.18788073.2 = COUNTER64: 0

.1.3.6.1.4.1.9.9.221.1.1.1.1.18.18788073.2 = COUNTER64: 134217728

.1.3.6.1.4.1.9.9.221.1.1.1.1.20.18788073.3 = COUNTER64: 0

.1.3.6.1.4.1.9.9.221.1.1.1.1.18.18788073.3 = COUNTER64: 60565808

.1.3.6.1.4.1.9.9.221.1.1.1.1.20.26932192.1 = COUNTER64: 4756275200

.1.3.6.1.4.1.9.9.221.1.1.1.1.18.26932192.1 = COUNTER64: 1417358984

.1.3.6.1.4.1.9.9.221.1.1.1.1.20.26932192.2 = COUNTER64: 0

.1.3.6.1.4.1.9.9.221.1.1.1.1.18.26932192.2 = COUNTER64: 134217728

.1.3.6.1.4.1.9.9.221.1.1.1.1.20.26932192.3 = COUNTER64: 0

.1.3.6.1.4.1.9.9.221.1.1.1.1.18.26932192.3 = COUNTER64: 66994200

.1.3.6.1.4.1.9.9.221.1.1.1.1.20.51614490.1 = COUNTER64: 6160363520

.1.3.6.1.4.1.9.9.221.1.1.1.1.18.51614490.1 = COUNTER64: 2234499016

.1.3.6.1.4.1.9.9.221.1.1.1.1.20.51614490.2 = COUNTER64: 0

.1.3.6.1.4.1.9.9.221.1.1.1.1.18.51614490.2 = COUNTER64: 134217728

.1.3.6.1.4.1.9.9.221.1.1.1.1.20.51614490.3 = COUNTER64: 0

.1.3.6.1.4.1.9.9.221.1.1.1.1.18.51614490.3 = COUNTER64: 60565808

.1.3.6.1.4.1.9.9.221.1.1.1.1.20.52690955.1 = COUNTER64: 4381138944

.1.3.6.1.4.1.9.9.221.1.1.1.1.18.52690955.1 = COUNTER64: 1792495240

.1.3.6.1.4.1.9.9.221.1.1.1.1.20.52690955.2 = COUNTER64: 0

.1.3.6.1.4.1.9.9.221.1.1.1.1.18.52690955.2 = COUNTER64: 134217728

.1.3.6.1.4.1.9.9.221.1.1.1.1.20.52690955.3 = COUNTER64: 0

.1.3.6.1.4.1.9.9.221.1.1.1.1.18.52690955.3 = COUNTER64: 66994200

 

 

Resolution

 

We have created Device Poller for such devices (attached )

 

Cisco ASR Memory Poller is attached .

Download  .

Go to Orion Web page > Settings > Manage Nodes >

pollermg.PNG

Import the Poller

You will Notice "Cisco ASR Devices" poller will be included

importp.PNG

Now go to the Node and do "List Resources "

Select the "Cisco ASR Devices" Poller

asrmem.PNG

> Submit

Leave the System running for 10 ~ 15 min for the polling .

confirmed the system is now showing correct memory .

memoryasr.PNG


Vertical listing of reference table in nodes details page using unpivot and dynamic sql

$
0
0

A client asked for a way to use an reference table to pull values for a node.  This particular reference table has a list of all SiteCodes for the nodes.

One way of doing it is to just dump the values.  But it’s very messy.  Plus want to see the values listed vertically, not horizontality.

a1.png

a2.png

The easy way is to pull out the fields in a select. Which is good for a few values, but gets a bit tedious.   Using unpivot and dynamic sql, we can have sql generate the sql code for us. Dynamic SQL does not work at all using Custom table, however it does partially work in Report writer (you can also use SQL Management Studio)

 

1) Put this in report writer:

DECLARE

@colsUnpivot AS NVARCHAR(MAX),

@query AS NVARCHAR(MAX)

 

select @colsUnpivot

  = stuff((select ','+quotename(C.column_name)

from information_schema.columns as C

where C.table_name = 'YourReferenceTableName'

and C.column_name not like 'Status Date'    -- I took out this field because it was not needed

for xml path('')), 1, 1, '')

set @query

  = 'select Label, Value

from ( select s.* from YourReferenceTableName s join nodes n on s.[site code] = n.sitecode where n.nodeid = ${nodeid}) x

unpivot

(

Value

for Label in ('+ @colsUnpivot +')

) u'

 

select @query

exec sp_executesql @query

 

2) That will generate

select Label, Value from ( select s.* from YourReferenceTableName s join nodes n on s.[site code] = n.sitecode where n.nodeid = 7477) x unpivot ( Value for Label in ([Site Code],[Office Status],……, Latitude],[Longitude]) ) u

 

3) Replace the specific node with ${nodeid} and use as a datasource in a Custom Table

select Label, Value from ( select s.* from YourReferenceTableName s join nodes n on s.[site code] = n.sitecode where n.nodeid = ${nodeid}) x unpivot ( Value for Label in ([Site Code],[Office Status],……, Latitude],[Longitude]) ) u

 

4) That’s it.  You can use this in report writer or custom table to get a nice vertical listing.

a3.png

Thanks

Amit Shah

Loop1 Systems

Brocade ICX Switch

WeaClients

Brocade MLXe Router

RSA SecurID

Alerting with Custom Properties - Trigger Condition Yes/No

$
0
0

I wanted to outline some additional ways to help with cutting down on alert noise with Orion. I'm building off this previous thwack post.

 

This post talks about using a Custom Property as a toggle on a per node basis. You can also create similar Custom Properties for Applications and Interfaces. The concept is the same.

 

1. First, i created a Custom Property (Settings > Manage Custom Properties) and I called it 'SendAlertNode.' You can call it whatever you prefer but that is the name that I'll be using for this article. The format is Yes/No.

2.png

 

2. You can then add this Custom Property in the Trigger Condition of an alert. You can use any existing alerts or duplicate them if needed. Once you edit the alert you'll need to go to the trigger condition section. Click the green plus sign and add a 'Single Value Comparison (Recommended).' Then browse for the name of the Custom Property, SendAlertNode. Set the value 'is equal to' 'Yes.'

1.png

By adding this condition a node needs to have that Custom Property set to yes to ever see an alert for it. I used this to separate my critical nodes from non-critical nodes.

 

Here is another article I created around using Custom Properties with alerting.

Alerting with Custom Properties - Trigger Action - Default Email

 

Here is an article that outline how you can modify a Custom Property via Orion's API's.

PowerShell script to modify Custom Property via Rest API/JSON

 

If this was helpful, feel free to rate this article.

Universal Device Poller Troubleshooting Guide

$
0
0

See attached. Reference for Expert Series Training - Feb 25, 2016.


Clickatell - SMS Gateway - Alert Overview

$
0
0

This overview talks about using a 3rd party SMS provider to send text alerts from Orion. I've used Clickatell in the past and really like their API's, ease of use and reliability. The nice part about using Clickatell is that  they provide you with your own texting phone number. This means that the text alerts that you receive always come from the same number. Works really well when you add a custom text tone for that contact on your phone.

 

I've created some Powershell scripts that call into Clickatell's API's and pass the necessary info from Orion.

 

Since I only want one text for each alert I need to be mindful of the 160 character limit with texting. My goal with these scripts is to provide simple status (Up, Down, Warning, Critical) and not any numerical value of an alert. By just providing status info I can keep my character limit below 160. Aside from the text alert I also have an email alert action that contains all of the details. So if I'm away from a computer and get a text alert I can pull up my email to get more information.

 

Prerequisites:

  • Need to install Powershell v3 or greater on your Solarwinds Orion server. We specifically use the Invoke-RestMethod cmdlet. You can download that here.
  • Need to create an account with Clickatell.
    • Need to setup an HTTP API
  • Download the scripts at links right below this section
    • Place them in a directory on your Orion server
    • Edit each script and fill out the necessary sections in the beginning. That information is most likely going to be exactly the same for each script.

 

Below are links that outline different alert types in Orion, each with it's own instructions and custom Powershell script.

Clickatell - SMS Gateway - Node Alert

Clickatell - SMS Gateway - Interface Alert

Clickatell - SMS Gateway - Application Alert

Clickatell - SMS Gateway - Component Alert

 

I've setup each script to have a new line for each key variable that I'm passing. This allows the text to be very readable when it comes through.

Screenshot_20160222-101550.png

 

Right now the script has a single hard coded phone number. You can modify the script to accommodate multiple phone numbers if needed. You can also use custom properties in Orion to define the contact number outlined here.

 

Another major part is that the script outputs to a log file which is helpful if you need to troubleshoot. Also, every time that you send a text through Clickatell they provide a Message ID which is required if you need to troubleshoot with them.

The logs output to: C:\ProgramData\Solarwinds\Logs and are formatted with all of the necessary info to track down a specific alert/text.

4.png

 

Please check back often to see if there have been any improvements or bug fixes to this script.

 

If you find this useful feel free to rate this article.

Clickatell - SMS Gateway - Node Alert

Clickatell - SMS Gateway - Interface Alert

TippingPoint IPS CPU & Memory

Juniper SRX240 CPU & Memory

Viewing all 1956 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>