本文共 6286 字,大约阅读时间需要 20 分钟。
测试环境
主监控机:CentOS 7.5 192.168.131.10被监控机:CentOS 6.2 192.168.131.20安装包:nagios-3.5.1.tar.gznrpe-2.15.tar.gznagios-plugins-2.1.1.tar.gz 主机:192.168.131.10配置1.安装依赖包yum install -y gcc glibc glibc-common php gd gd-devel libpng libmng libjpeg zlibsystemctl start httpd2.添加nagios用户useradd nagiosgroupadd nagcmdusermod -G nagcmd apache3.二进制包安装nagiosmkdir /opt/nagiostar zxvf nagios-3.5.1.tar.gz -C /opt/nagioscd /opt/nagios./configure --with-command-group=nagcmdmake allmake install && make install-init && make install-commandmode && make install-config && make install-webconf//make install #安装生成/usr/local/nagios/,其中/usr/local/nagios/share即nagiosWEB 访问界面的站点目录
//make install-init #安装生成/etc/rc.d/init.d/nagios 启动脚本//make install-config #安装生成/usr/local/nagios/etc下的nagios相关配置文件//make install-commandmode #设定相应nagios工作目录的权限//make install-webconf #安装Nagios的WEB配置文件到Apache的conf.d目录下认识一下nagios的配置文件 vim /usr/local/nagios/etc/nagios.cfg*logfile=/var/log/nagios/nagios.log #日志位置cfgfile=/etc/nagios/objects/commands.cfg #这个文件定义了很多命令cfgfile=/etc/nagios/objects/contacts.cfg #定义联系人,怎么联系cfgfile=/etc/nagios/objects/timeperiods.cfg #定义了时间段cfgfile=/etc/nagios/objects/templates.cfg #模板(联系人,主机,时间)cfgfile=/etc/nagios/objects/localhost.cfg #监控本机相关配置文件#cfgfile=/etc/nagios/objects/windows.cfg #windows,默认不监控#cfgfile=/etc/nagios/objects/switch.cfg #交换机路由器监控,默认不监控#cfgfile=/etc/nagios/objects/printer.cfg #打印机监控,默认不监控 #cfgdir=/etc/nagios/servers #定义了服务合集(多个使用)#cfgdir=/etc/nagios/printers #定义了打印机合集(多个使用)#cfgdir=/etc/nagios/switches #定义了交换合集(多个使用)#cfgdir=/etc/nagios/routers #定义了路由合集(多个使用) resourcefile=/etc/nagios/private/resource.cfg 资源变量配置文件,包括$USER1$变量(一个路径)等statusupdateinterval=10 #状态更新时间,单位slogrotationmethod=d #日志滚动,默认天servicechecktimeout=60 #服务检查超时时间hostchecktimeout=30 #主机检查超时时间eventhandlertimeout=30 notificationtimeout=30ocsptimeout=5perfdatatimeout=5**vim /usr/local/nagios/etc/cgi.cfg
//此配置文件比nagios.cfg优先级高main_config_file= /usr/local/nagios/etc/nagios.cfg #主配置文件physical_html_path= /usr/local/nagios/share #物理路径url_html_path=/nagios #在URL后面加上/nagios才能访问use_authentication=1 #使用认证use_ssl_authentication=0 #不使用sslauthorized_for_system_information=nagiosadmin #认证用户Nagios访问测试
systemctl restart httpd访问地址提示需要账户和密码vi /etc/httpd/conf.d/nagios.confhtpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
systemctl restart httpd 通过-v参数检测配置文件是否有问题/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg两者参数都为0,表示没有错误,以守护进程方式启动/usr/local/nagios/bin/nagios -d /usr/local/nagios/etc/nagios.cfg安装nagios-plugins插件为了能够监控mysql,我们要在主监控机上安装mysql客户端yum install mysql mysql-develtar xvf nagios-plugins-2.1.1.tar.gz -C /opt/nagioscd /opt/nagios/nagios-plugins-2.1.1./configure --with-nagios-user=nagios --with-nagios-group=nagcmdmake && make install 重启nagiossystemctl restart httpd; /etc/init.d/nagios restart浏览器测试:登陆之后,点击hosts,可以看到,默认监控的是本机,说明环境nagios监控本机服务器监控本地nfs状态yum -y install nfs-utilscd /usr/local/nagios/etc/objectsvi localhost.cfg*define service{
use local-service hostname localhost servicedescription NFS checkcommand checktcp!2049 }#在使用check命令之前,要确保下/usr/local/nagios/libexec/ 目录下有没有你需要的check命令,如果有,直接调用,如果没有,检测端口来代替,检测格式: checktcp!端口号*
重启nagios
/etc/init.d/nagios restart修改主题的话 把相应主题包解压到 /usr/local/nagios/share/目录下,重启nagios就可以生效
unzip vautour_style.zip -d /usr/local/nagios/share/ nagios监控远程mysql在主监控机192.168.131.10上配置nagios服务vi /usr/local/nagios/etc/nagios.cfgcfgfile=/usr/local/nagios/etc/objects/localhost.cfg #在这两行下面添加下面两行cfgfile=/usr/local/nagios/etc/objects/hosts.cfgcfgfile=/usr/local/nagios/etc/objects/service.cfg
vi /usr/local/nagios/etc/objects/hosts.cfg
define host{ use linux-server #使用的模板名字hostname sep-mysql #主机名address 192.168.131.20 #IP地址}
vi /usr/local/nagios/etc/objects/service.cfg
define service{ use local-service hostname sep-mysql servicedescription MySqlSev checkcommand checkmysql}
vi /usr/local/nagios/etc/objects/commands.cfg
define command{ commandname checkmysql commandline $USER1$/checkmysql -H $HOSTADDRESS$ -u nagios –p123456 -d nagios}本机通过该命令测试/usr/local/nagios/libexec/check_mysql -H192.168.131.20 -unagios -p123456 -d nagios通过nrpe监控外部主机私有信息
客户端的NRPE安装 1:安装nagios- plugins插件 2:安装NRPE( make install-daemon-config make install-xinetd) 3:配置我们xinted服务,允许谁来拿数据 4:启动xinetd 5:查看端口是否正常启动解决依赖 监控机和被监控机都安装yum install -y openssl openssl-devel服务端安装NRPE
tar xvf nrpe-2.15.tar.gz -C /opt/nagioscd /opt/nagios/nrpe-2.15/./configure && make && make installmake install-plugin && make install-daemon #前者安装插件,后者以守护经常来运行ls /usr/local/nagios/libexec/check_nrpe #这个命令需要安装nrpe之后才有客户端配置useradd -s /sbin/nologin nagiosgroupadd nagcmdusermod -G nagcmd nagiosyum install -y xinetd tar xvf nagios-plugins-2.1.1.tar.gz -C /opt/nagiostar xvf nrpe-2.15.tar.gz -C /opt/nagioscd /opt/nagios/nagios-plugins-2.1.1/./configure && make && make installcd ../nrpe-2.15/./configure && make && make installmake install-daemon-config //这里是客户端,不用make-install-pluginmake install-xinetdvim /etc/xinetd.d/nrpeservice nrpe
{ flags = REUSE socket_type = stream port =5666 wait = no user = nagios group = nagios server =/usr/local/nagios/bin/nrpe server_args = -c /usr/local/nagios/etc/nrpe.cfg --inetd log_on_failure += USERID disable = no only_from =127.0.0.1 192.168.131.10 }echo "nrpe 5666/tcp # NRPE" >> /etc/services //端口注册netstat -antup | grep 5666tcp 0 0:::5666 :::* LISTEN 68667/xinetd 客户端nrpe命令vim /usr/local/nagios/etc/nrpe.cfgcommand[check_sdc1]=/usr/local/nagios/libexec/check_disk -w 38% -c 35% -p /dev/sdc1#-w为警告 -C为告急 systemctl restart xinetd服务端手动测试
/usr/local/nagios/libexec/check_nrpe -H192.168.131.20
NRPE v2.15[root@xuegod63 ~]# /usr/local/nagios/libexec/check_nrpe -H192.168.131.20 -c check_sdc1定义被监控主机
cd /usr/local/nagios/etc/objects/vim hosts.cfgdefine host{ use linux-server host_name sep-mysql address 192.168.131.20}定义需要监控的服务
[root@xuegod63 objects]# vim service.cfgdefine service{ use local-servicehost_name sep-mysqlservice_description sdac_Partitioncheck_command check_nrpe!check_sdc1 }定义NRPE监控命令
vim commands.cfg
define command{ command_name check_nrpe command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$ }$ARG1$ 表示调用后面的参数。通过http://www.onealert.com/设置报警
点击配置有相应的操作方式这边配置微信绑定和设置QQ邮箱 就可以收到报警通知转载于:https://blog.51cto.com/5535123/2352249