自己动手,轻松完成nagios安装教程
随着企业规模的不断扩大,服务器数量也随之增加,如何保证服务器的稳定性和安全性成了网络运维人员不可或缺的重要任务。而nagios作为一款开源的网络监控工具,其功能强大,特别适合用于网络运维,因而备受运维人员的喜爱。
本文将介绍nagios安装的具体过程,帮助大家轻松搭建自己的监控平台。
1. 准备工作
在开始安装nagios之前,我们需要先安装一些必要的软件,主要包括:
- Apache服务器
- PHP
- gcc编译器
- gd库
- libjpeg-devel
在CentOS中,可以通过以下命令安装这些软件:
```bash
$ yum install -y httpd php gcc glibc glibc-common gd gd-devel perl postfix
$ yum install -y httpd-devel wget perl* net-snmp xinetd epel-release
```
2. 下载nagios和nagios-plugins
从nagios的官网上下载nagios和nagios-plugins的源码包,可以使用以下命令:
```bash
$ wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-4.2.0.tar.gz
$ wget http://nagios-plugins.org/download/nagios-plugins-2.1.1.tar.gz
```
3. 解压和编译安装
解压下载好的源码包,然后编译安装,具体步骤如下:
- 解压nagios
```bash
$ tar zxvf nagios-4.2.0.tar.gz
```
- 进入解压后的目录
```bash
$ cd nagios-4.2.0
```
- 配置参数
```bash
$ ./configure --with-command-group=nagcmd
```
- 编译
```bash
$ make all
```
- 安装
```bash
$ make install
```
- 安装初始化文件
```bash
$ make install-init
```
- 安装Apache配置文件
```bash
$ make install-config
```
- 添加Apache用户
```bash
$ useradd nagios
$ groupadd nagios
$ usermod -a -G nagios nagios
$ usermod -a -G nagios apache
```
- 解压nagios-plugins
```bash
$ tar -xvf nagios-plugins-2.1.1.tar.gz
```
- 进入解压后的目录
```bash
$ cd nagios-plugins-2.1.1
```
- 配置参数
```bash
$ ./configure --with-nagios-user=nagios --with-nagios-group=nagios
```
- 编译
```bash
$ make
```
- 安装
```bash
$ make install
```
4. 配置文件
安装好nagios和nagios-plugins后,我们需要进行一些配置才能启动nagios。首先需要在nagios配置文件中添加一些主机,然后在nagios-plugins配置文件中添加一些规则。
4.1. nagios配置文件
nagios的配置文件是"nagios.cfg",这个文件在安装nagios的时候已经生成了,但是我们需要对这个文件进行一些修改才能让nagios工作。
首先需要打开配置文件:
```bash
$ vi /usr/local/nagios/etc/nagios.cfg
```
然后将以下内容添加到配置文件中:
```bash
cfg_dir=/usr/local/nagios/etc/servers
```
这个配置文件让nagios在启动的时候自动扫描指定目录下的所有配置文件,并加载到nagios中。
接着需要创建一个目录来存放所有的主机配置文件:
```bash
$ mkdir /usr/local/nagios/etc/servers
$ cd /usr/local/nagios/etc/servers
```
在该目录中,每一个主机都需要一个单独的配置文件。下面是一个简单的模板:
```bash
# Host definition
define host{
use linux-server
host_name debian
alias debian
address 192.168.1.1
}
# Service definition
define service{
use generic-service
host_name debian
service_description SSH
check_command check_ssh
notifications_enabled 0
}
```
这个配置文件指定了一个主机名为debian,IP地址为192.168.1.1,同时还有一个SSH服务需要监控。
最后需要重新启动nagios:
```bash
$ service nagios restart
```
4.2. nagios-plugins配置文件
在安装nagios-plugins的时候,我们已经配置好了它的配置文件"nagios-plugins.cfg"。我们需要在该文件中添加一些规则,以便nagios-plugins能够监控到我们需要的服务。
打开配置文件:
```bash
$ vi /usr/local/nagios/etc/nagios-plugins.cfg
```
接着添加下面的内容:
```bash
# SSH service
define command{
command_name check_ssh
command_line $USER1$/check_ssh -H $HOSTADDRESS$ -p 22
}
# HTTP service
define command{
command_name check_http
command_line $USER1$/check_http -H $HOSTADDRESS$ -I $HOSTADDRESS$ -u /ApacheDefault -w 5 -c 10
}
```
上述配置文件通过自定义命令的方式添加监控规则,分别为SSH服务和HTTP服务。
5. web界面
在配置好了nagios和nagios-plugins之后,我们需要通过web界面来查看监控数据。为此,我们需要安装nagios-web,主要包括nagios-core和nagios-plugins的web界面。
进入nagios的源码目录:
```bash
$ cd /root/nagios-4.2.0
```
执行以下命令编译和安装nagios-web:
```bash
$ make install-webconf
```
安装好nagios-web后,需要启动web服务:
```bash
$ service httpd restart
```
6. 添加主机
现在我们已经配置好了nagios、nagios-plugins和nagios-web,可以进入web界面添加主机进行监控了。打开浏览器,输入服务器IP地址加上端口号,即:http://server_IP/nagios,然后输入刚刚创建的nagios管理员账号和密码进行登录。登录后,点击"Hosts",然后点击"Add New Host"来添加一个新的主机。
在"Add New Host"页面中,需要填写主机的名称、IP地址、监控要求等相关信息。这些信息需要与刚才创建的nagios配置文件中的内容相一致。
7. 总结
通过本文,我们详细介绍了nagios的安装、配置和使用流程,希望能够对大家了解nagios监控工具有所帮助。
在使用nagios的过程中,需要注意的是,nagios能够监控到的服务数量是有限制的,如果需要监控的服务数量过多,可以考虑使用nagios的扩展模块或者选择其他更加强大的监控工具。
总之,在进行网络运维和服务器监控的过程中,选择适合自己的工具和方案非常重要,而nagios作为一款成熟稳定的开源监控工具,其强大的功能和易于扩展的特性,可以满足大多数企业和运维人员的需要。