Friday, November 26, 2010

New Approach to current project

As a follow-up to my most recent blog, the approach to setting up Nagios the networking monitoring tool on a cluster of ARM machines has changed. As a result of this, I am now focusing my efforts on setting up a Nagios master and client on a couple of x86_64 systems, using yum packages, instead of  the initial installation and configuration using source tarball files. The perception going in using this new approach, was this is going to be a walk in the park (easy), not quite the outcome so far. Well on the bright side I have a master and client setup, and live via the web, however I have had some difficulties getting both machines to complete a monitoring transactions between each other. Current challenge revolves around the inability of the Nagios master to access the nrpe daemon processes on the client machine; in an effort to indentify what potential problems exist on the client. The errors that I continue to receive, directs me to believe that the nrpe plugins are not stored in what should be its correct location, based on the following error message --> (Return code of 127 is out of bounds - plugin may be missing). The truth of the matter is that the plugin are stored in the correct directory path location.
 As always there continues to be some type of issue when installing these different packages on a system, with the objective of getting it working as it should. I will continue to work towards working out these ongoing kinks. I have taken the liberty to offer a couple screenshots of my initial progress. I will check back in very soon to offer details of my progress with this project.

Tuesday, November 23, 2010

Settng Up Nagios Client on ARM Error(s)

My work on one of a cluster of ARM machines have commenced. However, as always I have not evading the difficulties that sometimes persist when installing a new piece of software on a device. First, I was able to download both tarball(s) files needed for installation of Nagios on a client. I then proceeded to compile and install the Nagios plugin on the ARM machine that I was granted access to. I then move on to do the same with the NRPE addon, which as I already mentioned is required for the installation process. Well this was doomed to go wrong...,upon extracting the tarball and running the ./compile command I was confronted with a errror message that was not very surprising. The error message indicated that the openssl library is missing, no surprise there. I figured since I did an install of this nature before I should be okay, to retrieve the header by running the "yum install openssl-devel" command, which was sufficient in my initial install of a Nagios client on another machine. My experience in this case was quite the opposite, I received an error (krb5-libs dependency missing), with a suggestion to run a yum --skip-broken/ yum package-cleanup as way of circumventing the compile process. In all honesty running those previous commands did nothing to facilitate my cause/efforts. This occurrence has set me back once more, with very limited time to meet my deliverables. Please see the screen capture which helps to corroborate what I mentioned above.

Interestingly enough I have not been able to locate a later version of the indicated missing library. At this stage I am bewildered by the outcome. I will offer updates, as they continue to become available.

Sunday, November 21, 2010

SMS setup difficulties with Nagios

I spent the last couple days working on setting up SMS alerts for Nagios, and let me tell you, I have not been able to make a feasible breakthrough on this project task. Unfortunately, all my research time have generated the same result. Some of the websites and Nagios forums I have visited keep offering the same solution to getting SMS operational on a Nagios server.
One of the widely used option works with installing gnokii, which is essentially a modem driver for mobile phones. However, that approach also requires that have a mobile phone that uses a SIM card to be physically connected to the monitoing Nagios host/server, for my purposes this is not practical. One of the setup even talked about having access to a modem/gateway of some sort. I have resigned to the fact that this part of the project, may require a lot more effort than what meets the eye.
I believe the next best practical approach would be to address something that is more easily attainable at this point, and then revisit this issue that is of course if time permits. At this point the goal would be to gain approved access to a number ARM processors within the network infrastructure, get those devices configured and move forward/backward from that point. Let's see how this phase progresses. I will offer new details to you'll on my next blog session.

Friday, November 19, 2010

Understanding how GIT works!

Well folks as a conclsion to my learning curve with GIT, I have to say that using it can make the ongoing tracking of configuration files so much easier. There are an extensive cluster of useful commands that can be used to make the process of version control efficient. I stumbled across what I consider a really good and informative website, which offered a number of easy to understand examples related to GIT. I am definitely going to refer to that website if the need arises in the near future.Back to continuing the implementation of Nagios across multiple platforms, with the addition of some unique features. Stay tuned to find out how that goes....

Note: *Please take the time to view the following site; as it might prove to be helpful to you as well.  -->
Git Reference link:

Saturday, November 13, 2010

Working with GIT continuation

Hello folks! This coming week one of many objectives, will focus on getting started on phase 2 of the Nagios project, and also getting re-aquainted with "GIT." As I stated in my previous blog, I will aim to gain a better understanding of this unique tool. Hopefully with enough practice and concise research, I will grow to accept the use and capabilities of GIT. The interesting thing about me setting these objectives is that I have to fit this in with everything that form and shape my current schedule. This is where the challenge currently lies. In any event I have to make a concerted effort to get it done!!!! I will keep everyone posted on this process as it gracefully evolves. Later!

Friday, November 12, 2010

Working with GIT (Version Control System)

Today I will offer some details about my experience with "GIT", which has been a learning curve to say the least. In my testing encounter I was given the task to clone a repo (repository) using the following command syntax: --> as an example git clone git://nurburgring.senecac.on.ca/game --> Next, I changed into the directory (game)
Then ran the command git checkout  -b <myusername> to add a branch
Next, I accessed the file specified, using nano <file> entered some data, then Save and Exited the file.
To add content to the file index, I employed the command  git add <specify filename>
To commit to the previous editing actions taken, the commit command was executed  --> usage: git  commit (which did its job).

