Chinaunix首页 | 论坛 | 博客
  • 博客访问: 103725522
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类: LINUX

2008-04-26 15:30:20

作者: Kishi Malhotra 出处: 
 
NRPE:NRPE是一个安装在远程主机上的Nagios远程插件执行程序(Nagios Remote Plugin Executor)。它能够代表Nagios服务器执行Nagios插件并返回结果。安装在服务器上的插件必须同时安装在远程主机上供NRPE使用。一个叫做check_nrpe的新插件已经发布,用来查询来自Nagios服务器的NRPE daemon后台程序。NRPE利用一个访问控制系统来确定只有特定的Nagios主机可以连到NRPE客户机。下面的这条配置语句就使得只有这个特定的主机可以和客户机通信:

allows_hosts=10.197.173.100

还可以通过配置NRPE,使它可以根据不同参数执行不同命令,尽管在文档中禁止这样做。默认时,NRPE只能运行特定的命令,这些命令的参数都在它的配置文件中有明确声明(配置文件位于NRPE主机上)。意思就是,Nagios服务器只会让NRPE执行定义在远程主机的/etc/nrpe.cfg文件中的命令,服务器可能不会传递命令或插件参数给代理机执行。下面是一个NRPE配置文件样本。特殊的命令(插件)和参数必须在这里声明。然后Nagios服务器就可以请求NRPE来执行这里的一个或多个命令并返回结果:

command[check_users]=/usr/local/nagios/libexec/check_users –w 5 –c 10
command[check_load]=/usr/local/nagios/libexec/check_load –w 15,10,5 –c 30,25,20
command[check_disk_root]=/usr/local/nagios/libexec/check_disk –w 20 –c 10 –p /dev/sda1
command[check_zombie_procs]=/usr/local/nagios/libexec/check_procs –w 5 –c 10 –s Z
command[check_total_procs]=/usr/local/nagios/libexec/check_procs –w 150 –c 200

默认情况下,NRPE在自身主机和Nagios服务器之间使用SSL通信。SSL参数在编译时产生,并存储在NRPE资源树内部的C头文件中,文件名是dh.h。该头文件用来编译NRPE daemon后台程序和check_nrpe插件。这就意味着如果想要使用SSL通信,那么NRPE daemon后台程序和check_nrpe插件就必须使用同样参数(来自同样资源树)进行编译

Ⅲ. Hyperic:Hyperic HQ是一个基于java的监控软件,由一个中心监控服务器和一个或多个远程代理组成,远程代理用来向服务器报告节点信息。Hyperic HQ支持多种平台,包括Linux,Solaris, Windows, HP-UX, AIX, Mac OS X 和FreeBSD。Hypeirc发布了该软件的两个版本:

1.一个遵循GNU GPL规范的开源版本

2.一个叫做HQ Enterprise的商业版本,它包括附加的组件和功能。

HQ Open Source和HQ Enterprise的特点比较
注意:介于开源和企业版之间的HQ 3.0可能会有所改变,详情请看:

Hyperic安装和配置:Hyperic HQ旨在能够快速安装并且能够容易配置。它通过命令行安装,并会提示系统管理员输入它成功运行所须的所有信息(管理员密码,数据库信息,等)。在安装的时候选择-upgrade选项,可以很容易升级程序。Hyperic HQ提供一个web接口,用来向终端用户发送监控警告和状态信息。但是,和其他监控程序不一样,web接口也被用作该程序最初的配置接口。所有节点和代理细节,度量(metric)选项和警告都将通过web接口进行正确配置。监控代理的安装方式与服务器类似,因为所有代理的配置都是在服务器上通过web接口完成的,代理安装脚本所需的唯一信息就是用来登录服务器的登录信息,节点上安装代理文件的首选路径,以及很多其他零碎的信息(如服务器和代理运行的端口号)。当代理成功地向服务器登记后,系统管理员就可以连接到web接口,然后添加新的要被监控的主机到它的监控列表中。Hyperic HQ服务器使用开源PostgreSQL数据库应用程序存储配置信息和监控数据。PostgreSQL封装在Hyperic HQ软件中,会随着系统的安装而自动安装并配置。也有人可能会选择一个已经存在的PostgreSQL或Oracle数据库,那么安装系统会提示管理员输入有关数据库的信息,这样Hyperic HQ就可以连接到该数据库并使用它。默认情况下,Hyperic HQ会把它的信息存储到这个数据库里,但也可以通过配置使用外部可用的LDAP服务器。

