雷锋 发表于 2019-1-17 09:06:23

nagios监控与飞信运用(二)

此片文章接 nagios 监控运用(一)

3、定义联系人配置文件contacts.cfg
define contact {
   contact_name         lee
   alias                system administrator
   service_notification_period    24x7
   host_notification_period       24x7
   service_notification_options   w,u,c,r
   host_notification_options       d,u,r    # w-warning,u-unknown,c-critical,r-recovery.
   service_notification_commandsservice-notify-by-email
host_notification_commands   host-notify-by-email
   email                        leezhenhua17@163.com   #多个邮箱与多个手机用 逗号 隔开
   pager                        136****0434,138****0504
   }


4、定义联系组配置文件contactgroups.cfg
      define contactgroup {
      contactgroup_name    sagroup
      alias                system administrator group
      members       lee    #多个用户时用逗号隔开,必须和上面contacts.cfg定义
      }


5、定义服务配置文件 services.cfg

#主机监控的服务
   define service {
      host_name      nagios-server
      service_description   check-host-alive
      check_period          24x7
      max_check_attempts    3
      normal_check_interval 3
      retry_check_interval2
      contact_groups      sagroup
      notification_interval   10
      notification_period   24x7
      notification_options    w,u,c,r
      check_command         check-host-alive
      }
define service{
      host_name               nagios-server
      service_description   check_local_disk
      check_command         check_local_disk!10%!5%!/
      max_check_attempts      3
      normal_check_interval   3
      retry_check_interval    2
      check_period            24x7
      notification_interval   10
      notification_period   24x7
      notification_options    w,u,c,r
      contact_groups          sagroup
      }
#被监控机监控服务
define service{
      host_name               mysql
      service_description   check_ssh
      check_command         check_tcp!22
      max_check_attempts      3
      normal_check_interval   3
      retry_check_interval    2
      check_period            24x7
      notification_interval   10    #监控到服务故障后,间隔多长时间通知一次
      notification_period   24x7
      notification_options    w,u,c,r
      contact_groups          sagroup   #联系组 在contactgroup.cfg定义
      }



6、定义监控时间段timeperiods.cfg
define timeperiod{
      timeperiod_name 7x24
      alias         24 Hours A Day, 7 Days A Week
      sunday          00:00-24:00
      monday          00:00-24:00
      tuesday         00:00-24:00
      wednesday       00:00-24:00
      thursday      00:00-24:00
      friday          00:00-24:00
      saturday      00:00-24:00
      }



上面表示   7*24小时监控

二、配置nrpe

配置nagios-server 上的nrpe.cfg配置文件
   pid_file=/var/run/nrpe.pid
   server_port=5666   #所用端口号
   server_address=192.168.2.47   #主机ip地址
   allowed_hosts=127.0.0.1,192.168.2.47   #允许监控主机

被监控机mysql 服务器的nrpe的配置文件只需要修改下ip地址就行

到这里naios 安装以及配置都完成了,下面就要启动了

启动nagios服务

启动nagios-server上的nagios,nrpe服务。
1、启动nrpe服务
#/usr/local/nrpe/bin/nrpe -c /usr/local/nrpe/etc/nrpe.cfg -d


检查服务是否启动
#ps -ef|grep nrpe
nagios    2449   10 Aug10 ?      00:00:44 /usr/local/nrpe/bin/nrpe -c /usr/local/nrpe/etc/nrpe.cfg -d


查看所用端口是否开启,下面说明已经正常开启

# netstat -an
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address               Foreign Address             State      
tcp      0      0 192.168.2.154:5666          0.0.0.0:*                   LISTEN   


2、启动nagios服务 ,首先检查是否有错误

#/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
看到下面几行行是
Total Warnings: 0
Total Errors:   0
Things look okay - No serious problems were detected during the pre-flight check


说明没有错误,启动nagios 就行了
#/usr/local/nagios/bin/nagios -d /usr/local/nagios/etc/nagios.cfg

启动之后,就可以再web界面,监控服务器的详细信息了,输入http://192.168.2.47/nagios输入用户名与密码进入
http://colderboy.blog.运维网.com/attachment/200908/200908111249971588312.jpg

http://colderboy.blog.运维网.com/attachment/200908/200908111249971719906.jpg

依照上面可以添加你希望监控的服务,更多资料参考http://www.nagios.org/documentation 网站。
   

报警的时候在这页面上能看到,系统会自动发送邮件过来提醒,可是,如果不在电脑旁边了,就不知道,那下面就把飞信集成到里面让服务出现问题时,用手机短信提醒。

飞信与nagios结合实现手机短信提醒

1、飞信下载
飞信官方网站:http://www.it-adv.net/
飞信官方lib库下载:
32位官方lib库:http://www.it-adv.net/fetion/library32.rar
64位官方lib库:http://www.it-adv.net/fetion/library64_linux.tar.gz
2、安装飞信
下载到机器之后,通过ssh或者其他上传工具上传到服务器开始安装

# tar -zxvf fetion_linux_20080402.tar.gz



解压完成后产生一个sms的文件。现在运行时会出现报错,需要安装飞信的lib库
解压lib库之后上传到服务器Cp到目录下就行了
看下lib库里面的文件

#ls
libACE.so.5.4.7libACE_SSL.so.5.4.7libcrypto.so.0.9.8libssl.so.0.9.8
# cp *.* /lib/
# cp *.* /usr/lib/

Cp 飞信的执行文件到一个指定的目录下,飞信调用所写路径

# cp sms /usr/local/bin/


现在运行下
#/usr/local/bin/sms
#会提示让加上参数,发送格式如下

#/usr/local/bin/sms -f 飞信用户名 -p 密码 -t 目的手机号 -m "发送信息"

   测试下,看是否能发送到手机上,目的手机必须是好友,否则发送 不成功
把短信加到nagios里面,需要修改下面配置文件,

1、 修改# vi /usr/local/nagios/etc/contacts.cfg文件
define contact {
   contact_name         lee
   alias                system administrator
   service_notification_period    24x7
   host_notification_period       24x7
   service_notification_options   w,u,c,r
   host_notification_options       d,u,r
   service_notification_commandsservice-notify-by-email,service-notify-by-sms
   host_notification_commands   host-notify-by-email,host-notify-by-sms
   email                        leezhenhua17@163.com
   pager                        136****0434,138****0504
   }


2、修改vi /usr/local/nagios/etc/commands.cfg配置文件,把下面内容追加到配置文件中。

###### host-notify-by-sms command definition
   define command{
      command_name    host-notify-by-sms
   command_line /usr/local/bin/sms -f 1358******* -p 123456 -t $CONTACTPAGER$ -m "$NOTIFICATIONTYPE$ alert - Host $HOSTNAME$ is $HOSTSTATE$ on $LONGDATETIME$"
   }###### service-notify-by-sms command definition
define command{
      command_name service-notify-by-sms
      command_line /usr/local/bin/sms -f 1358******* -p 123456 -t $CONTACTPAGER$ -m "$NOTIFICATIONTYPE$: $HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$ on $LONGDATETIME$"
}


   保存退出,之后重新启动nagios,启动完成之后,当服务报警的时候,你就可以收到手机短信了。服务ok之后还会有一个ok的短信提示你服务已经ok。
这里nagios 就算完成了,就可以 通过web界面、邮件、手机短信第一时间知道服务器的状态。
    我这里用了免费的飞信做手机提醒,还可以用 短信网关,短信猫都能与nagios 结合实现短信提醒。



页: [1]
查看完整版本: nagios监控与飞信运用(二)