NAGIOS安装

NAGIOS安装

Scroll Down

NAGIOS

简介

Nagios是一款开源的免费网络监视工具,能有效监控Windows、Linux和Unix的主机状态,交换机路由器等网络设备,打印机等。在系统或服务状态异常时发出邮件或短信报警第一时间通知网站运维人员,在状态恢复后发出正常的邮件或短信通知。
在这里插入图片描述

实验准备

在安装Nagios这个监控软件的时候要先安装 openssl-devel这个环境
还要基于LAMP环境来做

实验步骤

创建一个nagios用户

useradd -s /sbin/nologin nagios
mkdir /usr/local/nagios

给予账号对中间件的权限

chown -R nagios:nagios /usr/local/nagios

安装必要的环境

yum -y install mysql mysql-server mysql-devel php* openssl-devel

解压软件包

tar -zxvf nagios-4.0.1.tar.gz -C /usr/src/
tar -zxvf nagios-plugins-1.5.tar.gz -C /usr/src/
tar -zxvf nrpe-2.15.tar.gz -C /usr/src/

进入到nagios-4.0.1中安装软件

./configure  --prefix=/usr/local/nagios/
make all
make install
make install-init
make install-commandmode
make install-config

安装第二个软件包

cd   /usr/src/nagios-plugins-1.5/
./configure --prefix=/usr/local/nagios/ 
make && make install

安装第三个包

cd /usr/src/nrpe-2.15/
./configure && make all 
make install-plugin

nrpe的作用: Nagios的监测服务器能够远程对被监测主机系统上的信息进行获取,比如远程系统上的进程数、磁盘空间使用状况、所运行的服务等等这些必须要登录远程主机系统上才能了解的信息的话,就必须要依靠NRPE这个核心扩展插件程序,NRPE作为中间的代理程序,扮演着一手接受着Nagios监测服务器发来的请求,另一手在远程主机系统上获取指定的信息的中间人角色。
修改配置文件

vim /usr/local/httpd/conf/httpd.conf
ScriptAlias /nagios/cgi-bin/ "/usr/local/nagios/sbin/"
<Directory "/usr/local/nagios/sbin">
    Options Indexes FollowSymLinks
    AllowOverride None
    Order allow,deny
    Allow from all
    AuthName "nagios"
    AuthType Basic
    AuthUserFile /usr/local/nagios/etc/htpasswd.users
    require valid-user
</Directory>
Alias /nagios "/usr/local/nagios/share"
<Directory "/usr/local/nagios/share">
    Options Indexes FollowSymLinks
    AllowOverride None
    Order allow,deny
    Allow from all
    AuthName "nagiosi access"
    AuthType Basic
    AuthUserFile /usr/local/nagios/etc/htpasswd.users
    require valid-user
</Directory>

重启服务

service httpd restart
service nagios restart

把这个添加完了之后你就可以使用本地访问一下http了看一下监控页面行不行
127.0.0.1/nagios
如果不能访问修改一下/usr/local/nagios/etc/cgi.cfg

vim /usr/local/nagios/etc/cgi.cfg 
use_authentication=0 (0:允许访问所有页面。1:禁止)

能访问后这台主机配置到这里告一段落配置下一个它自己本身监控的主机

被监控的主机

这个也要配置yum源
安装环境切记这个跟刚刚的主服务器一样安装openssl-devel环境

yum -y install openssl openssl-devel

创建用户

useradd -s /sbin/nologin nagios

解压源码包并进行安装以及编译

tar -zxvf nagios-plugins-1.5.tar.gz -C /usr/src/
cd /usr/src/nagios-plugins-1.5/
./configure --prefix=/usr/local/nagios 
make && make install
chown -R nagios:nagios /usr/local/nagios/

安装nrpe

tar -zxvf nrpe-2.15.tar.gz -C /usr/src/
cd /usr/src/nrpe-2.15/
./configure --prefix=/usr/local/nagios/
make all
make install-plugin
make install-daemon
make install-daemon-config

安装完之后修改配置文件

vim /usr/local/nagios/etc/nrpe.cfg 
alowed_hosts=127.0.0.1,192.168.10.1 #这个红色写的是主服务器的ip地址,添加监控服务器的IP地址

启动nrpe

 /usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d

验证一下端口是否开启

netstat -anp | grep nrpe		#端口号是TCP5666
主服务器

修改配置文件

vim cgi.cfg
use_authentication=0	#允许客户端认证链接  这个是前面的主服务器要修改的东西允许访问的 
nagios.cfg		#主配置文件,记录日志和子配置文件
resource.cfg		#访问用户
commands.cfg	#命令模板,添加测试命令
contacts.cfg	#联系人
localhost.cfg	#本机检测配置文件
printer.cfg	#打印机检测
switch.cfg	#路由交换检测
templates.cfg	#主机和服务的模板
timeperiods.cfg	#检测时间段模板
windows.cfg	#windows服务器检测

写控制主机的配置文件

cd /usr/local/nagios/etc/objects/
cp localhost.cfg 192.168.1.2.cfg
vim 192.168.1.2.cfg
define host{
        use                     linux-server
        host_name               goucai  #这个是你随便取得名字
        alias                   goucai   #这个是随便改的别名
        address                 192.168.1.2  #这个ip是你被监控的主机ip
        }

下面还有好多服务的东西你自己有什么服务就复制魔板添加即可
在这里插入图片描述
在这里插入图片描述
被控制的主机上添加了什么服务就在这里弄个模板

然后用 : % sub/localhost/goucai/g 用这个把他们全替换名字在这里插入图片描述
修改配置文件

vim /usr/local/nagios/etc/nagios.cfg
cfg_file=/usr/local/nagios/etc/objects/192.168.1.2.cfg 

重启服务

mysql数据库
mysql -u root -p
create database abc;
 grant all on nihao.* to zhang3@'192.168.1.%' identified by '123.com';
flush privileges;

退出数据库

quit
监控服务器上配置

在监控服务器上安装mysql与配套组件

yum -y install mysql mysql-devel
在nagios监控服务器中配置

检测连接数据库服务器

/usr/local/nagios/libexec/check_mysql -u zhang3 -d nihao -H 192.168.1.100 -P3306 --password='123.com'

更改配置文件

vim /usr/local/nagios/etc/objects/commands.cfg
define command{
command_name check_mysql
command_line $USER1$/check_mysql -H $HOSTADDRESS$ -P3306 -u zhang3 -d nihao --password='123.com'
}

定义MySQL监控项

vim /usr/local/nagios/etc/objects/192.168.1.2.cfg
define service{
use local-service
host_name goucai
service_description MYSQL
check_command check_mysql
notifications_enabled 0
}

最后重启nagios服务

完结撒花