Nagios 分布式
一,分角色
监控中心服务器,分布式服务器,被监控服务器
监控中心服务器:通过NSCA获取分布式监控服务器的相关状态,呈现相关服务器状态和发出报警等;
分布式服务器:通过对被监控服务器状态采集并且把被监控服务器的状态通过NSCA_send发送给监控中心服务器。
被监控服务器:被监控服务器就是生产环境服务器。
二,详细部署
1,被监控服务器
tar -zxvf nagios-plugins-1.4.15.tar.gz
cd nagios-plugins-1.4.15
./configure
make
make install
chown nagios.nagios /usr/local/nagios
chown nagios.nagios /usr/local/nagios
cd ..
ls
tar -zxvf nrpe-2.12.tar.gz
pwd
ls
cd nrpe-2.12
./configure
make all
make install-plugin
make install-daemon
make install-daemon-config
vi /usr/local/nagios/etc/nrpe.cfg
将allowed_hosts=127.0.0.1
修改成你的nagios分布式服务器的ip
/usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d #启动nrpe
netstat -anl|grep 5666#测试监听端口
2,安装分布式服务器
useradd nagios
passwd nagios
groupadd nagcmd
usermod -G nagcmd nagios
usermod -G nagcmd apache #创建Nagios用户 创建组 把用户加入组 并加入apche
tar -zxvf nagios-3.2.3.tar.gz
cd nagios-3.2.3
./configure --with-command-group=nagcmd
make all
make install
make install-init
make install-config
make install-commandmode
tar -zxvf nagios-plugins-1.4.15.tar.gz
cd nagios-plugins-1.4.15
./configure --with-nagios-user=nagios --with-nagios-group=nagcmd
make
make install
chkconfig --add nagios
chkconfig nagios on
tar -zxvf nrpe-2.12.tar.gz
cd nrpe-2.12
./configure
make all
make install-plugin
/usr/local/nagios/libexec/check_nrpe -H 192.168.20.100 #测试被监控服务器是否连通,正常情况下会返回被监控端的NRPE版本
vi /usr/local/nagios/etc/objects/commands.cfg
#check nrpe
define command{
command_name check_nrpe
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
} #添加nrpe外部检测命令
tar -zxvf nsca-2.7.2.tar.gz
cd nsca-2.7.2
./configure
make all
cp sample-config/send_nsca.cfg /usr/local/nagios/etc/
cd /usr/local/nagios/etc/
chown nagios.nagios send_nsca.cfg
cp src/send_nsca /usr/local/nagios/bin/
cd /usr/local/nagios/bin/
chown nagios.nagios send_nsca
vi /usr/local/nagios/libexec/submit_check_result #创建脚本
#!/bin/sh
# Arguments:
# $1 = host_name (Short name of host that the service is
# associated with)
# $2 = svc_description (Description of the service)
# $3 = state_string (A string representing the status of
# the given service - "OK", "WARNING", "CRITICAL"
# or "UNKNOWN")
# $4 = plugin_output (A text string that should be used
# as the plugin output for the service checks)
#
# Convert the state string to the corresponding return code
return_code=-1
case "$3" in
OK)
return_code=0
;;
WARNING)
return_code=1
;;
CRITICAL)
return_code=2
;;
UNKNOWN)
return_code=-1
;;
esac
# pipe the service check info into the send_nsca program, which
# in turn transmits the data to the nsca daemon on the central
# monitoring server
/bin/printf "%s\t%s\t%s\t%s\n" "$1" "$2" "$return_code" "$4" | /usr/local/nagios/bin/send_nsca 192.168.20.195 -c /usr/local/nagios/etc/send_nsca.cfg #此处的IP地址为监控中心服务器。
chmod +x /usr/local/nagios/libexec/submit_check_result
chown nagios.nagios /usr/local/nagios/libexec/submit_check_result
vi /usr/local/nagios/etc/objects/commands.cfg #增加如下检测命令
define command{
command_name submit_check_result
command_line /usr/local/nagios/libexec/submit_check_result $HOSTNAME$ '$SERVICEDESC$' $SERVICESTATE$ '$SERVICEOUTPUT$'
}
vi /usr/local/nagios/etc/nagios.cfg
enable_notifications=0 #禁用告警
obsess_over_services=1#开启被动监控
ocsp_command=submit_check_result#定义每次执行完检查后执行的命令
obsess_over_hosts=1#开启主机被动监控
ochp_command=submit_check_result#指定每次执行完主机检查后执行的命令
vi /usr/local/nagios/etc/send_nsca.cfg
password=urgamer#设置密码,此处设置的密码要和监控中心服务器一致
配置被监控的服务器,此处配置在分布式监控服务器上配置
cd /usr/local/nagios/etc/objects/
vi hosts.cfg
define host{
use linux-server ; Name of host template to use
; This host definition will inherit all variables that are defined
; in (or inherited by) the linux-server host template definition.
host_name urg-test01
alias linux-test01
address 192.168.20..100
}
vi services.cfg
define service{
use local-service ; Name of service template to use
host_name urg-test01
service_description PING
check_command check_ping!100.0,20%!500.0,60%
}
define service{
use local-service ; Name of service template to use
host_name urg-test01
service_description Root Partition
check_command check_nrpe!check_local_disk!20%!10%!/
}
define service{
use local-service ; Name of service template to use
host_name urg-test01
service_description Current Users
check_command check_nrpe!check_local_users!20!50
}
define service{
use local-service ; Name of service template to use
host_name urg-test01
service_description Total Processes
check_command check_nrpe!check_local_procs!250!400!RSZDT
}
vi nagios.cfg #添加以下两行配置
cfg_file=/usr/local/nagios/etc/objects/hosts.cfg
cfg_file=/usr/local/nagios/etc/objects/services.cfg
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg #检查配置文件
service nagios start #启动nagios
3,安装监控中心服务器
首先确认监控中心服务器已经安装了apache且禁用了SElinux
useradd nagios
passwd nagios
groupadd nagcmd
usermod -G nagcmd nagios
usermod -G nagcmd apache #创建Nagios用户 创建组 把用户加入组 并加入apche
tar -zxvf nagios-3.2.3.tar.gz
cd nagios-3.2.3
./configure --with-command-group=nagcmd
make all
make install
make install-init
make install-config
make install-commandmode
make install-webconf
htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
tar xzf nagios-plugins-1.4.11.tar.gz
cd nagios-plugins-1.4.11
./configure --with-nagios-user=nagios --with-nagios-group=nagcmd
make
make install
chkconfig --add nagios
chkconfig nagios on
tar -zxvf nsca-2.7.2.tar.gz
cd nsca-2.7.2
./configure
make all
cp /usr/local/src/nsca-2.7.2/src/nsca /usr/local/nagios/bin/
chown nagios:nagios /usr/local/nagios/bin/nsca
cp /usr/local/src/nsca-2.7.2/sample-config/nsca.cfg /usr/local/nagios/etc
chown nagios:nagios /usr/local/nagios/etc/nsca.cf
vi /usr/local/nagios/etc/nsca.cfg
password=urgamer #此处和分布式监控服务器密码一致
vi /usr/local/nagios/etc/nagios.cfg
check_external_commands=1# 配置nagios检查扩展命令
accept_passive_service_checks=1# 配置接受被动服务检测的结果
accept_passive_host_checks=1#配置接受被动主机检测的结果
cd /usr/local/nagios/etc/
mkdir monitor
cd monitor
vi monitor.cfg
define host{
use linux-server
host_name urg-test01
address 192,168,20.100
passive_checks_enabled 1
active_checks_enabled 0
}
define service{
use local-service
host_name urg-test01
service_description Root Partiton
check_command check_local_disk!30%!10!/
check_freshness 1
freshness_threshold 450
passive_checks_enabled 1
active_checks_enables 0
}
/usr/local/nagios/bin/nsca -d -c /usr/local/nagios/nsca.cfg
service nagios restart
此时重新打开浏览器就换显示,新加的服务器。