To pull another branch command usage:
git  origin  <branchname> was effectively able to accomplish that step requirement.

In conclusion my experience working with "GIT" was very insightful, considering it was my first intro to this unique Open Source content tracker. I can easily say that there is still a lot to learn about this program, and I hope to delve into gaining a more in-depth knowledge of its various capabilities in the immediate future.

Friday, November 5, 2010

Nagios Implementation On Client Part 3

I went to bed thinking about this project, since it stole my sanity time, and got up thinking that I could have offered some visuals of Nagios network monitoring in its current operational state...so here we go, below are a few screenshots that will help to render these visuals.
                             
                                         Network Map

                                  Host Status Details

                                  System Status Details

                                  Services Detail Pane

I hope the above rendered screen captures helps to justify the objective achieved. Now its time to go get some more sleep. Boy am I tired!

Nagios Implementation On Client Part 2

As a continuation to part 1, I have some really good news, my goal for this task has been achieved. We now have a fully functional Nagios server, which is providing ongoing network monitoring for a client on a separate machine.

In an effort to offer a high level insight into the approach I took, with the assigned task of setting up a client machine to be monitored by dedicated host (Nagios Server) on another machine.  The initial stages of setting up a Nagios client on another machine involved the creation of a user (named nagios) and the assignment of password for that user. Then I had to obtain NRPE (Nagios Remote Plug-in Executor) plugins for both machines. The tarball files were obtained via a dedicated Nagios software web source. Once those files were downloaded and extracted onto the respective machines (Client and Server), I then proceeded to fulfill the compile and install process. As with every build however, there are always bumps in the road. One of the bumps I encountered occured during of compiliing the NRPE plugin. The error that I was faced with prompted me to do some additional research, as the tutorial that used did not highlight or integrate the needed actions to circumvent such a problem. See screenshot which helps to reflect this occurence.


During my research I came across a website that offered relevant info to resolving this issue: Assistive Resource Link  -> Under the Section compile and configure NRPE it says that "you need the openssl-devel package installed to compile NRPE with SSL support." So issued the yum install (yum utility) to add the needed library, and tried recompiling; as a result the compile and install process proved to be successful.



I then had to install the the plug-ins for "in-house" testing, followed by the installation of the NRPE daemon as a service, using the command make install-xinetd. The next step involved modifying the NRPE configuration file -> /etc/xinetd.d/nrpe, here I added the IP address of the host machine (server).

I then had to change the firewall settings on the client machine, so thereby allowing the host to connect to client, without firewall interruption.
For the firewall settings I used the command --> iptables -I INPUT -p tcp -m tcp ---dport 5666 -j ACCEPT which provided access to the Registered port number 5666 on the client. (The configuration on the client is complete)

I then had to compile and install the NRPE tarball addon to the host machine, and also create and make some changes to one of two relevant config files located in --> /usr/local/nagios/etc/command.cfg  -> /usr/local/nagios/etc/objects/command.cfg

The next phase involved "Adding services to be monitored on the remote system." To succcessfully achieve that objective I was required to create template from 'scratch' which is formatted as a mirror of actual example template file that comes with NRPE by default. Within the newly created template file, I created a number of host and service definitions, and then ran a "Pre-flight" run to check for possible errors in the confiiguration files --Pre-flight command syntax: /usr/local/nagios/bin/nagios  -v  /usr/local/nagios/etc/nagios.cfg


Once the test produces zero errors then the process is 99.9% completed. Next the firewall on the host machine needs to be modified to allow outgoing traffic to the client on the respective port address. The xinetd service needs to be restarted on the client  and the nagios service needs to be restarted on the host considering changes were made to the config files on both systems. Success!!!!

Next up! Phase 2 implementation of Nagios on other machines, details will be released as time progresses...its sleep time....

Link to install documentation: http://nagios.sourceforge.net/docs/nrpe/NRPE.pdf

Nagios Implementation On Client Part 1

I have just completed a full day with only 1 hour sleep, pretty brutal...the funny thing is that I am running on zero caffeine within my system. Anyway, I have some good news and some news that indicates I am close to achieving my objective, but still not quite at the status of completion. Well I had the opportunity to work on client setup of Nagios on a system separate from the host monitoring system. FIrst off, I must say that most recent experience, while working on this particular task, that gained some very insightful background knowledge of how Nagios works and how the entire monitoring process unfolds from the backend. There are some many configuration files for this setup, which only helps to make this system monitoring even more intriguing.
My efforts so far have seen me setup the NRPE (Nagios Remote Plug-in Executor) daemon and additonal NRPE plugins on a second system. This setup was also implemented on the host system as well. I was able to get the host to communicate with client very briefly based on a test that verifies that the host can access the appropriate port setup (Registered port 5666) on the client. From that test I was able to obtain the version number of the installed plug-in on the client, which was as expected. However, the minor road block encountered at the moment is the monitoring of the processes from the host machine, which is due to some form host name (naming issue) in the template file created, which will carry out the monitoring process as per specifications set within. Will be working on that during the continuation of the day, with hopes of putting this baby to bed...goodnight. Oops. It is Friday morning. Will provide further details as they become available.