设为首页 收藏本站
查看: 784|回复: 0

监控服务之nagios服务

[复制链接]

尚未签到

发表于 2019-1-13 06:20:55 | 显示全部楼层 |阅读模式
监控服务之nagios服务搭建

    Nagios是一款开源的监控软件,与cacti,zabbix等开源监控软件并驾齐驱,它能够有效监控windows,linux,unix,交换机和路由器的主机状态和相关运行的服务,在系统或者服务异常时发出邮件或者短信报警,通知运维人员解决问题。ngios本身并没有监控功能,他是通过nagios-plugin插件完成的,插件将结果返回给nagios,然后nagios再以web界面的方式将信息呈现出来,出错了就告警,通过轻量级服务nrpe和nagios-plugin可以实现对远程服务器主机状态和网络服务的监控。
  准备材料:
  nagios-cn-3.2.3.tar.bz2    nagios-plugins-2.1.1.tar.gz   gd-devel-2.0.35-11.el6.x86_64.rpm
  步骤:
  第一步:(nagios服务安装)   --server
  #yum  install  -y  gcc  gcc-c++ 编译环境   
  #yum  install -y gd-devel-2.0.35-11.el6.x86_64.rpm 解决nagios服务的依赖项。
  #yum  install -y httpd  安装apache服务
  #/etc/init.d/httpd start
  #groupadd  nagcmd  新建nagcmd组,主要是方便后续文件的访问
  #useradd  -M -d  /usr/local/nagios  -G nagcmd   nagios
  #usermod  -G nagcmd  apache 添加apache用户到nagcmd组里面,方便访问
  #tar  -jxf  nagios-cn-3.2.3.tar.bz2  解压文件
  #./configure  --with-command-group=nagcmd  配置文件,指定命令组为nagcmd
  #make all     编译
  #make install        安装
  #make install-init
  #makeinstall-commandmode
  #makeinstall-config
  #makeinstall-webconf
  #vim /etc/hosts
172.25.45.20 server20.example.com  (真机,便于解析)
  #/etc/init.d/nagios start    nagios服务启动
  #/etc/init.d/httpdrestart  (注意:此时apache服务一定要重起,否则web页面无法访问,重起的目的是加载nagios服务的一些配置文件)
  
  #Firefox--->172.25.10.100/nagios

  

  
  第二步:(nagios插件的安装)  --server
  #tar  zxf  nagios-plugins-2.1.1.tar.gz
  #yum  install -y  mysql-devel  openssl-devel    进行数据传输加密的依赖项
  #cd  nagios-plugins-2.1.1
  #./configure  ----> make ----->  make install  源码编译三部曲
  #cd   /usr/local/nagios/libexec/
  #chown  nagios.nagios  *  -R  libexec里面的文件用户与用户组全部更改为nagios.nagios
  #/usr/local/nagios/bin/nagios -v  /usr/local/nagios/etc/nagios.cfg  检查nagios主配置文件有没有语法错误。
  /etc/init.d/nagiosreload    没有语法错误,则进行重起
  #Firefox  -->  172.25.45.20/nagios   刷新网页,则能检测相应的数据并且进行监控。
  
  第三步:nagios服务的配置(因为以上那些监控项及服务不是我们需要的,因此我们需要进行私有定制,这就是nagios的优势所在,并且可以随时添加其他的主机和监控的服务)
  # cd/usr/local/nagios/etc/
  #vim nagios.cfg
34 cfg_file=/usr/local/nagios/etc/objects/hosts.cfg
35 cfg_file=/usr/local/nagios/etc/objects/services.cfg
38#cfg_file=/usr/local/nagios/etc/objects/localhost.cfg   
  注销38行,其实是将38行一分为2,也就是上面添加的两行,hosts.cfgservices.cfg文件,使得添加用户和服务分开进行,更加方便。
图:

  # cd  /usr/local/nagios/etc/objects/
  # cp  localhost.cfg  hosts.cfg -p
  #cp  localhost.cfg  services.cfg -p   (此处注意复制时一定要保持用户其用户组均不变,也就是nagios.nagios)
  #vim hosts.cfg          配置host.cfg文件
25 define host{         ###设置为本地主机
26           use        linux-server            
27        host_name    server20.example.com
28        alias        HomeSwitch
29        address      172.25.45.20
30        icon_image     switch.gif
31        statusmap_image  switch.gd2
32         2d_coords     100,200
33        3d_coords      100,200,100
34         }

46 define hostgroup{
47        hostgroup_name  linux-servers
48        alias         Linux Servers
49         members       *  ##成员指任何主机   
50         }
  
  #vim services.cfg      
  1 defineservicegroup{
  2         servicegroup_name 系统负荷检查
  3         alias 负荷检查
  4         members server20.example.com,进程总数,server20.example.com,登录用户数,server20.example.com,根分区,server20.example.com,交换空间利用率  
  5         }
  注意:前面关于hostshostsgroup全部删掉,只剩下一个servergroup services ,且进行全文替换:
“:%s/田朝阳家用机电/server20.example.com/g”
  
  #/usr/local/nagios/bin/nagios -v  /usr/local/nagios/etc/nagios.cfg 语法检查
  #/etc/init.d/nagiosreload
  #firefox  --> 172.25.45.20/nagios  刷新页面
  
  ######cd libexec/--> ./check_disk -w 20 -c 10
  
  第四步:监控客户端的运行主机的网络服务及主机资源 --> client
  资料: nrpe-2.15.tar.gz   nagios-plugins-2.1.1.tar.gz
  () mysql服务的监控   server2.example.com   ip 172.25.45.3
  #yum install -ymysql-server       安转数据库
  #/etc/init.d/mysqld   start             启动数据库
  #mysql_secure_installation              数据库初始化
  #mysql -uroot-predhat            登陆数据库     
