One thing I've always loved about Cisco, the config files are in plain text. This means you can use several different tools to help manage your configs. (I am assuming that you already backup your configs via tftp)
- Put all your configs under revision control. I would recomend git, it very simple and requires no server. Just the executable. Here's a version for windows.
- Once under revision control, start using a diff viewer. You can see the changes made, and only the changes made. Notepad++ has one built-in.
- Take a serious look at NCG (Netomata Config Generator). It's a brand new configuration managment system for switch and router configs (it's free, as in speech and beer, more on that below)
These are listed in importance. I've made it to number 2. I'm still working on number 3, but here's what I know so far:
NCG (Netomata Config Generator) is a network device configuration generation system written in Ruby (it popped up again). This way, your provisioning can be programmatic rather than ad-hoc. Here's some copy that I stole from their web site:
In a nutshell, we're building tools to automate the configuration of network systems, in order to make networks more reliable and scalable.
Basically with NCG you create templates (with a little ruby code); this is most powerful when you are trying to allocate VLANs across many switches. Here's a complete (and complex) web hosting example from Netomata.
For those who know puppet. NCG is like puppet for network devices.
Also, if you know any programmers start talking to them about what they find useful. They have tons of experience dealing with these kinds of problems. It may just be easier for you to write a shell script to generate the annoying parts of the configs (like vlans) rather than learning an entire language.
Finally if you're looking to pull information from the routers and switches (I am assuming stats like Number of ARP Cache entries, Memory, CPU, Load, etc.). All of this information can be obtained through SNMP. And there are so many ways of capturing and graphing SNMP information that it boggles the mind.
There are many server based, or ad-hoc systems that can be useful. If you want something Windows native try Solarwind's Engineer's Toolset, just bear in mind most (if not all) of these tools can be found for free (or built) in a Linux environment.