R: [hobbit] Hobbit newbie from BB: differences and what may I lose frommigrating?

Francesco Duranti fduranti at q8.it
Wed Aug 2 01:03:27 CEST 2006


 
Hi Jordan,
 
>I am considering moving to Hobbit from BB for our
>web/database/applications development group at UCLA and have lots of
>questions. I would greatly appreciate if someone could go section by
>section and answer what they can. If there is somewhere that I can
>search the mailing list archives, definitely point me there first as I
>am sure many of these questions have been answered in the past.
 
I'm a big fan of hobbit so my comments can be a little  toward hobbit
monitoring but i really have to thanks bb4 technologies because I've to
tank them for BB first.
I started to use BB many years ago to monitor just a couple of network
device and a couple of solaris machines.
The process to put BB in production involved many years using it in a
"personal" environment because we had some bigger monitoring software
that was acquired...
 
While the time passed Henrik developed bbgen and the possibility to
create better reports and pagesets (dedicated pages  for network people
or for DB people or for windows admins)... 
In the meantime Quest buyed BB and I finally presented the monitoring
platform to my boss :D This leaded to the acquisition of server and
client licenses for BB. We was using the "free" version of the server
because we have that platform + bbgen installed and running. Some times
passed and I got hobbit and started to play with it and after having it
installed I changed the bb+bbgen server with hobbit.

>First, after reading through whatever I could find on the website I am
>still a little bit confused about configuration and setup. With BB, you
>install and configure each client and server on the local machine,
>except for the universal bb-hosts. Is this the same on Hobbit, or does
>Hobbit use a central configuration file that is modified only on the
>server to configure clients? I am trying to figure out the difference
>between installing, maintaining and configuring BB and Hobbit setups.
>Hobbit looks alot more complex to setup, but once I get my feet wet is
>it any harder than BB?

You have a server installation that will work out-of-the-box with all
your BB clients already installed. 
The configuration is completely centralized for the hobbit clients so no
need to go to a client after you installed and configured hobbit. You
only need to go to the client to add more external scripts that run
client side or to upgrade hobbit (with version 4.2 you'll not need to go
to the client because you can create a package on the server and the
client will update itself). 
With BB client if you need to change a warning/alert level you have to
do it client side.
With Hobbit you'll do it on the server. 
Regarding the old client I'm running it on some old solaris 2.6 machine
(bb client v1.9c) that I've no reason to upgrade to hobbit because I've
just one or 2 users using them and I hope (from about 2 years) to switch
them off soon :D
I'm also using BB client for windows on Windows NT/2k/2k3 servers and it
work well (also if I'm missing the centralized configuration I've on
hobbit client).
 
The only thing that really changes from BB is the alert notification
file and the centralized client configuration file. There's much help in
those configuration files to let you configure whatever need you have.
 

>Second is performance. I know this list may be biased toward Hobbit,
but
>is it actually faster? We have about 50-100 clients on BB and I did not
>notice any performance issues. Hobbit looks like it is very complex, so
>does this mean it uses a lot of resources on the client and server?
What
>speed/ram server is usually the minimum recommended for a dedicated
>Hobbit server? Would something like a dual Pentium II 266mhz have any
>performance issues as a server, if it does nothing else? What about for
>clients? We have still have some testing, stating and production
servers
>left that are singe chip Pentium III 700-850 mhz, and even a couple
>Pentium II's. Just need to make sure all the resources used for things
>like graphs are taken from the server and not each client.

Server side hobbit is entirely written in C and will access the disk
only for rrd and some temporary files so I think it will not have big
problem if you have just some spare memory to let it run.
Page generation is really faster and you can regenerate page every
minutes.
The networking test is also faster than the BB ones.
The hobbit client is a shell script that will run commands to get data
from the machine and send them to the server so no cpu power is consumed
on the client and no disk access is done apart from some logging and
temporary space.
Hobbit will generate bb html pages, all test pages are dynamic and
generated on the fly.
You can some more power/disk space if you want to store many RRD data
for graphs and trends (server side)
 

>Third is plugins. Are BB plugins compatible with Hobbit? Also how hard
>are plugins to write for Hobbit? I don't know if these even exist for
>bb, but I ultimately would like to integrate plugins that 1) monitor
>legato tape backup, 2) run nmap to see what ports are open/can be seen
>from an external machine, 3) run 'lshw -html' to show a list of all the
>hardware on the system, 4) monitor uptime, 5) monitor OS and kernel
>versions (uname -a and head -n 1 /etc/issue), 6) maybe some more
>router/network monitoring stuff and 7) maybe some kind of LVS
>monitoring. I am not a programmer, but many of these can be done with
>either existing commands or can be done on BB with existing plugins and
>some (like lshw -html) are mostly static.

BB plugin (at least from 1.9) are fully compatible with hobbit .... the
maximum you have to do is to put some environment variable in the hobbit
configuration file instead of putting them in some other bb file but
this is all.
1) if you have a script to do it there's no problem to use it ...
2) hobbit client 4.2 already implement a network test that check open
port on the local machine
3) you can run it and send the output to the hobbit server, it will
manage to show you the data.... just an example:
If you run (from a hobbit client commandline) :
echo "status machine1.cpuinfo green `date` `cat /proc/cpuinfo `"| bb
hobbitsrv @
It will report the data to hobbit and you can see them in a column ....
4) already done from the client and also from some network monitoring
script available for hobbit or bb that get data via SNMP.
5) client os information are reported by the hobbit client 
6) there are many scripts available on deadcat that run out-of-the-box
with hobbit (or just with some modify). Many new extention are starting
also to be personalized for hobbit because it have more options. Some of
those scripts test network device via SNMP. Some new ones are in
development ( devmon ) and are done so that you can check every snmp
device you want, you just need to write a template of what you want to
check.
7) don't really know but I think it will not be difficult to write
something about it if there are commands to check the state.
 