> create database nagdb;        创建nagdb
> grant all on nagdb.* to nagios@172.25.45.20identified by 'westos';  授权并建立用户nagios;
>quit
  # netstat-antlpe     查看数据库端口有没有打开;
  
  ####server端进行验证以及相应mysql服务监控的配置;
  #cd  /usr/local/nagios/libexec
  #  ./check_mysql -H 172.25.45.3  -u nagios  -p westos  进行验证,看能否有数据过来。或者使用远程登陆数据库;
  (或者 # mysql -h  172.25.45.3  -u nagios  -p  westos )
  
  # cd   /usr/local/nagios/etc/objects        #添加check_mysql命令
  # vim  command.cfg
##### 'check_mysql' command definition
215 define command{
216    command_name    check_mysql
217    command_line   $USER1$/check_mysql   -H$HOSTADDRESS$  -u  $ARG1$  -p  $ ARG2$
218        }

# vim  hosts.cfg           ####添加主机 ip172.25.45.3
36define host{         ###且主机名为server2.example.com
37        use                         linux-server
38        host_name     server2.example.com
39        alias        HomeSwitch
40        parents       server20.example.com
41        address       172.25.45.3
42        icon_image     switch.gif
43        statusmap_image  switch.gd2
44        2d_coords      200,200
45        3d_coords      200,200,100
46        }
  
  # vim  services.cfg              ###添加监控的服务--MYSQL
112 define service{
113        use          local-service
114        host_name       server2.example.com
115        service_description     MYSQL
116        check_command    check_mysql!nagios!westos
117         }
注意:此处的check_mysql后面跟的是mysql的用户名和密码;
119 define service{
120        use         local-service  
121        host_name     server2.example.com
122        service_description     交换空间利用率
123        check_command       check_local_swap!20!10
124         }

  # /usr/local/nagios/bin/nagios  -v  /usr/local/nagios/etc/nagios.cfg
  #/etc/init.d/nagios   reload
  Firefox  ----> 172.25.45.20/nagios    刷新

  
(二) 对客户主机资源的监控  server2.example.com   ip 172.25.45.3
  A.客户端配置
  # tar  zxf  nagios-plugins-2.1.1.tar.gz   
  # yum  install -y  gcc  gcc-c++     ###编译软件,不然无法编译。
  # yum  install -y  mysql-devel  openssl-devel
  # useradd  -M  -d  /usr/local/nagios   nagios   建立用户nagios 并制定用户家目录为:/usr/local/nagios
  #cd  nagios-plugins-2.1.1         ###源码编译三部曲
  # ./configure   --> make all  --> make  install
  # cd  /usr/local/nagios/   
  # chown  nagios.nagios .  –R     ##更改文件的用户及用户组
  # tar  zxf  nrpe-2.15.tar.gz     
  # cd   nrpe-2.15  
  # yum  install -y   xinetd     
  注:xinetd是新一代的网络守护进程服务程序,又叫超级Internet服务器,常用来管理多种轻量级Internet服务,Xinetd是基于服务的超级服务,用来管理和保护轻量级服务,此处就是用来保护nrpe服务的,防止DOS***。
  ##nrpe服务进行编译安装。
  # ./configure  --> # make  all   
  # makeinstall-plugin  --> # makeinstall-daemon -->
  # makeinstall-daemon-config  --> # makeinstall-xinetd  
  #/etc/init.d/xinetdstart
  # vim  /etc/xinetd.d/nrpe
15 only_from       =172.25.45.20  只允许此ip 取数据。
  #vim  /etc/services
22  nrpe            5666/tcp    添加nrpe服务端口5666
  #netstat  -antlpe    查看端口号5666
  # cd  /usr/local/nagios/libexec
  # scp  check_nrpe root@172.25.45.20:/usr/local/nagios/libexec/
  #/etc/init.d/xinetd   restart      服务重起
  B服务器端配置
  #cd  /usr/local/nagios/libexec
  #chown  nagios.nagios check_nrpe   传过来的文件用户及组需要改成nagios.nagios
  #./check_nrpe      -H 172.25.45.3 -c check_disk   进行验证是否有数据返回过来。
  
  配置server服务器的command.cfg  services.cfg hosts.cfg 文件,使服务器能取得客户端的数据并能通过WEB界面监控显示出来。
  #cd  /usr/local/nagios/etc/objects
  # vim  command.cfg
#####'check_nrpe' command definition
222 define command{
223    command_name    check_nrpe
224     command_line    $USER1$/check_nrpe  -H $HOSTADDRESS$   -c  $ARG1$
225     }
  #vim   hosts.cfg  :由于之前已经加入了此ip的主机,故此处不用添加,要是添加其他ip主机,则方法和之前类似。
  # vim  services.cfg
120 define service{
121      use         local-service  
122      host_name   server2.example.com
123      service_description   根分区
124      check_command    check_nrpe!check_disk
125        }
127 define service{
128        use            local-service      
129        host_name      server2.example.com
130        service_description   登陆用户数
131        check_command   check_nrpe!check_users
132        }
  #/usr/local/nagios/bin/nagios  -v  /usr/local/nagios/etc/nagios.cfg
  #/etc/init.d/nagios   reload
  # Firefox   172.25.45.20/nagios    刷新网页
  图:
  
  
  第五步:添加告警功能(110云告警:短信,电话,邮件)
  请看下回,110云告警功能。
  




运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-662498-1-1.html 上篇帖子: RedHat6.5上部署Nagios 下篇帖子: web+nagios+nagiosql安装部署
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表