CentOS安装Nagios+NRPE

2022-06-30 19:01:06 浏览数 (1)

Linux下有2大监控神器cacti nagios,下面我把我自己搭建nagios的步骤记录下来,以便以后需要的时候看。

首先安装依赖包 #yum install -y httpd mysql mysql-devel mysql-server php php-mysql gcc gcc-c gblic gblic-devel gd gd-devel openssl-devel 添加nagios用户,用户组 #groupadd nagcmd #useradd nagios #usermod -a -G nagcmd nagios #usermod -a -G nagcmd daemon(http的user) 下载nagios安装包,解压 开始编译 #./configure --prefix=/etc/nagios >--with-nagios-user=nagios >--with-nagios-group=nagios >--enable-event-broker #make all #make install #make install-init #make install-commandmode #make install-config #make install-webconf(编译安装的httpd会出现错误) 安装nagios-plugins #./configure --with-nagios-user=nagios >--with-nagios-group=nagios >--with-mysql=/path/to/mysql(监控mysql必须添加此选项) #make && make install 下面开始安装nrpe 首先确定开发环境 #yum grouplist 确定有Development tools和Development Libraries 如果没有就安装 #yum groupinstall -y "Development tools" "Development Libraries" 开始安装nrpe #./configure --with-nagios-user=nagios >--with-nagios-group=nagios >--with-nrpe-user=nagios >--with-nrpe-group=nagios >--enable-command-args >--enable-ssl #make all #make install-plugin 服务器端不需要开始nrpe服务

下面开始配置客户端 nrpe依赖于nagios-plugins,首先安装nagios-plugins #./configure --with-nagios-user=nagios >--with-nagios-group=nagios >--with-mysql=/path/to/mysql(监控mysql必须添加此选项) #make && make instal 下面开始安装nrpe #./configure --with-nagios-user=nagios >--with-nagios-group=nagios >--with-nrpe-user=nagios >--with-nrpe-group=nagios >--enable-command-args >--enable-ssl #make all #make install-plugin #make install-daemon(安装守护进程) #make install-daemon-config(安装守护进程配置文件)

修改nrpe.cfg文件 找到allowed_hosts添加你的服务器的IP

启动nrpe /usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d 下面就可以在服务器端定义主机,定义命令开始监控 定义命令 define command{         command_name        check_nrpe         command_line          $USER1$/check_nrpe -H  $HOSTADDRESS$  -c $ARG1$(-c表示在远程执行命令) } 定义主机 define host {         use                            linux-server         host_name                webserver         alias                          web-server         address                      192.168.0.4 } 定义服务 define service {         use                            linux-service         host_name                  webserver         service_description    PING         check_command        check_nrpe!check_ping } 想要监控什么就在客户端上定义命令,在服务器上填写检测内容就可以了

下面附上nrpe的启动脚本 #!/bin/sh # # Source function library if [ -f /etc/rc.d/init.d/functions ]; then   . /etc/rc.d/init.d/functions elif [ -f /etc/init.d/functions ]; then   . /etc/init.d/functions elif [ -f /etc/rc.d/functions ]; then   . /etc/rc.d/functions fi # Source networking configuration. . /etc/sysconfig/network # Check that networking is up. [ ${NETWORKING} = "no" ] && exit 0 NrpeBin=/usr/local/nagios/bin/nrpe NrpeCfg=/usr/local/nagios/etc/nrpe.cfg LockFile=/var/lock/subsys/nrpe # See how we were called. case "$1" in  start)     # Start daemons.     echo -n "Starting nrpe: "     daemon $NrpeBin -c $NrpeCfg -d   echo   touch $LockFile     ;;  stop)   # Stop daemons.   echo -n "Shutting down nrpe: "     killproc nrpe   echo   rm -f $LockFile     ;;  restart)   $0 stop   $0 start     ;;  status)   status nrpe     ;;  *)   echo "Usage: nrpe {start|stop|restart|status}"     exit 1 esac exit 0

0 人点赞