>Fourth is relay. By this I mean monitoring systems on a private
>subnetwork that are only accessible to the Hobbit server by going
>through an intermediate server. Is this possible with Hobbit and is it
>any more difficult to do than on BB?

Hobbit use the same protocol as BB. You only need to open one port or
you can use the proxy or, with the 4.2 version you can directly poll the
hobbit client from the server to get the data that will be stored
locally in memory. This last alternative is what I'll start to check in
the next few days to get data from our DMZ machines and it's a really
simple-than-what-could-be-done with BB for polling instead of receiving
because you need nothing more then the hobbit client.

>Fifth is portability. BB is very portable, I can make a 'model' client
>for say Red Hat and tar it and distribute it very easily to every
server
>I have using only a few commands. Is Hobbit the same, or are there
>client dependencies or other things that may make this more difficult.

Hobbit is at least as portable as BB. Just compile on one machine add
all needed extentions and then tar and port it on all the same
architecture machines. If you want to let the client work with "local"
configuration instead of the centralized one you'll need the pcre
library installed on the client machine but if you use the normal
centralized setup you'll need nothing else than a tar. With 4.2, when a
new version is available you have only to compile it, package on one
client and put it on the server to have it distributed to all your
clients. 

>Sixth is development. How active is the development of Hobbit, how big
>is the community, etc? How many people can attest to having fully
>functional hobbit setups, how long has it been around and how often are
>new releases usually made? Also I saw something this morning about a
>Windows client -- how stable is that? How stable is the Solaris
version?
>Is there a client for Mac OSX? Is Hobbit like BB in the sense that you
>can change paths to system binaries like grep and sed to allow easy use
>on other UNIXes like OSX? When will 4.2 be officially released as a
>production version? Since we have a working BB setup for now, I need to
>decide if I should try to start migrating now or if I should wait some
>time for Hobbit to develop more before I migrate from BB.

Well... I think hobbit have a really active community (just check the
mail in this mailing list ... about 80 in 2 days ...well, we're under
the final bug fixes for 4.2 :D ).... if you need any information or help
with every problem you can have with hobbit or with an extention script
or with something you don't understand of the functionality of hobbit
you can send a mail and normally it will not pass unobserved and
probably you'll get an answer or help from someone during the same day.
 
Release for 4.2 is going a bit long but this new version will implement
really much changes from the oldest 4.1 release that I think it's normal
(I'm also seeing new functionality implemented in those last days before
relase).
The snapshot are created nightly and sometimes there are also daily
snapshot to correct some bugs...
I think many people in the community are already running the 4.2 if not
in a production environment in test just to check the new functionality
(at least I'm doing it :P).
 
The windows client (bbwin) is in development and the 0.8 version preview
is out... I think I'll start to check it tomorrow because there are some
really nice functionality that this client have (monitoring of microsoft
cluster and load balancer). The next versions ( I really hope the next
one) will also be full hobbit-client oriented so it will send data to
hobbit that will do the checking for the warning/alerting.... After this
I will never have to change anything on a monitored client :D 
 
Regarding the development community you'll find that for hobbit (some
run also with bb) there are many people developing plugins.. At the
moment this is what is "under development" that I remember:
 
Devmon: to monitor snmp devices you can found it at
devmon.sourceforge.net
bbwin: windows client found at: bbwin.sourceforge.net
hobbit-perl-cl (my work :P): you'll find perl extentions that run on
hobbit server to monitor network appliance storage, Weblogic server and
i hope for the next week database server (oracle/informix/sqlserver
mysql in the near future) located at
sourceforge.net/projects/hobbit-perl-cl 
The shire : a sort of deadcat for hobbit scripts
sourceforge.net/projects/theshire/
 
 
>That's all for now. Sorry about so many questions, but I need as much
>clarification and background knowledge as possible before I start
trying
>to convince my boss why we should dedicate the time and effort to try
>out and ultimately move to Hobbit when BB "just works" without giving
us
>any problems. If we do adopt hobbit, I will definitely reciprocate with
>help to newbies as I learn Hobbit better and will recommend it to many
>other people on campus as I have previously done with BB.

The only think I can suggest is to try hobbit. You can also do it on the
same machine when you run your bb server....
What you need to do is:
1) create a hobbit user
2) install hobbit server normally
3) add the apache part to the apache server configuration (it's
different from the bb because it uses /hobbit)
4) edit the ~hobbit/server/etc/hobbitserver.cfg and
~hobbit/client/etc/hobbitclient.cfg and change the BBPORT variable from
1984 to 1985 (or something else)
5) edit the ~hobbit/server/etc/bb-services and change bbd port to the
same one used in 4)
6) start the hobbit server and check what's happening
 
I use this setup on the same machine where I have the hobbit production
server and it work really well.
 
If you want to test the hobbitclient you just have to go to a machine,
compile the client, change the same port in the hobbitclient.cfg file
and check how it's working. If you want to populate some datas just to
check how it work you can also get your bb-hosts file and put some of
your host network check in hobbit just to have some pages/subpages ...
 
I think after you test it and see everything he can do you'll start
using it :D
 
Well I think I wrote a bit too much :D
 
Regards
Francesco Duranti
 
 



More information about the Xymon mailing list