HCRM博客

如何在CentOS上安装Nagios监控工具?

CentOS系统部署Nagios监控服务的完整指南

在运维管理领域,Nagios作为一款开源的网络监控工具,凭借其强大的插件生态与灵活的自定义能力,成为企业级服务器监控的优选方案,本文将以CentOS系统为基础,详细介绍如何从零开始部署Nagios,帮助用户快速搭建监控环境。

如何在CentOS上安装Nagios监控工具?-图1

**环境准备与依赖安装

系统要求

- CentOS 7或更高版本(本文以CentOS 7.9为例)

- 至少2GB内存及20GB磁盘空间

- 已配置稳定的网络连接

步骤1:更新系统与安装基础依赖

执行以下命令更新系统并安装必要组件

如何在CentOS上安装Nagios监控工具?-图2
  • yum update -y
  • yum install -y httpd php gcc glibc glibc-common gd gd-devel make net-snmp openssl-devel

此步骤确保后续编译安装所需的开发库及Web服务支持。

步骤2:创建Nagios专用用户与用户组

为保障安全,建议为Nagios创建独立用户:

  • useradd nagios
  • groupadd nagcmd
  • usermod -a -G nagcmd nagios
  • usermod -a -G nagcmd apache # 允许Apache访问Nagios资源

源码编译安装Nagios Core

步骤3:下载并解压Nagios源码包

前往官方仓库获取最新稳定版本(如Nagios Core 4.4.12):

  • wget https://github.com/NagiosEnterprises/nagioscore/archive/release-4.4.12.tar.gz
  • tar -zxvf release-4.4.12.tar.gz
  • cd nagioscore-release-4.4.12/

步骤4:配置编译参数并安装

依次执行以下命令完成编译:

  • ./configure --with-httpd-conf=/etc/httpd/conf.d
  • make all
  • make install # 安装主程序
  • make install-init # 生成Systemd服务文件
  • make install-config # 复制配置文件
  • make install-commandmode # 设置目录权限

步骤5:配置Apache虚拟主机

编辑apache配置文件/etc/httpd/conf.d/nagios.conf,确保包含以下内容:

  • ScriptAlias /nagios/cgi-bin "/usr/local/nagios/sbin"
  • <Directory "/usr/local/nagios/sbin">
  • Options ExecCGI
  • AllowOverride None
  • Require all granted
  • </Directory>
  • Alias /nagios "/usr/local/nagios/share"
  • <Directory "/usr/local/nagios/share">
  • Options None
  • AllowOverride None
  • Require all granted
  • </Directory>

重启Apache服务:

  • systemctl restart httpd

配置Nagios Web界面与基础监控

步骤6:设置Web登录认证

生成管理员账号密码:

  • htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin

根据提示输入密码,后续可通过此账号登录Web界面。

步骤7:启动服务并设置开机自启

  • systemctl start nagios
  • systemctl enable nagios
  • systemctl enable httpd

步骤8:验证安装结果

访问http://服务器IP/nagios,使用设置的账号密码登录,若页面显示“Nagios Core 4.4.12”,则安装成功。

**基础监控配置示例

监控本地服务器负载

1、添加主机定义

编辑/usr/local/nagios/etc/objects/localhost.cfg,确认以下内容:

  • define host {
  • use linux-server
  • host_name localhost
  • alias CentOS Server
  • address 127.0.0.1
  • }

2、启用HTTP监控插件

修改/usr/local/nagios/etc/objects/commands.cfg,添加HTTP检测指令:

  • define command {
  • command_name check_http
  • command_line $USER1$/check_http -H $HOSTADDRESS$
  • }

3、重新加载配置

  • /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg # 验证配置
  • systemctl reload nagios

**常见问题排查

Web界面无法访问

检查防火墙是否开放80端口:

  • firewall-cmd --permanent --add-service=http
  • firewall-cmd --reload

若使用SELinux,需调整策略:

  • setsebool -P httpd_can_network_connect 1

Nagios服务启动失败

查看日志定位错误:

  • journalctl -u nagios -n 50 --no-pager

插件执行权限不足

确保插件文件权限为755:

  • chmod -R 755 /usr/local/nagios/libexec

**个人观点

Nagios的部署过程虽需手动配置,但其模块化设计使得后期扩展极为便捷,对于中小规模的环境,建议优先使用官方插件库;若需监控云服务或自定义应用,可结合NRPE(Nagios远程插件执行器)实现分布式监控,值得注意的是,Nagios的强项在于其高度可定制性,但初次接触时可能需要投入时间熟悉配置语法,运维团队可根据实际需求,逐步引入Grafana等可视化工具,进一步提升监控数据的可读性。

本站部分图片及内容来源网络,版权归原作者所有,转载目的为传递知识,不代表本站立场。若侵权或违规联系Email:zjx77377423@163.com 核实后第一时间删除。 转载请注明出处:https://blog.huochengrm.cn/pc/31382.html

分享:
扫描分享到社交APP
上一篇
下一篇