nagios-4.0.8 安装部署
1.Nagios工作原理
Nagios周期性调用插件检测服务器状态,并维持一个队列,所有插件返回状态信息都进入队列,Nagios每次从队首开始读取信息,并把状态通过web显示。
安装完成后,在nagios主目录下/libexec放有nagios自带所有插件,如check_disk检查磁盘空间插
2.安装阿里源
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum clean all && yum makecache fast
#安装epel源
yum install -y epel-release
yum makecache fast
3.服务器端
#安装httpd和php
yum install -y httpd
yum install -y php php-cli php-common
#下载
cd /opt
wget http://nagios-plugins.org/download/nagios-plugins-2.2.1.tar.gz
wget https://github.com/NagiosEnterprises/nrpe/archive/nrpe-3.0.tar.gz
[root@localhost opt]# ll
总用量 14052
-rw-r--r-- 1 root root 11155576 3月 7 17:04 nagios-4.2.1.tar.gz
-rw-r--r-- 1 root root 2695301 3月 7 17:04 nagios-plugins-2.1.2.tar.gz
-rw-r--r-- 1 root root 518015 3月 7 17:04 nrpe-3.2.1.tar.gz
#解压
tar axf nagios-4.2.1.tar.gz
tar axf nagios-plugins-2.1.2.tar.gz
tar axf nrpe-3.2.1.tar.gz
4.安装依赖包
#服务器端
yum install -y gcc glibc gcc-c++ make cmake unzip glibc-common gd gd-devel php perl-devel mysql-server openssl-devel
#客户端依赖
yum install -y gcc glibc make cmake glibc-common gd gd-devel php perl-devel mysql-server openssl-devel
5.编译安装nagios
mkdir /usr/local/nagios
cd nagios-4.2.1
./configure --prefix=/usr/local/nagios
make
make install
make install-config # 把配置文件样例复制到nagios的安装目录
make install-commandmode # 给外部命令访问nagios配置文件的权限
make install-init # 把nagios做成一个运行脚本,使nagios随系统开机启动
6.编译安装nagios-plugin
cd /opt/nagios-plugins-2.1.2
./configure --prefix=/usr/local/nagios
make && make install && echo $?
7.编译安装nrpe
cd /opt/nrpe-3.2.1
./configure --prefix=/usr/local/nagios --enable-command-args
编译
make all
安装
添加nagios用户
make install-groups-users
安装
make install
添加主配置文件
make install-config
配置xinetd
make install-inetd
设置nrpe管理命令
make install-init
编译插件
make check_nrpe
安装插件
make install-plugin
7.修改nrpe配置
#先备份
cp /usr/local/nagios/etc/nrpe.cfg{,.bak}
#将hda1改为sda
command[check_hda1]=/usr/local/nagios/libexec/check_disk -w 20% -c 10% -p /dev/sda
#启动nrpe
/usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d
8.修改httpd配置
#先备份
cp /etc/httpd/conf/httpd.conf{,.bak}
vim /etc/httpd/conf/httpd.conf
#在文件最后添加
ScriptAlias /nagios/cgi-bin "/usr/local/nagios/sbin"
<Directory "/usr/local/nagios/sbin">
AuthType Basic
Options ExecCGI
AllowOverride None
Order allow,deny
Allow from all
AuthName "Nagios Access"
AuthUserFile /usr/local/nagios/etc/htpasswd
Require valid-user
</Directory>
Alias /nagios "/usr/local/nagios/share"
<Directory "/usr/local/nagios/share">
AuthType Basic
Options None
AllowOverride None
Order allow,deny
Allow from all
AuthName "nagios Access"
AuthUserFile /usr/local/nagios/etc/htpasswd
Require valid-user
</Directory>
#启动httpd
systemctl restart httpd
参考: http://blog.51cto.com/13323775/2085624
9.修改nagios配置
htpasswd -c /usr/local/nagios/etc/htpasswd admin
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
· 【译】Visual Studio 中新的强大生产力特性
· 2025年我用 Compose 写了一个 Todo App