前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >linux学习第七十一篇:LAMP下nagios的安装

linux学习第七十一篇:LAMP下nagios的安装

作者头像
用户1215343
发布2019-07-02 10:08:22
3700
发布2019-07-02 10:08:22
举报
文章被收录于专栏:linux运维学习linux运维学习

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/X__Alone/article/details/80499930

下载nagios的相关安装包 将下载的包放到该目录下 cd /usr/local/src

wget http://downloads.sourceforge.net/project/nagios/nagios-3.x/nagios-3.5.0/nagios-3.5.0.tar.gz wget http://nagios-plugins.org/download/nagios-plugins-1.4.16.tar.gz wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.12.tar.gz

监控端的安装

  1. 创建Nagios用户及组 建立Nagios账号 /usr/sbin/useradd -m -s /sbin/nologin nagios
  2. 创建一个名为nagcmd的用户组,用于从web接口执行外部命令。将Nagios用户和Nginx用户加入组中。 groupadd nagcmd usermod -a -G nagcmd nagios usermod -a -G nagcmd nobody PS:我这里Nginx所属组是nobody。不知道的可以查看配置文件/usr/local/nginx/conf/nginx.conf第一行的user。也可以使用命令ps axu|grep nginx查看进程。
这里写图片描述
这里写图片描述
  1. 编译安装Nagios
代码语言:javascript
复制
tar zxvf nagios-3.5.0.tar.gz
cd nagios
./configure --prefix=/usr/local/install/nagios --with-group=nagios --with-user=nagios --with-command-group=nagcmd --with-gd-lib=/usr/lib --with-gd-inc=/usr/include
make all
make install
make install-init
make install-config
make install-commandmode

PS: make install 用于安装主要的程序、CGI及HTML文件 make install-init 用于生成init启动脚本 make install-config 用于安装示例配置文件 make install-commandmode 用于设置相应的目录权限 修改/usr/local/install/nagios/etc/objects/contacts.cfg 更改nagiosadmin 的联系人定义信息中的 Email 信息为你的 Email 以接收报警内容。 PS: bin–Nagios执行程序所在目录,其中的nagios文件即为主程序。 etc–Nagios配置文件位置 sbin–Nagioscgi文件所在目录,也就是执行外部命令所需文件所在的目录 Share–Nagios网页文件所在的目录 var–Nagios日志文件、spid 等文件所在的目录 var/archives–日志归档目录 var/rw–用来存放外部命令文件

  1. 编译并安装Nagios插件 由于Nagios主程序只是提供一个运行框架,其具体监控是靠运行在其下的插件完成的,所以Nagios插件是必须安装的。
代码语言:javascript
复制
cd  /usr/local/src
tar zxvf nagios-plugins-1.4.16.tar.gz
cd nagios-plugins-1.4.16
./configure --prefix=/usr/local/install/nagios --with-nagios-user=nagios --with-nagios-group=nagcmd
make &&make install

这里make &&make install可能会出这种错误

这里写图片描述
这里写图片描述

按提示说的找到删除stdio.in.h文件,可以使用find命令查找。然后删除提示说的 _GL_WARN_ON_USE (gets, “gets is a security hole - use fgets instead”)这一行。可使用命令sed -i ‘/gets is a security/d‘ gl/stdio.in.h删除 验证Nagios插件是否正确安装 ls /usr/local/install/nagios/libexec #显示安装的插件文件

配置Apache配置文件:/usr/local/apache2.4/conf/httpd.conf 将user和group改为nagios

这里写图片描述
这里写图片描述

增加代码段:

代码语言:javascript
复制
ScriptAlias /nagios/cgi-bin "/usr/local/install/nagios/sbin"
<Directory "/usr/local/install/nagios/sbin">
   AuthType Basic
   Options ExecCGI
   AllowOverride None
   Order allow,deny 
   Allow from all 
   AuthName "Nagios Access"
#   Require valid-user 
</Directory>
Alias /nagios "/usr/local/install/nagios/share"
<Directory "/usr/local/install/nagios/share">
   AuthType Basic
   Options None
   AllowOverride None
   Order allow,deny 
   Allow from all 
   AuthName "nagios Access"
#   Require valid-user 
</Directory>

检查nagios配置文件有没有问题 /usr/local/install/nagios/bin/nagios -v /usr/local/install/nagios/etc/nagios.cfg

重启Apache和nagios /usr/local/apache2.4/bin/apachectl restart service nagios start

打开页面遇到的问题:、 1. 页面出现乱码 在Apache的配置文件中httpd.conf,把这两个注释去掉

这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018年05月31日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 监控端的安装
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档