Are you responsible for running a Cisco Callmanger install for your company? If so, you’d probably like to be the first one to find out about telecom problems – before your users start coming to get you. I was in a similar situation when I began looking for a monitoring and alerting solution for our Callmanager cluster. In the past, we had purchased a solution that required probes to be put at each one of our remote sites, and since that company had gone belly up, I didn’t want to go down that road again. We eventually settled on using SNMP to monitor the Call Manager and all remote sites, with Cacti pulling everything together.
In this article we’ll go over the basics of Callmanager monitoring:
- Enabling SNMP on your Cisco routers, switches and Callmanagers (At the time of this writing, these are working on my Callmanager 8.5 cluser, but should work on anything 7 and up)
- Adding Callmanager and Cisco devices to Cacti
- Configuring Cacti to alert when a device goes down
For anyone who isn’t familiar with Cacti, it’s an open source graphing solution that makes great little bandwidth graphs. If you’d like to learn more about Cacti, and download a ready to go virtual machine, just go to Cacti Users and download their bootable ISO. I’d suggest using the vm player from VM Ware and creating your new Cacti install inside of a virtual machine – you should be up and running inside of an hour.
Enabling SNMP on your Cisco routers, switches and Callmanagers
Once you have Cacti up and running, you should setup SNMP on Callmanager and your remote sites. To setup SNMP on Call Manager, just log into your CallManager’s serviceability page and click on Snmp, and for each member of your cluster, you’ll want to setup a ReadNotifyOnly community string – if you have any problems then take a look at this document (this is for CallManager 7, you may need to search Cisco.com for a different doc if you have another CallManager version).
Once you’ve got SNMP setup in Callmanager, you’ll need to setup SNMP on all of your voice routers and switches. This is a pretty straightforward setup for most Cisco routers. Just login to your router, enter global config and enter this:
snmp-server community YourMadeUpString RO
Where YourMadeUpString is your Community string (a string of characters that you made up, and allows access to SNMP data). This will allow any device on your network to poll this router for information, in read only mode. You’ll want to do this on all the routers and switches on your voice network.
Now that we’ve setup all the voice devices to respond to SNMP, we’ll want to configure Cacti to poll them for information every 5 minutes. In this article we’re just adding them to our CactiEZ config, in later articles we’ll talk about getting more data from them.
Adding Callmanager and Cisco devices to Cacti
Log into your CactiEZ install by making sure the VM is powered on, then opening the IP address shown in your browser. Add a router to Cacti by clicking on devices, then add in the upper right of the screen. You’ll fill out a description (i.e. Home office voice router), add the IP address for host name, check the monitor host button, and enter the SNMP community string that you picked earlier. This should be all you need – so press the create button. Your new router will show with a status of “unknown” for 15 minutes until Cacti is able to properly poll it, then it will change to “up”.
Graphing Call Manager with the default graphs
Now we’re able to add some graphs that will let us track basic things like the load, memory usage, and network traffic to callmanager. These graphs are all included in Cacti, and will produce graphs like this:
These graphs are enabled by going to to the device in cacti, and:
- select “Create Graphs for this Host” from the upper right hand corner.
- Choose the following (one at a time):
- Host MIB – CPU Utilization
- Unix – Load Average
- Select the correct interface for each of the following
- Interface – Traffic (bits/sec)
- Host MIB – Available Disk Space
- Click create
These should all work on your Call Manager 7+ publisher and subscribers.
Custom Cacti templates for Call Manager
Now comes the good stuff – actually graphing CUCM specific stuff.
- Number of phones – This template will allow you to graph the number of active, inactive, and rejected phones registered to this specific server. If you want to see all the phones registered to the cluster you should add this template to your publisher and subscribers, then use the cacti aggregate plugin to total things up.
- Phone calls – This template will report on the number of active phone calls on a PRI. Note that this will summarize all PRI calls on the router – meaning that if you have calls across multiple PRIs in the same router, they should all be reflected in the graph.
Configuring Cacti to alert when a device goes down
Now that you’ve got your router setup in cacti, all we need to do is input some alerting information. Click on the setting link on the left side of CactiEZ, and then on the Mail / DNS tab. You’ll want to configure your Emailing Options according to your organization’s settings (most likely it will be SMTP, using a corporate mailserver).
Now, you’ll need to enter your alerting information. I like to put both my corporate email and my phone’s text message address in, so that I’ll get an alert where ever I am – the downside is that you’ll eventually get alerts at 3am…
Now, you can move on to adding routers, switches, your Callmanagers, Unity, Contact Center, etc to cacti. Each one will be automatically tracked for up / down status. Using other tools inside of CactiEZ such as thold, you can set alerts if the load on Callmanager gets too high, or if a remote circuit goes down. The best part of this solution is that it costs nothing and is well supported by the Cacti community.