Server Monitoring With BixData
BixData is a system, application, and network monitoring tool which allows you to easily monitor nearly every aspect of your servers. It can be used for general reporting, for sending notifications when problems arise, or for automatic maintenance and repairs - by executing scripts when errors or particular conditions arise.
The BixData system is made of three separate parts. The BixAgent runs on any machine you want to monitor. The BixServer is used to monitor machines remotely and to keep track of many different machines. The BixDesktop is a graphical interface that is used to setup and interact with the rest of the system.
I will give a simple example of how to setup BixData. It will hopefully be obvious how to adapt it to your situation. Although BixData is designed to handle large clusters of servers, I'll just show you how to maintain one. In this simple example I will assume you have a webserver and your own workstation. If the CPU usage on the webserver ever stays above 70% for 10 minutes you want Bix to restart apache and send you an email. If the webserver becomes unreachable you want to get an email. If the machine is still down after 1 hour you want to send an email to your coworker. All of this is very easy to set up with BixData.
Here is how we will do it. We want to install the BixAgent on the webserver to monitor the load. We want to install the BixServer on your workstation to monitor the webserver. We will also install the BixDesktop on your workstation to setup and change the notifications.
First install BixDesktop on your workstation. (I'll assume your workstation is running Linux though there is a version of the BixDesktop for OS X and Windows.) Simply download, untar and run:
tar -zxvf BixDesktop-2.4.2-linux-1.tar.gz
cd bixdata; ./rundesktop
Now we install the BixAgent on the webserver, simply download and untar:
tar -zxvf BixAgent-2.4.2-linux-1.tar.gz
Now we run the agent so it doesn't stop when we close the console:
nohup ./bixagent >out &
Now install and run the server on your workstation:
tar -zxvf BixServer-2.4.2-linux-1.tar.gz
nohup ./runserver.sh >out &
BixServer can also show you graphs related to service availability, keep records of notifications and store data from BixAgents. This requires a SQL database. A number of databases are supported, and it is quite easy to setup a connection. However, if you'd like to have BixServer run out of the box simply change the one line above to download the package that includes a database.
Connecting Desktop and Server
Now that everything is installed and running we need to connect the BixDesktop to the BixServer and BixAgent. At the login screen choose the "Guest" account and hit the login button. If you hit the (+) and create your own account, BixDesktop will save your desktop layout and remember usernames and passwords for BixData components.
Since in this example the BixServer is running on the same machine as the BixDesktop you can just refer to it as "localhost". In other setups you would just use it's IP.
Click on the recently used link for server://localhost or type "server://localhost" in the connection bar and hit Connect; you will be connected to the BixServer and see the main screen of BixDesktop.
The first tab we are interested in is the Situation Room. From here we can add the webserver that we want to monitor. In the machines list click the + button to add a new server to monitor. This brings up a dialog. Simply add the IP of the webserver that is running the BixAgent.
New Host Dialog