使用nagios做运维监控
Nagios是一款开源的网络及服务的监控工具,其功能强大、灵活性强。能有效监控windows、Linux和Unix等系统的主机各种状态信息,交换机、路由器等网络设备,以及主机端口及URL服务等。根据不同业务故障级别发出告警信息给管理员,当故障恢复时也会发出恢复消息给管理员。
1. 环境准备
服务端:192.168.1.201
客户端:192.168.1.201、192.168.1.202
2. 安装nagios和nagios-plugins
- 配置扩展epel yum源 ,见之前的文章 yum源如何使用国内源
2.1 安装服务端
安装nagios服务及相关的服务
注:由于我这里服务端的这台机器本身也是需要呗监控的,所有这台机器服务端和客户端都安装了。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24[root@zmr-service ~]# yum install -y httpd nagios nagios-plugins nagios-plugins-all nrpe nagios-plugins-nrpe
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
base | 3.6 kB 00:00:00
docker-ce-stable | 3.5 kB 00:00:00
updates/7/x86_64/primary_db | 20 MB 00:00:26
正在解决依赖关系
正在检查事务
软件包 nagios.x86_64.0.4.4.9-1.el7 将被 安装
正在处理依赖关系 group(nagios),它被软件包 nagios-4.4.9-1.el7.x86_64 需要
正在处理依赖关系 group(nagios),它被软件包 nagios-4.4.9-1.el7.x86_64 需要
正在处理依赖关系 mailx,它被软件包 nagios-4.4.9-1.el7.x86_64 需要
正在处理依赖关系 nagios-common,它被软件包 nagios-4.4.9-1.el7.x86_64 需要
正在处理依赖关系 nagios-plugins-disk,它被软件包 nagios-4.4.9-1.el7.x86_64 需要
正在处理依赖关系 nagios-plugins-http,它被软件包 nagios-4.4.9-1.el7.x86_64 需要
正在处理依赖关系 nagios-plugins-load,它被软件包 nagios-4.4.9-1.el7.x86_64 需要
正在处理依赖关系 nagios-plugins-ping,它被软件包 nagios-4.4.9-1.el7.x86_64 需要
正在处理依赖关系 nagios-plugins-procs,它被软件包 nagios-4.4.9-1.el7.x86_64 需要
...
...创建用户和密码(可选,默认的用户名和密码都是nagiosadmin)
1
2[root@zmr-service ~]# htpasswd -c /etc/nagios/passwd nagiosadmin
检测配置文件
1
2
3[root@zmr-service ~]# nagios -v /etc/nagios/nagios.cfg
如下图所示即配置正确,没有问题启动服务
1
2[root@zmr-service ~]# service httpd start
[root@zmr-service ~]# service nagios start打开浏览器访问nagios
看知道这个画面,表示服务端已经没问题了
2.2 安装客户端
客户端只需要安装客户端即可,因此不需要再安装nagios服务了
同上,配置扩展epel yum源
安装客户端所需的软件
1
[root@zmr-service ~]# yum install -y nagios-plugins nagios-plugins-all nrpe nagios-plugins-nrpe
编辑配置文件
1
2
3
4
5
6vim /etc/nagios/nrpe.cfg
1.“allowed_hosts=127.0.0.1” 改为 “allowed_hosts=192.168.1.201” ---nagios服务主机
2.” dont_blame_nrpe=0” 改为 “dont_blame_nrpe=1”启动服务
1
[root@zmr-service ~]# service nrpe start
服务端的机器(201),添加被监控的主机
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64[root@zmr-service ~]# cd /etc/nagios/conf.d/
[root@zmr-service ~]# vim 192.168.1.202.cfg
define host{
use linux-server
host_name 192.168.1.202
alias 1.202
address 192.168.1.202
}
define service{
use generic-service
host_name 192.168.1.202
service_description check_ping
check_command check_ping!100.0,20%!200.0,50%
max_check_attempts 5
normal_check_interval 1
}
define service{
use generic-service
host_name 192.168.1.202
service_description check_ssh
check_command check_ssh
max_check_attempts 5
normal_check_interval 1
notification_interval 60
define service{
use generic-service
host_name 192.168.1.202
service_description check_http
check_command check_http
max_check_attempts 5
normal_check_interval 1
}配置说明:
1
2
3
4service_description: 表示检查项的名称
max_check_attempts 5 ;表示当nagios检测到问题时,一共尝试检测5次都有问题才会告警,如果该数值为1,那么检测到问题立即告警。
normal_check_interval 1 ;重新检测的时间间隔,单位是分钟,默认是3分钟
notification_interval 60 ;在服务出现异常后,故障一直没有解决,nagios再次对使用者发出通知的时间。单位是分钟。如果你认为,所有的事件只需要一次通知就够了,可以把这里的选项设为0。检测配置文件,确认没有报错
1
[root@zmr-service ~]# nagios -v /etc/nagios/nagios.cfg
重启nagios服务
1
[root@zmr-service ~]# service nagios start
到页面上确认,监控机也已经出现了