README - readme for bcnu Version 1.19

 



NAME

README - readme for bcnu Version 1.19

Last update: Updated: 30th November 1999


AVAILABILITY

The bcnu home page is at http://bcnu.sourceforge.net/

Mirrors are available at

     http://bcnu6666.tripod.com/
     http://members.tripod.co.uk/~ukbcnu6666/
     http://website.lineone.net/~john_a_phillips


SYNOPSIS

This document gives a brief outline of the functions and uses of bcnu, how to install it and get a basic system up and running.


DESCRIPTION

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.

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.

Retry levels and severity for hosts can be set on a per agent/service basis. e.g. you can retry hosts 10 times but print servers 3 times and only generate a warning for the print servers but an error for the hosts

see INSTALLATION in this document for a quick install guide.


FEATURES

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.

These are the 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 etc
- log file scanning for messages and warnings
- checking for required processes to be running
- filesystem mount status and space usage
- processor usage and system up time

Special agents include:

- volume management checks for solaris,aix and hpux
- config file gathering(experimental)
- system availibility

Admin agents include:

- logging and resending of agent data
- upgrade agent(experimental)
- agent proxy
- alerts sent by mail,web,pager or custom program
- discovery of systems to be managed
- static web page built to show status of all systems
- report of all errors and warnings

Contributed agents include:

- None yet!

INSTALLATION


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 Kernel 1 and 2
        FreeBSD 3
        ICL DRS NX (frozen due to instability)

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 do not do anything very complicated.

For the master system perl is required to build the web pages. Perl 4 is fine.

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.


Installing the bcnu master system

change to the directory where you want the archive to be extracted to

e.g. cd /usr/local

untar the archive, it will create a directory called bcnu with all of the files under there

gzip -dc bcnu-1.19.tgz | tar xvf -

Once bcnu is installed, configuration can begin. There are a few files which need to be edited to set things up initially, but once that's done the only file which needs any maintenance is the agents file.


Configuring bcnu on the master

Decide on the final location of bcnu (/usr/local/bcnu is the default)

If you choose the default, then there are less changes required to the standard scripts.

Run the client install script in bcnu/scripts/client_install to set up the environment.

It will ask for the location of bcnu (e.g. /usr/local/bcnu) and then operating system type.

If there is already a version of bcnu installed, the server will be stopped and the new version will be configured. Any old config files will be retained.

The script will ask if you want bcnu started at startup, if the answer is yes it will add an entry to the appropriate startup file/directory for your platform. (N.B. root access will be required for this).

Once that's complete change to the directory /usr/local/bcnu/etc


Config files

several base files will be created in this directory, these are:

bcnud_server : Required

This is the script that starts bcnud. It should be run whenever the system is started up or shut down. You need to change the BCNUHOME directory here if you are not using the default /usr/local/bcnu

bcnuenv : Required

Contains settings for server type, master host etc.The bcnuenv file will be edited based on the answers to the questions in the install script.

You need to change the master host name and the BCNUURL for your web pages here.

bcnulocal : Optional

You can override any configuration settings in this file, on a per host basis if required.

agents : Required

agent config file - required on all hosts with a bcnud daemon. This is probably the most important file. It details which agents are to be run, how often and what they check for.

hostinfo : Optional

configuration file - only required where alert agent is used. It defines the pager and email addresses where alerts are sent.

bcnunet : Optional

configuration file - only required where net agent is used. It defines the hosts and services to be checked.

logpatterns : Optional

configuration file - only required where log agent is used. It defines the log files which can be checked and the patterns to check for.


Configuring bcnu clients

This process is exactly the same as above for the master except that it is possible to set up a standard bcnu installation, which can be copied to multiple clients with only minor changes required.

Once all your agents are configured you can run the client_build script in /usr/local/bcnu/scripts/client_build to build a tar file which can be copied to all of your clients.

You then untar as above and run the client_install script.

If you are using the same bcnu home directory name as on the master then the only file which will need to be customized is the agents file for this client.


Testing the installation

These changes should be enough to start up the bcnud daemon for testing. If you want you can start it up now with the command:

/usr/local/bcnu/etc/bcnud_server start -a

The -a option tells the server to log when it starts an agent. This will allow you to see when agents are being scheduled correctly. This logging can also be switched on/off by sending the bcnud daemon a USR1 signal.

To test the server you can run the following:

/usr/local/bcnu/bin/bcnu -p localhost

The following type of message should be displayed:

(dns1)bcnud 1.0.1, started at 1998-03-25 13.49.34, 0 requests 0 agents loaded,0 enabled

Two log files should have been created as part of this process under the /usr/local/bcnu/logs directory. The main log file is called bcnu.log, the other bcnud.log

The bcnu.log file should show the system startup time. It should also show that one agent has been run, the av agent. This agent is run when bcnu starts or stops. It gives some useful information about the system which is being monitored.

There should also be a file and directory created under /usr/local/bcnu/data/hosts/ called hostname/ag_av.status

Congratulations you have installed bcnu!

You can now add whatever agents you require using the comments in the sample config file.

You can get more detailed information from the documentation in the docs subdirectory.


AUTHOR

John Phillips

Please send all bugs, comments, and changes to jp@witty.com


DISCLAIMER

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the Artistic License for more details.


CAVEATS

Security is weak at the moment. bcnu is designed to be easy to use, it has not been tested for all vulnerabilities.


SEE ALSO

bcnud(1), bcnumsg(1), bcnu(1), agents(5), services(5), logpatterns(5), hostinfo(5), bcnunet(5)

The bcnu home pages also have full documentation

Updated: 30th November 1999

 

   README - readme for bcnu Version 1.19