转载于:https://blog.51cto.com/mllakb/1298081

Nagios 分布式相关推荐

  1. nagios分布式监控中心服务器迁移(使用nsca)

    公司的nagios分布式监控的中心服务器(Web)在台湾的合作方机房,今天他们把我亚马逊云服务器send_nsca发送过来的数据全部屏蔽了,郁闷,只好把nagios的中心服务器迁移到美国机房了. 这台 ...

  2. Nagios nsca插件进程突然死掉

    Nagios  nsca插件进程突然死掉 nsca监控属于被动式监控,是nagios的一个重要插件:使用克隆的方式增加nagios分布式节点一段时间后,nsca进程自动关闭 原因:nsca配置文件没有 ...

  3. Logstash学习

    写在前面:本文是学习总结内容,侵犯到别的文章,在这里说声抱歉~~ 一.基础知识 1.Hello World 运行 在终端中,像下面这样运行命令来启动 Logstash 进程: bin/logstash ...

  4. CentOS6.6+Puppet3.7.4分布式部署Nagios监控系统

    测试框架 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 CentOS-6.6-x86_64(minimal) puppet-3.7.4 ...

  5. Nagios的安装和基本配置(一:知识点总结及环境准备)

    实验目的及要求 掌握Nagios监控的基本使用: 掌握Nagios监控服务的搭建和配置: 实验环境: 1.满足实验要求的PC端: Host-name OS IP sofaware Nagios-ser ...

  6. nagios 数据库管理之 NDOUtils

    1.NDOUtils简介 NDOUTILS ADDON主要用来将Nagios的配置信息和event产生的数据存入数据库(目前的beta版支持mysql和pgsql,稳定版只支持mysql),以方便实现 ...

  7. 分布式监控报警平台Centreon之:Centreon安装(1)

    推荐:10年技术力作:<高性能Linux服务器构建实战Ⅱ>全网发行,附试读章节和全书实例源码下载! 紧接分布式监控报警平台Centreon之:Centreon依赖安装的介绍,进入centr ...

  8. Apache Kafka:下一代分布式消息系统

    简介 Apache Kafka是分布式发布-订阅消息系统.它最初由LinkedIn公司开发,之后成为Apache项目的一部分.Kafka是一种快速.可扩展的.设计内在就是分布式的,分区的和可复制的提交 ...

  9. ZABBIX 企业级分布式监控系统 1 监控系统简介

    了解复杂IT系统的运行状态 监控系统分为两部分:     数据采集         主动模式(上报)(服务器开销小)         被动模式(采集)(服务器开销大)(专用客户端或公用协议)     ...

  10. 云原生时代|分布式系统设计知识图谱(内含 22 个知识点)

    我们身处于一个充斥着分布式系统解决方案的计算机时代,无论是支付宝.微信这样顶级流量产品.还是区块链.IOT等热门概念.抑或如火如荼的容器生态技术如Kubernetes,其背后的技术架构核心都离不开分布 ...

