Monitoring the Health of Your Penguin?
codepunk asks; "I work for a large manufacturing firm in the midwest, working on a migration from Windows to Linux in the data center. We just completed installation of two full Oracle RAC 9i clusters. We are also in the process of configuring two clusters for our manufacturing floor's Linux desktop roll out. The machines that make up our data center are all Compaq Proliant Series machines. In order to facilitate hardware maintenance we are in bad need of a monitoring solution. HP offers Insight Manager as well as the Compaq Health Agents. This solution
would seem like a natural but the drivers installed by these solutions are binary only. We have never managed to get these to work correctly and are really concerned about the stability of our systems with these modules loaded. We are not opposed to buying hardware in the future from a vendor that provides a more open solution. We are also not opposed to buying a open third party solution. Slashdot, what do you use for Linux system hardware monitoring?"
I use Loggerithim.
Big Brother is often a good choice.
____
nico
Nico-Live
You can also try the 'Just for Fun' Network Management System ,
its open source and extesible to fit any of your needs.
I'm the main developer.
- Smells Like Open Source Code
I think you can probably get the same end result with the projects mentioned above, but you might check out Nagios. It has a nice web interface and provides a wide array of monitoring options.
To monitor the health of a penguin, a self-respecting geek would set up something much like this.
Stumbling in the dark
I hear slavering of jaws
Eaten by a grue.
http://www.xiph.org/mgm/
Even casual involvement excludes total freedom by it's inherent nature. John Valby
Througout my career working with Compaq servers, I've noticed that Compaq's monitoring stuff, at least for SCO platforms, is "just ok." However, every now and then we find that someone's server gets bogged down by these daemons and device drivers, which are linked into the kernel when Compaq's EFS is loaded.
AMI Megaraid adapters on HP have a monitoring daemon that sometimes bogs down under SCO as well.
I don't know how their Linux versions perform, if they exist, but Compaq's tools for SCO have been hit and miss.
The best of the lot IMHO is Compaq's SCSI monitoring, which is really nothing more than regurgitating of the firmware-based logs, which is where all that stuff belongs anyway.
-- I am. Therefore, I think!
Just to clarify for other readers, he's asking about the Compaq health and wellness drivers which are binary only kernel modules and daemons that monitor things like the power supplies, temperature, if the case was opened, the speed and health of every fan in the system as well as things like memory errors and the state of the hard drives. They provide information that things like Nagios and Big Brother won't be aware of because the information isn't in /proc without these drivers.
That being said, you'd do well to subscribe to the Compaq and Linux mailing list. There are some solutions to getting those Compaq drivers working with versions of Red Hat that are newer than what Compaq supports. I haven't had the time to try any of the suggestions out on one of our servers yet.
Also, since everyone else is thinking you want application monitoring, I'd recommend Nagios.
Prevent email address forgery. Publish SPF records for y
There are a variety of agents and monitoring tools that make up the Insight Management toolset. We've found that some of the tools are better than others.
Pretty much the only *essential* tool that's required is the cpqhealth drivers and daemons. This poll the health of the onboard systems such as fans, CPUs, disk arrays, etc, and will log to syslog when there is a fault. Unforunately, the open source lm_sensors and cpqarrayd packages don't talk to the hardware in the new G3 DL380's, so cpqhealth is your only option. You can find it on HP's support site, as part of the hpasm package for Linux... I grabbed my copy for RedHat 7.3 from here.
cpqhealth comes with pre-built modules for RedHat 7.3, 8.0 and a few other distros (SuSE for example). But I've found that even the most up to date stuff from HP's site only supports the kernels shipped on the RedHat cd, and nothing newer. Luckily, cpqhealth (part of the hpasm package) does allow you to build new modules. You'll need a compiler on the machine. Take a peek at this script: /opt/compaq/cpqhealth/custom_cpqhealth.sh - it will build a new cpqhealth RPM for you, containing the drivers and daemons necessary to log hardware faults to the syslog (as well as to take action on them).
The script will break when you first run it - it will look for the following two files:
Both of which are missing in the most recent hpasm release. Create the S10cpqasm file yourself (it's just a startup script that gets dumped /etc/init.d - a simple touch of that file is fine for now - you can put a proper one together later), and copy hpuid from /bin (where it gets installed when you installed the hpasm RPM).
Once done, you'll have an RPM that installs the following:
two kernel modules: cpqasm.o, cpqevt.o
two daemons: /opt/compaq/cpqhealth/cpqasm/casmd
/opt/compaq/cpqhealth/cpqevt/cevtd
Make sure the kernel modules and daemons get loaded, and you'll now get warnings when a fan fails, disk in the RAID array dies, etc.
Even better - unlike the rest of the HP/Compaq Insight stuff, this doesn't use SNMP, doesn't install a web server that listens to 0.0.0.0, and seems to work quite well.
Other annoying things I've discovered about the rest of the HP/Compaq toolset:
In the end, we just ended up installing cpqhealth on the boxes to warn us of hardware problems, and will use RRDtool for our other monitoring requirements.
BMC have a good few Linux server mananagement stuff. BMC Patrol is one of them.
And so do Candle: Omegamon XE for Linux
We started using Director on xSeries hardware, and it seems to work alot better than insight manager.
The SNMP traps (or Tivoli TEC events in our case) are alot more intuitive and useful than the crap that insight manager sent out, and the agent seems to be more reliable. You can use a "Director Server" or a product like Nagios or OpenView for alerting.
Keep in mind that "Systems Management" in the pc/unix world is a black hole that consumes time & money. You might be better off using something like VMware GSX server on big Intel hardware or even an IBM zseries and use virtual hosts.
One of the advantages of big, expensive hardware is that they often come with service processors that phone home or page you when problems occur. At our shop, several admins have been suprised when an IBM repairman calls to schedule replacement of a failed disk or fan that they were unaware of -- the service call was generated automatically.
Conformity is the jailer of freedom and enemy of growth. -JFK
Here's how I'd suggest approaching the problem. Look into the platform MIBs. Find out what you can query values for. You should at least be able to get some binary type "fan working", "power supply working", etc. type stuff. Then get yourself an easily extensible monitoring system. Frankly, BigBrother is anitquated and a pia to manage. Other recommendations made here are reasonable, but I'd suggest mon. It's not a monitoring system per se. It is a scheduling framework with concepts of monitor and alert built-in. Many monitors and alerts are availble, but best of all it's really easy to write your own. For such things (for most things), I like perl.
You face a similar problem to pretty much any hardware specific driver issue when it comes to Linux: the O/S tends to be ignored by the vendor.
Open-source tools tend to be (gasp) based on open protocols, whereas hardware tends to have its own specific, closed methods for determining state (such as temperature, etc.). The only real way to solve the problem is to reverse engineer the available methods or patronize those vendors that offer either an open solution or wider selection of supported O/S's. I believe that Compaq embeds some code from BMC Software for monitoring low level hardware information, so it is doubtful you will ever see the source for it.
Off the top of my head, only Dell's OpenManage is available for Linux.
If you can find a way to access the information from the command line, you can always use net-snmp to integrate it into an SNMP agent that can be accessed by most management products.
Good luck, and if you get it working you may want to check out OpenNMS as your monitoring solution. It supports CIM out of the box (as well as Dell OpenManage).
Surprised that no one has mentioned Nagios. Used to be called Netsaint. We've used it to monitor about 10 servers for about 3 years now. It's good for monitoring almost anything about your hardware you can think of, as long as you have the ability to get back the extended information from your motherboard (temperature, etc). It's open source, with many plugins & writing plugins for it is very simple.
InterMapper can monitor anything that responds to SNMP or other TCP/IP queries. For the central monitoring server, it is available now for Mac and Windows, and in beta for Linux.
Anyhow, back to what I noticed: The old SmartStart CDs were Windows based (yup, bootable Windows, or a subset thereof, on a CD). The SmartStart CDs that shipped with my new DL380 G3s are *Linux* based. They boot into a web browser from which all system config is managed. CTRL-ALT-F1 gets you a bash prompt. X is running on F3. Window manager is icewm. Browser is phoenix. PHP seems to be present as well, as there is a
cat
Very interesting, as this Linux-based tool helps people install Windows on their servers. For fun, I asked it to walk me through an OS install - it noticed that I had configured my OS in the BIOS as Linux (yes, there is a BIOS Linux-specific option), it told me that it couldn't assist a Linux install, only Windows.
Mon is what I use. It is very extensible, but also is fairly good out of the box. I monitor ~90 servers (many in remote data centers) with no problems. I write all sorts of monitors that are run on the remote servers via ssh. It is open source, and free.
Nagios seems to be good as well, although I haven't used it myself.
Responding even though AC here has obviously been living under the bridge a bit too long and is rather off-topic to boot.
Load levelling/failover such as your speaking of in Windows Datacenter is definitely possible in linux. Please visit http://linux-ha.org/ if you're interested in learning more about some of those types of applications.
I'm not sure what your point is with hardware. Quality hardware is available from many vendors, including hardware which supports Linux. Yes, IBM, Sun, etc have systems which provide good hardware redundancy and replaceability, but so does Dell.
Your point about comparing a load leveled Windows Datacenter cluster to a beowulf cluster is comparing apples to oranges. The Windows Datacenter is a cluster of machines providing redundancy of service for each other, the beowulf is a cluster of machines acting as a single large processing unit. Completely different balls of wax.
I guarantee you that I could build with Linux and Dell a cluster that would be just as reliable as your windows datacenter, plus it would cost less and probably perform better.
Feel free to visit again. Careful though, I hear there's heretics around who don't religiously praise ANY hardware or ANY software at all!
I know everyone hates Caldera/SCO around here, but Volution is solid, feature-rich, and made by a Linux company still actually in business. Monty
You might want to take a look at the Darksite remote management card from Crystal Computing. I don't work for them, but I had the chance to try one out, and I liked what I saw.
Basically, it's a single-board computer that sits in a PCI slot in your server, and monitors its vitals (hardware / software). It runs completely independently of your server, except for an optional OS agent that can monitor things like memory utilization, CPU activity, etc. (Yes, there is an agent available for Linux).
It has a web-based administration interface, and can send you alerts and warnings via Email or pager, even if the main server locks up hard for some reason--in that case, you can perform a remote reset or even cycle the power, all from a web based interface.
It's a pretty nifty card--you should take a look.