|
|
Version 1.19
|
Summary of Features
|
bcnu is a web based system management tool which delivers information on the status of networked systems in a simple and easy to use manner. Have a look at the
sample screens to see how easy it is. It uses a web browser to display information about hosts in a tabular form. Coloured icons show the status of monitored conditions and clicking
on these will bring up detail about the state of the system. Historical information can be held indefinitely and there is a powerful query tool available to interrogate it. More details
can be found here.
bcnu can be managed from a central unix system, with all agents, scripts and config files distributed from one point using the supplied shell scripts. It will soon be possible to
configure agents from a web browser.
bcnu has a very open architecture. The agents are currently bourne shell scripts, but can be any program. There are a set of standard shell functions available to make interfacing with
bcnu very easy. It is a simple matter to modify existing scripts to talk to bcnu. These will have all the benefits of bcnu agents, e.g. logging, resending, proxy etc. I would be happy to
receive your agents to include with the distribution
bcnu has been designed to be very simple to implement. By default it is configured to make very little impact on the managed system. Logging levels can be set
for each agent separately. It is possible to set an agent only to log in the event of an error.
Monitoring of network devices can be spread over multiple machines, all may have different checking and logging intervals. e.g. you may wish to check all web servers every 5 minutes,
application servers every 10 minutes, but mail or print servers only every 30 minutes. This is easy with bcnu due to the flexible agent architecture.
Its main features:
-
easy to use
-
simple agent based monitoring with flexible thresholds
-
multiple views of the same information
-
includes agent scheduler for total flexibility
-
automatic logging and resend of messages
-
discover agent to build a picture of your system automatically
-
built in web server for static pages
-
powerful cgi access to data including multiple views and historical queries
-
free!! (Distributed under the terms of the Artistic licence)
Standard agents include:
-
network monitor, ping, http, ftp , mail, lpd, oracle etc
-
intelligent log file scanning for messages and warnings
-
checking for required processes to be running
-
filesystem mount status and space usage
-
processor/memory usage and system up time
Special agents include:
-
volume management checks for solaris,aix and hpux
-
system availibility
Admin agents include:
-
logging and resending of agent data
-
agent proxy
-
alerts sent by mail, pager, web, Perl/TK window or custom program
-
report of all errors and warnings
-
self monitoring and alerting agent (runs on another system)
-
discovery of systems to be managed
-
optional static web page built to show status of all systems
Contributed agents include:
|
Overview
|
bcnu is a system which I developed for a number of different reasons. I manage a large number of different unix systems and had been investigating systems management tools. It appeared to
me that most tools fell into two different categories:
-
Network management tools which covered some unix management issues, but were mainly designed to provide a graphical network view of network objects.
-
in depth system management tools which forced a change in the way systems were run and were difficult to set up and use.
Both types of system were expensive to set up in financial and training/maintenance costs.
I then came across the Big Brother network monitor by Sean Hughes - which inspired me to write bcnu. Big Brother is a simple web based monitoring package which uses shell scripts and a
couple of c programs to provide basic management facilities.
The only problem I had with BB is that it is a bit complicated to install and maintain, and there is no real control over the scheduling of agents.
I also came across spong by Ed Hill, which was an execellent tool, but again still a bit inflexible and required perl5 on all systems.
I hope bcnu addresses all of the above issues.
bcnu is designed to run as a client on any unix system. The master requires perl and a web server for the full functionailty, but the alert mechanism will work without these.
The prebuilt binaries allow bcnu to be deployed within minutes, with only the agent thresholds to be configured.
|
What is bcnu?
|
bcnu is a client-server monitoring system. It consists of a server daemon running on each system to be managed. The daemon schedules the running of agents on the system. The agents can be
used to check the health of the system or to run periodic bcnu admin tasks.
One central system is designated as the "master". This is where all data is logged to and where remote management can be carried out from.
A web browser is used to display the status of the systems under its control.
bcnu's main features are:
-
web browser based monitoring
-
multiple views of systems supported
-
easy to understand configuration file
-
cgi not required for basic monitoring
-
simple web server for static pages built into daemon
-
remote management of bcnu agents
-
separate agents for different functions
-
allows scheduling/enabling/disabling of each agent independently
-
each agent is completely configurable
-
proxy data gathering
-
discovery agent to find systems automatically
-
powerful queries on current or historical data
-
blackout mode for switching off agent activity
-
automatic logging and resending of agent information
-
alerts by mail,pager,web or custom program
-
files may be attached to agent data
-
historical data kept
-
flat file or mysql database support for data
-
runs on many unix platforms, prebuilt binaries available
-
free!!
What do I need to run it?
|
In addition to Unix systems, any IP connected device can be monitored by bcnu i.e routers, Netware/NT servers, gateways etc. It will use a ping to test whether the system is alive
or not.
It is also possible to check for IP services on any system, i.e. ftp, http etc
To check other internal services on Unix systems requires a bcnu daemon and agents to be loaded.
Currently the supported Unix platforms for the daemon are:
-
Solaris 2
-
HPUX 9,10
-
AIX 4
-
Linux 1 and 2
-
FreeBSD 3
-
ICL DRS NX (deprecated)
As these are the only systems I have access to, these are the only ones I can test on, but I am hoping that others will contribute ports to other systems.
The software is distributed in source and with pre-built executables for the above platforms.
A C compiler will be required (gcc is fine) to rebuild.
For managed systems, that is all that is required as all the agents are bourne shell scripts and don't do anything very complicated.
For the master system perl is required to build the web pages. Perl 4 is fine.( but see below)
Currently a web server is required for the cgi scripts where these are used. I use Apache.
The web browser should preferably be Explorer 3+ or Navigator 3+, but it will still work on older browsers. The use of background colours in tables makes these browsers
better.
(Optional) Kermit 6 is required for pager support.
(Optional) If you are using the Perl/TK alert script then Perl5 and the TK module is required.
|
|
Download bcnu
|
You can download the full bcnu distribution here. The package contains all source and binaries for bcnu version
1.19.
Binaries are for: solaris(sparc), hpux, aix, freebsd, drsnx, linux(Redhat 5.2)
The source only distribution is here. This should build on a lot of Unix platforms, although it has only been tested on
those listed above.
These distributions are gzipped tar archives.
Html, text and some pod and man documentation is also provided in the package.
|
|
Install bcnu
|
To install the package:
cd /usr/local (preferred location)
gzip -dc bcnu-1.19.tgz | tar xvf -
This will create a directory called bcnu with all files below this. See the README document for further instructions.
Feedback welcome!
|
Sample pages
|
These pages are designed to show how the web monitoring pages of bcnu look.
The pages which are displayed have been extracted from a live system and are the equivalent of what is produced when you run the buildweb script to produce static pages.
The pages here show a variety of systems from full unix servers with all agents, mail gateways, proxy servers and routers. We also monitor a host on the internet to check our connection
with the outside world is ok
There is also a non-working example of the query page which is available when using the perl cgi scripts
It is possible to drill down within each page and get more detail where available by clicking on the hyperlinks.
-
Show the summary status of all the systems being monitored
-
Show only abnormal conditions for all systems
-
Show hosts split into platforms for all systems
-
Non-working example of the query selection screen available using cgi and the history files
The dynamic cgi pages look the same except that there are some very important extra options:
-
the query tool allows searching all of the data files which are available.
-
the user views allow a specific view of selected hosts
|
Changelog
|
Version 1.19 - (Under development)
- Added AIX errpt checking to log agent
- Added -ad flags to buildweb in alert agent
- Changed default action for bcnud. It will now only log
the hostname of incoming reports and not the full domain name. An
option (-q) has been added to bcnud to log the FQDN if required.
- Added new option on browser to show hosts sorted by platforms,
also added the platform to the agent details screen.
Version 1.18 - 18/11/1999
-
Fixed problems with bcnu sending too many fields with a message
-
Added code to decode messages on agent details screen
-
Added code to send host type for all agents
-
Fixed some per host settings, all local variables now configured via bcnulocal
-
Fixed a bug with the query cgi form not highlighting default log
-
Fixed a bug in bcnuenv.linux - no MAIL defined - Thanks Christoph
-
Fixed the install and upgrade scripts, they now retain all previous data, logs and
config info when upgrading. Auto upgrade now works much better
-
BCNUHOME wasn't set in bcnud_server, oversight from previous change
Version 1.17a - 21/10/1999
-
Fixed problems with install script not setting up defaults correctly
Version 1.17 - 15/10/1999
-
Fixed y2k compliance code, and tested with dates set to 2000+
-
Fixed a bug with service number handling in bcnu.c causes the http test to fail on linux/freebsd
Version 1.16 - 10/9/1999
-
Updated log.c to add support for ignoring individual agents
-
Added freebsd 3.3 support and fixed a bug with CHILD processes
-
Modified Web graphics
-
Added snmp trap logfile capture script (UCD snmp)
|
|