icinga 服务端-客户端安装配置
2016-04-26 20:45
330 查看
1. 通过共享SSH KEYS 和check_by_ssh 插件来运行远程主机上的插件。
这种方式性能高,尤其是监控的主机数量达到一定规模时候性能较好。
2.通过NRPE addon,NRPE插件可以允许你执行远程主机的plugins
添加普通账户icinga
configure: WARNING: unrecognized options: --with-icinga-user, --with-icinga-group,没什么区别
configure过程的输出信息确认如下:
使用check_nt plugin 来与NSClient++
交互, Icinga server应该先装好check_nt 。
下载最新版本,双击安装即可。这里下载的版本是NSCP-0.4.1.73-x64.msi
属性里设置如下,这里没有设置密码
设置allowed hosts
配置文件在:C:\Program Files\NSClient++\nsclient.ini
这种方式性能高,尤其是监控的主机数量达到一定规模时候性能较好。
2.通过NRPE addon,NRPE插件可以允许你执行远程主机的plugins
我们通过第二种方式NRPE来监控远程主机
先看其原理
如下图,受控端会运行一个nrpe的daemon,监控服务端则通过执行check_nrpe来调用远程主机的npre插件并调用check_命令,并返回数据准备:
yum install gcc openssl-devel
添加普通账户icinga
#> /usr/sbin/useradd icinga #> passwd icinga
编译和安装Icinga插件
#> tar jxvf nagios-cn-plugins-1.5.tar.bz2 #> cd nagios-cn-plugins-1.5 #> ./configure --prefix=/usr/local/icinga --with-cgiurl=/icinga/cgi-bin --with-package-name=icinga-plugins #> make #> make install文档中configure时候还加了 --with-icinga-user=icinga --with-icinga-group=icinga ,我发现加了也不认,似乎也没什么用,加了反而报:
configure: WARNING: unrecognized options: --with-icinga-user, --with-icinga-group,没什么区别
客户端编译和安装Nrpe
#> tar xvzf icinga-nrpe-2.14.tar.gz #> cd icinga-nrpe-2.14 #> /configure #> make all #> make install #> make install-plugin #> make install-daemon #> make install-daemon-config #> make install-init
configure过程的输出信息确认如下:
General Options: ------------------------- NRPE port: 5666 NRPE user: icinga NRPE group: icinga Icinga user: icinga Icinga group: icinga
配置客户端Nrpe
添加服务器地址#> vi /usr/local/icinga/etc/nrpe.cfg #> allowed_hosts=127.0.0.1,IPADDRESS增加command字段来添加要监控的服务
command[check_users]=/usr/local/icinga/libexec/check_users -w 5 -c 10 command[check_load]=/usr/local/icinga/libexec/check_load -w 15,10,5 -c 30,25,20 command[check_hda1]=/usr/local/icinga/libexec/check_disk -w 20% -c 10% -p /dev/hda1 command[check_zombie_procs]=/usr/local/icinga/libexec/check_procs -w 5 -c 10 -s Z command[check_total_procs]=/usr/local/icinga/libexec/check_procs -w 150 -c 200 command[check_ssh]=/usr/local/icinga/libexec/check_ssh -H localhost command[check_swap]=/usr/local/icinga/libexec/check_swap -w 20% -c 10% command[check_mysql]=/usr/local/icinga/libexec/check_mysql -H localhost -uroot -ptomcat2008 command[check_apache]=/usr/local/icinga/libexec/check_apachestatus -H localhost -p 80 command[check_ntp]=/usr/local/icinga/libexec/check_ntp -H localhost -w 0.5 -c 1 command[check_snmp]=/usr/local/icinga/libexec/check_snmp_service -H localhost -C monitor_energysh
启动nrpe
service icinga-nrpe start
验证
检测服务端check_nrpe与客户端运行的nrpedaemon之间的通信/usr/local/icinga/libexec/check_nrpe -H ClientIPADDRESS如果不通,可以关闭防火墙和selinux试试。
监控windows主机
原理
与监控linux原理类似,也是需要一个agent,这个agent叫 NSClient++ addon ,使用check_nt plugin 来与NSClient++
交互, Icinga server应该先装好check_nt 。
安装Windows Agent
官方推荐的是NSClient++ addon,下载地址http://sourceforge.net/projects/nscplus/下载最新版本,双击安装即可。这里下载的版本是NSCP-0.4.1.73-x64.msi
设置Agent
从服务里找到NSClient++,设置服务自动启动属性里设置如下,这里没有设置密码
设置allowed hosts
配置文件在:C:\Program Files\NSClient++\nsclient.ini
[/settings/default] ; ALLOWED HOSTS - A comaseparated list of allowed hosts. You can use netmasks (/ syntax) or * to create ranges. allowed hosts = 10.1.81.199
配置icinga服务端
先放开windows配置vi /usr/local/icinga/etc/icinga.cfg
#cfg_file=/usr/local/icinga/etc/objects/windows.cfg去掉这里的#
vi /usr/local/icinga/etc/objects/windows.cfg定义host和service等
define host{ ; Inherit default values from a Windows server template use windows-server ; make sure you keep this line! host_name winserver alias My Windows Server address 192.168.1.2 }默认已经有了,设置IP等
密码配置
vi /usr/local/icinga/etc/objects/commands.cfg
define command{ command_name check_nt command_line $USER1$/check_nt -H $HOSTADDRESS$ -p 12489 -s $USER9$ -v $ARG1$ $ARG2$ }改为,这里使用空密码
# 'check_nt' command definition define command{ command_name check_nt command_line $USER1$/check_nt -H $HOSTADDRESS$ -p 12489 -s "" -v $ARG1$ $ARG2$ }重启icinga,测试是否好用
调试用下面的命令
/usr/local/icinga/libexec/check_nt -H <ip address> -p <port> -s <password> -v UPTIME
相关文章推荐
- 如果json字符串中的key值中没有数据解析用opt,也会出现空指针异常。
- 25.Spark Sort-Based Shuffle内幕彻底解密
- 提升 LaTeX 效率的小工具:Detexify LaTeX handwritten symbol recognition
- LeeCode-Remove Linked List Elements
- 山东省第五届ACM省赛题——Circle(递推求概率)
- LeeCode-Pow(x, n)
- 学习JAVA一
- HTML 表单(form) 详解
- YEOMAN知识点整理及翻译
- 前端-踩过的坑
- 证书分享给别的电脑用
- 拦截/监听器 —— Filter、Interceptor、Listener
- HDU 1335 (16进制以下)把m进制转换为n进制
- Problem-M
- 100行PHP代码实现socks5代理服务器
- RxJS入门(3)----深入Sequence
- 【opencv学习】之split函数提取多通道图像的单通道图像
- 微信JS-SDK说明文档---自己总结了config时的参数获取方式
- 从一个Activity直接跳转到一个Fragment中,进行相应的操作
- HTML5开发中ping标签的用法及隐私追踪