You didn't state if you want to use open source or commercial software. That makes a big difference. And i'm not 100% sure exactly what you want it for... But...
On my home lab i'm working with
. Not that I need it, but I think the experience is going to be beneficial. It is a pure monitoring tool, not really for analysis.
You might want to look at
if you want something more analytical. I only puttered around with it, but it looks like something really useful in a full network env. My lab doesn't have much traffic for it to look at.
I would look at Solarwinds, its not free but its very simple to install and setup and monitors almost anything, there are a lot of preconfigured MIBS for a lot of the equipment you have highlighted. You can also get plugins to monitor applications running on servers (but not really looked into that because we are going with Microsoft System Centre for all that).
As mentioned SNMP is the way to go as you can monitor all your devices fairly simply. You've had some good suggestions already as to software. If you want open source stuff then MRTG might be worth a look. It will let you trend and graph the traffic levels on interfaces. I'd go for the obvious ones such as the switch ports serving key servers, your internet router and also any uplink ports to the backbone on your edge switches. Whatever software you use, this is the kind of starting point to be thinking about