自动发现:Hyperic HQ监控方案的一大特色就是它能自动定位和监控运行在远程节点的服务和daemon后台程序。一旦代理安装到远程节点,它就可以扫描各种已知服务,并把这些服务添加到主机的目录里。一旦添加到这个目录里,那么就可以配置度量和警告程序来监控那些特殊服务。Hyperic支持两种扫描选项,自动扫描和文件扫描。代理程序会默认定期运行“自动扫描”,它会为已知的服务器类型扫描程序列表。另外一种更广泛使用的扫描是“文件扫描”,它会搜索远程节点的文件系统,然后定位已知的应用程序。因为这需要很长时间,而且占用很多资源,所以这种类型的扫描必须由系统管理员手动配置和规划。

警告(alerts)和通知:Hyperic HQ支持基于任何量度(metric)的警告配置,可以为任何运行在主机上的特殊资源(如主机本身)或服务配置警告。例如,当一个主机的资源可用性低于一个预先设定的值,就可以触发一个警告。当一个警告被触发,可以发一封email到一个预先设定的email地址。根据警告的优先权,一个消息可能会被发送到DashBoard(Hyperic HQ管理员前端)。Enterprise版本里有的很多高级通知选项,但HQ Open Source版本没有。HQ Enterprise还支持Recovery Alerts(恢复警告)的概念,这个概念用来取消和重新设置警告的触发。对于Open Source版本,当一个警告被触发的时候,该警告会连续被触发,直到问题解决或警告失效。Recovery Alerts允许管理员使一个活动警告失效,然后当问题解决后再重新让它有效。HQ Enterprise版本还支持发送SNMP包的通知选项

Hyperic HQ插件:Hyperic插件是以.jar或.xml文件格式发布的,可以在服务器和代理上进行部署。可以通过安装插件来增强从特定应用程序或服务收集信息的能力,通过插件定位和增加一个新监控目录以及控制动作来控制特殊资源。Hyperic网站提供关于插件发展的全面文档。开发和添加一个新插件与Nagios或其他监控程序相比似乎是一个更复杂的工作。Hyperic HQ提供的框架给出了高级APIs,通过APIs,插件可以在多种平台上查询信息。例如,在Windows上,Hyperic HQ提供一些类,插件可以使用这些类来访问Windows特殊数据和函数。这些函数提供对性能信息、注册数据、事件日志信息和服务控制管理器(SCM)的有效访问。Hyperic HQ还支持基于脚本的简单插件,用这样的插件来制定特殊的度量规则。甚至是个人脚本或是Nagios脚本都可以被Hyperic HQ服务器和代理引入并配置使用。

SIGAR – System Information Gatherer And Reporter(系统信息收集报告器):SIGAR是Hyperic HQ主要的数据收集组件。这个软件用来从许多平台收集系统和处理信息,这些平台包括:Linux, Windows, Solaris, AIX, HP-UX, FreeBSD and Mac OSX。SIGAR是用C语言编写的,但Hyperic提供C,C#,Java和Perl APIs,用来把SIGAR结合到它们的应用程序里。SIGAR组件遵循GNU GPL许可,与Hyperic监控代理分开发布,用于第三方应用程序。Sigar API 提供一个方便的接口来收集系统信息,如:

◆系统内存,页面交换,cpu,平均负载,运行时间,登录信息

◆每个进程占用的内存,cpu,帐号信息,状态,参数,环境,打开的文件

◆文件系统探测和度量

◆网络接口探测,配置信息和度量

◆网络路由和连接表

user@linux:~/hyperic-sigar-1.3.0.0>
; java -jar sigar-bin/lib/sigar.jar
Loaded rc file: 
/home/user/hyperic-sigar-1.3.0.0/sigar-bin/lib/.sigar_shellrc
sigar> help
Available commands:
        alias        - Create alias command
        cpuinfo      - Display cpu information
        df           - Report filesystem disk space usage
        du           - Display usage for a directory recursively
        free         - Display information about free and used memory
        get          - Get system properties
        help         - Gives help on shell commands
        ifconfig     - Network interface information
        iostat       - Report filesystem disk i/o
        kill         - Send signal to a process
        mps          - Show multi process status
        netinfo      - Display network info
        netstat      - Display network connections
        pargs        - Show process command line arguments
        penv         - Show process environment
        pfile        - Display process file info
        pinfo        - Display all process info
        pmodules     - Display process module info
        ps           - Show process status
        ptql         - Run process table query
        quit         - Terminate the shell
        route        - Kernel IP routing table
        set          - Set system properties
        sleep        - Delay execution for the a number of seconds
        source       - Read a file, executing the contents
        sysinfo      - Display system information
        test         - Run sigar tests
        time         - Time command
        ulimit       - Display system resource limits
        uptime       - Display how long the system has been running
        version      - Display sigar and system version info
        who          - Show who is logged on
sigar>
SIGAR的命令行使用例子

这就是“监控”部分。还有很多我们曾接触过的工具,如Monit,Argus,Oprofile等,这里就不一一介绍了,如有什么问题请给予回复

原文地址:

阅读(255) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~