Monday, July 16, 2012

Automating Exchange Bandwidth Limits with SolarWinds Orion NCM

As I've written about previously, one of the many tools I work with is SolarWinds Orion Network Configuration Manager (NCM). It's a great tool to capture device configs on a daily basis, and for scheduling off-hours changes or regularly scheduled processes that may happen weekly, daily, or even multiple times per day.  

Recently our messaging team started replicating Microsoft Exchange data stores from our primary datacenter in the US to another location in the Far East (FE).  In this case, there's only a 4.5 Mbps circuit connecting the locations, and the replication traffic started interfering with production traffic in the FE.  With QoS on the link and Riverbed Steelheads optimizing the traffic like nobody's business, we still needed to so something. The decision was made to cap the Exchange Replication (henceforth referred to as EXREPL) traffic. 

Using the Steelhead's Advanced QoS configuration we set the upper bandwidth (BW) % to 33% of the 4.5Mbps link (see below).

But we only needed to keep this limit in effect during the local daytime, and at other times we can let more EXREPL traffic through.  Despite the beautiful Web GUI that Riverbed uses, there's also an excellent CLI interface. The question became "What commands can I use to modify the upper BW% for the EXREPL QoS class?" After a bit of reading through the CLI Guide, I found the proper format:
  • qos classification class modify class-name "EXREPL" upper-limit-pct 33
  • qos classification class modify class-name "EXREPL" upper-limit-pct 90

Rather than sit at the keyboard and execute these commands twice per day, I set up SolarWinds Orion NCM jobs on schedule to run the following:

M,T,W,Th,F at 7am CT
config t
qos classification class modify class-name "EXREPL" upper-limit-pct 33
write mem

Su,M,T,W,Th at 6pm CT
config t
qos classification class modify class-name "EXREPL" upper-limit-pct 90
write mem

Each scheduled job also fires off e-mail alerts to the network and messaging teams to keep everyone in the loop. For small teams like mine, this tool is invaluable in it's flexibility. Now twice a day, like clockwork, NCM happily does it's job and lets us know if it succeeded or had problems. Another crisis averted!

What kind of simple (or complex) automation do you use? Hit me up on Twitter (@swackhap) or post a comment below.