监控之--Nagios如何监控本地主机及本地服务
上一节内容介绍了Nagios监控服务在linux环境下的安装过程,本节内容将详细介绍如何使用已经安装的Nagios服务的一些配置文件的使用以及如何监控本地相关服务,如要完成对一台主机的监控Nagios作为主程序是必不可少的,但是仅仅只要nagios也是完成不了的,以下内容简单介绍下nagios的主配置文件和对本地主机的监控
Nagios监控看那个角色配置:
监控端和被监控端的收据收集(C/S架构),监控端和用户(B/S架构)之间的数据呈现
Nagios主程序,插件包,nrpe等相关插件
一、配置文件检查
1.1 查看nagios主目录相关功能
[root@XueGod63Nagios]# ll /usr/local/nagios/
bin #Nagios执行程序所在目录
etc #nagios配置文件坐在目录,初始安装只有几个*.cfg文件俺
libexec #监控所用命令,需要安装了nagios-plugins插件了才会有,检测命令,不装是空的
sbin #Nagios的Cgi文件所在目录,外部命令所需要的文件存放目录
share #Nagios前端页面
var #日志文件,pid文件等
1.2 检查配置文件是否存在错误
[root@node1 ~]# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
……………………
……………………
Checking obsessive compulsive processor commands...
Checking misc settings...
Total Warnings: 0
Total Errors: 0
配置文件无异常,警告0,错误0
1.3 指定配置文件以守护进程的方式启动
[root@node1 ~]# /usr/local/nagios/bin/nagios -d /usr/local/nagios/etc/nagios.cfg
1.4 nagios.conf主要配置内容
[root@node1 ~]# cat /usr/local/nagios/etc/nagios.cfg | grep -E -v "^#|^$"
log_file=/usr/local/nagios/var/nagios.log #日志位置
cfg_file=/usr/local/nagios/etc/objects/commands.cfg #命令文件位置
cfg_file=/usr/local/nagios/etc/objects/contacts.cfg #定义联系人
cfg_file=/usr/local/nagios/etc/objects/timeperiods.cfg #定义时间段
cfg_file=/usr/local/nagios/etc/objects/templates.cfg #定义模板(联系人主机模板)
cfg_file=/usr/local/nagios/etc/objects/linehost.cfg #监控远程主机相关配置(监控远程主机添加的配置文件)
cfg_file=/usr/local/nagios/etc/objects/localhost.cfg #监控本机相关配置
object_cache_file=/usr/local/nagios/var/objects.cache #
precached_object_file=/usr/local/nagios/var/objects.precache
resource_file=/usr/local/nagios/etc/resource.cfg #资源变量配置文件,包括$USER1$变量(一个路径)
status_file=/usr/local/nagios/var/status.dat
status_update_interval=10 #状态更新时间,单位s
nagios_user=nagios #指定守护进程运行用户
nagios_group=nagios #指定进程运行用户组
check_external_commands=1 #命令检查
command_check_interval=-1
command_file=/usr/local/nagios/var/rw/nagios.cmd
external_command_buffer_slots=4096
lock_file=/usr/local/nagios/var/nagios.lock
temp_file=/usr/local/nagios/var/nagios.tmp
temp_path=/tmp
event_broker_options=-1
log_rotation_method=d #日志滚动,默认天
log_archive_path=/usr/local/nagios/var/archives
sleep_time=0.25
service_check_timeout=60 #服务器检查超时时间
host_check_timeout=30
event_handler_timeout=30
notification_timeout=30
ocsp_timeout=5
perfdata_timeout=5
[root@node1 ~]# ls /usr/local/nagios/etc/cgi.cfg #cgi配置文件,优先级高于nagios.cfg
[root@node1 ~]# cat /usr/local/nagios/etc/cgi.cfg | grep -E -v '^#|^$'
main_config_file=/usr/local/nagios/etc/nagios.cfg #指定Nagios的配置文件位置
physical_html_path=/usr/local/nagios/share #指定web访问的物理路径
url_html_path=/nagios #在url后加nagios方能访问
show_context_help=0 #
use_pending_states=1
use_authentication=1 #使用认证功能
use_ssl_authentication=0
authorized_for_system_information=nagiosadmin,admin #认证用户
…………
二、Nagios监控服务的健康状态
2.1 监控本地NFS服务状态
[root@node1 ~]# cd /usr/local/nagios/etc/objects/
[root@node1 objects]# cp localhost.cfg localhost.cfg.bak 在文件末尾添加以下内容
define service{
use local-service ; Name of service template to use
host_name localhost
service_description NFS
check_command check_tcp!2049
notifications_enabled 0
}
配置nagios.cfg主配置文件
[root@node1 objects]# vim /usr/local/nagios/etc/nagios.cfg
cfg_file=/usr/local/nagios/etc/objects/localhost.cfg
安装和启动NFS服务器
[root@node1 objects]# mkdir /nfs
[root@node1 objects]# vim /etc/exports
/nfs *(rw)
[root@node1 objects]# /etc/init.d/nfs restart
验证nfs
[root@node1 objects]# showmount -e 192.168.31.101
Export list for 192.168.31.101:
/nfs *
检查localhost是否已经正常启用,检查nagios配置文件,如无错误,则重启nagios服务
[root@node1 objects]# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
[root@node1 objects]# service nagios restart
验证
[root@node1 objects]# service nfs stop
[root@node1 objects]# service nfs restart
2.2 Nagios远程监控Mysql数据库状态
安装mysql服务器
[root@node1 ~]# yum -y install mysql mysql-server mysql-devel
[root@node1 ~]# service mysqld restart
[root@node1 ~]# chkconfig mysqld on
创建测试数据库
mysql> create database nagiostest;
mysql> grant select on nagiostest.* to nagiostest@"localhost";
mysql> flush privileges;
测试
[root@node1 objects]# /usr/local/nagios/libexec/check_mysql -H 127.0.0.1 -u nagiostest -d nagiostest
Uptime: 438 Threads: 2 Questions: 11 Slow queries: 0 Opens: 15 Flush tables: 1 Open tables: 8 Queries per second avg: 0.25|Connections=4c;;; Open_files=16;;; Open_tables=8;;; Qcache_free_memory=0;;; Qcache_hits=0c;;; Qcache_inserts=0c;;; Qcache_lowmem_prunes=0c;;; Qcache_not_cached=0c;;; Qcache_queries_in_cache=0;;; Queries=11c;;; Questions=11c;;; Table_locks_waited=0c;;; Threads_connected=2;;; Threads_running=1;;; Uptime=438c;;;
[root@node1 objects]#
命令添加(添加的command_name必须在/usr/local/nagios/libexec/该文件夹下存在)
[root@node1 objects]# vim commands.cfg
define command{
command_name check_mysql
command_line $USER1$/check_mysql -H $HOSTADDRESS$ -u nagiostest -d nagiostest
}
[root@node1 objects]# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
无报错和警告则重启nagios服务
测试:关闭msyqld服务
[root@node1 libexec]# service mysqld stop
2.3监控远程主机mysql服务及其他服务
[root@node1 objects]# vim ../nagios.cfg
新增配置监控配置文件及服务
cfg_file=/usr/local/nagios/etc/objects/remodehost.cfg
cfg_file=/usr/local/nagios/etc/objects/services.cfg
define host{
use linux-server
host_name node2.cn
alias MySQL-Serve
address 192.168.31.102
icon_p_w_picpath server.gif
statusmap_p_w_picpath server.gd2
2d_coords 500,200
3d_coords 500,200,100
}
添加监控的服务,可参考localhost.cfg配置文件相关服务配置方式进行配置
[root@node1 objects]# vim services.cfg
define service{
use local-service
host_name node2.cn
service_groups MysqlGroup
service_description MySqlSev
check_command check_mysql
}
define service{
use local-service ; Name of service template to u
se
host_name node2.cn
service_description PING
check_command check_ping!100.0,20%!500.0,60%
}
define service{
use local-service ; Name of service template to u
se
host_name node2.cn
service_description Root Partition
check_command check_local_disk!20%!10%!/
}
…………
define servicegroup{
servicegroup_name MysqlGroup
alias MySQLServer
members node2.cn,MySqlSev
}
检查配置文件无错误和警告信息则重启服务
[root@node1 objects]# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
[root@node1 objects]# service nagios restart
通过浏览器查看web端监控主机情况
转载于:https://blog.51cto.com/maoxiaoxiong/1980786
监控之--Nagios如何监控本地主机及本地服务的更多相关文章
- virtualbox虚拟机之连接本地主机同时可以连接外部网络
如果主机需要通过ssh,ftp等方式访问linux虚拟机,是无法实现的.这个时候要实现端口互通,我们要用到VirtualBox的端口转发功能.所谓的端口转发功能,就是借助主机上虚拟出来的Virtual ...
- Nagios配置—添加linux主机监控
nagios安装请参看:Nginx平台安装Nagios监控服务 下面是我添加linux监控机的过程,如有错误或者不当的地方请指出: 测试环境: 监控主机:nagios+nagios插件+nrpe+网站 ...
- Nagios+pnp4nagios+rrdtool 安装配置nagios被监控端NRPE配置(二)
NRPE监控插件基础 NRPE总共由两部分组成: (1).check_nrpe插件,运行在监控主机上. (2).NRPE daemon,运行在远程的linux主机上(通常就是被监控机) 整个的监控过程 ...
- Nagios 系统监控基本安装配置过程详解
Nagios 是一款免费的开源 IT 基础设施监控系统,功能强大,灵活性强,能有效监控 Windows.Linux.VMware 和 Unix 主机状态,交换机.路由器等网络设置等.一旦主机或服务状态 ...
- Nagios 系统监控
Nagios 系统监控 Nagios 是一款免费的开源 IT 基础设施监控系统,功能强大,灵活性强,能有效监控 Windows.Linux.VMware 和 Unix 主机状态,交换机.路由器等网络设 ...
- 监控系统-nagios
Nagios简介 Nagios是一款开源的电脑系统和网络监视工具,能有效监控Windows.Linux和Unix的主机状态,交换机路由器等网络设备,打印机等.在系统或服务状态异常发出邮件或短信报警第一 ...
- 监控部署nagios+snmp
参看是否有安装:rpm -q gcc glibc glibc-common gd gd-devel xinetd openssl-devel 未安装基础支持套件的先安装: yum install -y ...
- 2.监控利器nagios手把手企业级实战第一部
1. 什么是Nagios? Nagios是一款开源的网络及服务的监控工具,功能强大,灵活性强,需要注意的是,其服务端只能在linux上面安装. Nagios可以进行分布 ...
- CentOS6.4 安装Nagios 并监控端口
1.下载所需文件nagios-3.4.3.tar.gz,nagios-plugins-1.4.15.tar.gz,nrpe-2.14.tar.gz,sendEmail-v1.56.tar.gz 下载地 ...
随机推荐
- AJAX对数据库增删改查实例
前端代码: <!DOCTYPE html><html><head><meta charset="UTF-8"><title&g ...
- dotnet CLI工具是如何运行你的代码的
原文连接:https://mattwarren.org/2016/07/04/How-the-dotnet-CLI-tooling-runs-your-code/作者 Matt Warren.授权翻译 ...
- python--匿名函数、文件操作
一.匿名函数 语法: sum = lambda arg1, arg2: arg1 + arg2 #调用sum函数 print "Value of total : ", sum( 1 ...
- Java第三十一天,用Properties集合操作IO
一.Properties 这个类是线程安全的:多个线程可以共享一个Properties对象,而不需要外部同步 1.常用方法 Object setProperty(String key, String ...
- Linux 磁盘管理篇,开机挂载
设置开机挂载需要到 /etc/fstab 里设置 第一列:磁盘设备文件名或该设备的label 第二列:挂载点 第三列:磁盘分区文件系统 第四列:文件系统参数 第五列:能否被dump备份命令作用 第六列 ...
- AJ学IOS 之UIDynamic重力、弹性碰撞吸附等现象
AJ分享,必须精品 一:效果 重力和碰撞 吸附现象 二:简介 什么是UIDynamic UIDynamic是从iOS 7开始引入的一种新技术,隶属于UIKit框架 可以认为是一种物理引擎,能模拟和仿真 ...
- SpringBoot事件监听机制源码分析(上) SpringBoot源码(九)
SpringBoot中文注释项目Github地址: https://github.com/yuanmabiji/spring-boot-2.1.0.RELEASE 本篇接 SpringApplicat ...
- L11注意力机制和Seq2seq模型
注意力机制 在"编码器-解码器(seq2seq)"⼀节⾥,解码器在各个时间步依赖相同的背景变量(context vector)来获取输⼊序列信息.当编码器为循环神经⽹络时,背景变量 ...
- JMeter分布式压测-常见问题之(Server failed to start: java.rmi.server.ExportException: Listen failed on port: 0; nested exception )
问题描述: 在Linux环境启动jmeter-server时抛出了如下异常: 问题描述: 1.可能监听的端口被占用,修改端口号2.Server相关的rmi配置需要调整 解决方案: 在目录/apache ...
- [PHP]PHP设计模式:单例模式
单例模式(职责模式): 简单的说,一个对象(在学习设计模式之前,需要比较了解面向对象思想)只负责一个特定的任务: 单例类: 1.构造函数需要标记为private(访问控制:防止外部代码使用new操作符 ...