最新文章

  1. python写学生系统-用python编写学生管理系统
  2. 如何了解这个世界(社会)运行的本质
  3. identification for completing the census
  4. Word 2010 制作文档结构之章节自动编号
  5. Notepad++连接VMWare中Linux只能看到/root目录
  6. leetcode892. 三维形体的表面积
  7. python操作mysql事务提交_python关于Mysql操作
  8. Mac安装IDA后各版本android_server
  9. 拓端tecdat|R语言动态可视化:制作历史全球平均温度的累积动态折线图动画gif视频图
  10. java 最长 几个字节,int类型占几个字节_在java中,int类型占四个字节,而byte类型占一个字节...
  11. 数据库系统及应用——班级管理系统
  12. java邮件服务器搭建_邮件服务器+javamail(仅包括发送)搭建
  13. windows彻底永久关闭自动更新的方式
  14. android水电工具softonic,Softonic
  15. Tinker热更新与AndResGuard资源混淆的结合
  16. d2的自定义训练和增强
  17. LNK1104:无法打开文件kernel32.lib的解决方法解决方法
  18. easyUI前端框架的tree(树)前台展示(树形菜单二)——java
  19. 中国的chatGpt-中国chatGPT软件
  20. 磁共振功能成像BOLD-fMRI原理

热门文章

  1. 新员工进入公司,应告知的工作纪律
  2. SVN统计一段时间的日志
  3. VS2017社区版离线下载办法
  4. NPAPI中返回一个字串的正确做法
  5. 吃自己的狗食,用自己的产品——再谈华为芯片
  6. 足球世界杯亚军去的南宁观音寺,咱也去了几次
  7. 通过ln链接目录到目标
  8. 在白宫,郎朗为什么选择了《我的祖国》
  9. 推荐一个C缓冲区的结构
  10. LINUX获得毫秒时间戳的代码