软件测试


网站首页 | 软件测试论坛 | 软件测试培训 | 软件测试博客 | 软件测试杂志 | 软件测试沙龙 | 软件测试下载 | 软件测试顾问
业界新闻 | 软件测试人才 | 软件测试技术 | 软件测试工具 | 行业软件测试 | 软件测试管理 | 软件质量专栏 | 软件开发专栏
当前位置:首页>>软件测试工具>>Mercury>>正文
无代理监控:监控关键系统的全新典范
文章出处:Mercury 作者: 发布时间:2006-06-05

概述

当今世界,IT系统对于整个业务的成功运作至关重要,因此需要对IT系统展开监控,以确保其正常地运作和良好的性能,这是普遍遵循的一种规则。各个操作小组明白,无论是大型主机还是小型的基于客户/服务器的系统,公司的业务很大程度上依赖于其内部系统的运行,所以,他们会投资购买监控和报警软件。这些软件解决方案会在系统性能低下或变得完全不可用时通知操作小组。

 

这种监控架构是一种“基于代理”的架构,在当时是非常有效的。基于代理的架构需要另外安装一种被称为“代理”的软件,并且运行在物理的生产机器上,它是整个系统架构的一个组成部分。一旦正确安装并配置完成这一“代理”,它将监控其所属机器的运行状况和性能,并向报警控制台传送所收集到的关键指标。

 

 

 

目录

 

概述

无代理监控

无代理监控能确保快速部署

无代理监控使维护和升级变得轻而易举

无代理监控降低了影响生产系统的风险

无代理监控允许系统架构改造及扩展

无代理监控能降低TCO,从而实现ROI的增长

无代理监控可能不是最佳方案的情况

关于无代理监控的普遍误解

误解1:无代理监控无法收集到足够的数据去有效监控关键系统

误解2:如果监控器和服务器之间的网络连接中断,无代理监控将变得无效

误解3:无代理监控会产生安全风险

误解4:无代理监控会产生太多的网络流量

结论

 

 

然而,当IT系统演化为一种多层次的、分布式的簇群架构,其中涉及到上百个甚至是上千个物理机器时,这种基于代理的解决方案的弱点就显而易见了。监控解决方案的主要目标就是要在IT系统发生故障时,防止收益受到影响。正是由于这一特性,监控解决方案要求最小化运营总成本(TCO),从而来大大增加投资回报(ROI)

 

系统一旦变成分布式运行,基于代理的方案的TCO就会大大增加,由此造成ROI大幅度地降低。监控市场需要一种全新的监控典范——“无代理”的监控解决方案。

 

无代理监控

 

无代理监控使各个操作小组在未对生产系统安装代理程序或软件的情况下就能监控到复杂而分布式的系统。无代理监控方案能从某单个主机上,采用非侵入式的方式来远程监控所有IT系统组成部分,由此产生的大量收益将最终创造出更高的ROI

 

无代理监控能确保快速部署

 

基于代理的监控解决方案通常需要许多工程师和专家花费好几个月的时间去完成安装和配置,而无代理监控能以更快的速度完成部署。举例来说,若共有500台机器需要被监控,那就需要为每台机器总共安装和配置500个代理。相比而言,无代理解决方案就只需要在主机上安装,并完成远程连接配置,它就能对整个系统中的每台机器进行监控。并且,远程监控器能使用“监控模板”,它是预先配置好的一套机器监控标准,可以马上从所有受监控机器中收集相关标准尺度。

 


  

 

 

 

 

 


一种无代理方式

 

 

无代理监控使维护和升级变得轻而易举

 

采用同一个例子,如果500个代理已被部署到500台机器上,那么,当监控要求有所变化时,就需要一组专家致力于维护和重新配置这些代理程序。如果代理程序需要升级到一个更新的版本,这一维护小组就必须到每个生产服务器上逐个升级代理程序。这么多员工的工作量势必将大大降低这一监控软件的TCO。相反,对于无代理监控而言,如果监控器需要重新配置或软件需要升级更新,一个IT工作人员就能完成这一任务,与前者相比,花费的人力将少得多。

 

无代理监控降低了影响生产系统的风险

 

在生产机器上安装一个代理就意味着您在风险矩阵中增加了一个新的变量,使所有安装组件之间的功能互操作性便得越来越复杂。代理的侵入往往会造成性能的衰退,可能引发跟踪和警报。例如,某个数据服务器是由某个代理监控的,这一代理将消耗CPU和内存,随着记录的文件数据不断增多,它将占用磁盘空间。代理也会成为导致整个服务器崩溃的直接原因。显而易见,这种资源的消耗或崩溃将降低数据服务器数据处理能力,最终将影响最终用户的使用体验。试想,如果这一问题在多个数据库服务器中成倍产生,在某个区域造成集群,其后果不堪设想。无代理解决方案无需在生产系统中安装任何软件。由于其非侵入性的特性,无代理监控降低了发生停机故障的风险。

 

无代理监控允许系统架构改造和扩展

 

在大型主机或定制客户/服务器时代,基础架构基本处于静态状态。一旦某个大型主机部署完毕,或者一旦某个内部开发的应用上线后,该基础架构在很长时间内不会发生变化。然而,利用分布式系统来运行WebERPCRM,甚至email应用的最大好处就是:它能随着容量的增长和规模的扩大而便捷地完成扩展。许多成功的在线零售商的应用往往会在一个星期中增加几十个服务器。若采用代理监控方案,就需要专家在每个上线的新机器上安装并配置一个代理。然而,若采用一个无代理解决方案,专家就能便捷地在新服务器上部署预先配置好的监控模板,然后就可以马上开始监控工作。

 

无代理监控降低了TCO,从而实现ROI的增长

 

无代理监控的每一项成果将最终明显降低TCO,从而实现ROI的增长。无代理监控使IT和操作员工能够专注于生产系统的建立,而不是生产系统的监控。

 

无代理监控可能不是最佳方案的情况

 

如果是对处于不同区域的各个服务器(或拥有少量服务器的区域)进行监控,那么无代理监控结构所能带来的效率和优势将会降低。例如,对于拥有许多位于全国各地的特许经营加盟店的业务来说,监控位于不同地区的某一单个服务器,无代理结构在这种情况下所能取得的成效将大大减少。操作员工可能会发现,这种情况下,在服务器被运送到不同地区加盟店之前,先在每个服务器上安装和配置一个代理程序,这样将更为简单易行。

 

然而,您必须认识到这一点:如果多个数据中心的运作是集中进行的,而这些数据中心的多个服务器却位于世界各地,这种情况下,无代理方案仍然是最有效的监控方法。此外,无代理产品对于服务器处于同一数据中心的混合环境来说是一种好的解决方案,同时也适用于在必要时把作为一种无代理产品的单个服务器部署成为一个代理。

 

关于无代理监控的普遍误解

对于无代理监控的“远程监控”架构所产生的一些潜在弱点,人们还存在以下的一些普遍误解。

 

误解1:无代理监控无法收集到足够的数据去有效监控关键系统。

 

虽然采用一个基于代理的监控方法可以收集到更多的数据,但是,确定有效监控系统所需的数据量,避免产生数据超负载,这是很重要的一点。在过去几年中,许多技术供应商——其中包括MicrosoftBEA SystemsOracle IBM等等——在他们的产品中嵌入了界面,从而能够采用无代理监控收集到各种数据。例如:WebLogic 6包含了一个JMX界面,它能在无代理方式下监控到300多种不同类型的数据。多年前,无代理监控方式确实无法收集到有效监控所需的数据。但是,现在您已经无需再担心这一点了。

 

误解2:如果监控器和服务器之间的网络连接中断,无代理监控将变得无效。

 

如果服务器和监控器之间的网络连接中断,无代理服务器确实将无法收集到受监控服务器的特定数据。然而,如果监控器无法连接到服务器,其他受其支持的应用也将无法连接到服务器,因此,是否能够收集到该机器的特定数据将变得毫无相关。无代理监控器发出网络中断的警报,这将是最重要的信息。采用某个最佳实践方案来部署无代理监控方案,这是非常重要的。例如:最小化Mercury SiteScope® 和受监控服务器之间的故障点数量,这将确保所收到的警报都是与之相关的。

 

误解3:无代理监控会产生安全风险。

 

为了能远程监控一个Windows服务器,用户需要在TCP/IP上运行NetBIOS,这样,远程监控器主机才能建立起足够的连接来收集监控数据。您必须明白(如果不考虑远程监控因素),在服务器上运行NetBIOS的初始目的是为了让一个值得信赖的Windows管理者能够远程连接到服务器,并能做管理更改。这就需要管理者能够了解到合法访问网络域和/或主机本身的注册名和密码。

 

这是种误解,因为那些造成“安全风险”的不必要的侵入者在访问网络域和主机本身之前必须取得合理的授权,所以,事实上,这些入侵者的就不可能访问到网络域和主机。并且,如果IT确保防火墙上137139端口是关闭的,入侵者就无法通过NetBIOS访问到任何防火墙后的主机。最后,如果安装了网络入侵探测系统(NIDS),那么任何非法入侵者就能被马上探测到。

 

如果有些公司的安全策略禁止在任何数据中心中的主机上安装NetBIOS,那么,无代理监控方案还能通过一个Secure Shell(SSH)连接来实现与Windows主机的连接(假设SSH服务器安装在Windows服务器上)。一旦建立起SSH连接,远程监控器就能运行脚本,启动必要的命令来获取CPU、内存、磁盘空间等数据。这样,无代理监控器就能在取得数据的同时,不会造成任何安全风险。

 

监控UNIX服务器的风险最小。只要无代理监控方案能够通过SSH连接实现与UNIX服务器的连接,就不会出现任何安全风险。

 

如果无代理监控器使用单一网络管理协议(SNMP)界面来收集远程服务器的数据,那么,您可以采取以下预防性操作步骤,在实质上避免所有安全风险的发生。

 

第一步,在受监控服务器上配置SNMP时,设置“只读”串。无代理监控器将仅仅使用GET操作——而不是SET操作——来收集各种数据。

 

第二步,强烈推荐把SNMP community string从默认设置“公共”更改为用户特定设置。这样,任何从服务器上取得SNMP数据的主机都必须知道特定community string

 

第三步,应用Access Control Lists(在ACLs适用的地方),只允许从某些确定装置才可访问SNMP。这将杜绝任何不被信赖的机器访问生产服务器。

 

最后,打开每台服务器上的审核注册,记录下所有通过SNMP访问主机的人员名单。

 

采取这些预防性步骤后,SNMP安全风险就能被大大降低。

 

误解4:无代理监控会产生更多的网络流量。

 

由于无代理监控器是远程连接到生产服务器的,所以网络流量是不可避免的。这一问题最终将归结到一个简单问题的答案上:远程监控主机所产生的网络流量到底有多少?

 

事实上,影响这一问题答案的决定因素不止一个。首先,远程主机采用的监控类型将影响这一网络流量的大小。一个稳固而全面的监控方案能够提供例如URLFTPSQLDNS及其他请求等网络服务监控。它也能提供操作系统监控,例如对CPU使用、内存使用、流程、磁盘空间等进行统计。在任何情况下,各种类型的监控所产生的网络流量从几个字节到上万个字节不等。

 

另一决定因素就是:到受监控服务器上收集每一数据的频率是多少。所有监控数据查询都不是持续进行的,因此,您必须了解每秒中所进行的监控查询有多少。通常,一秒内从远程监控主机发出的监控器查询次数不会超过5次。所以,远程监控主机所产生的总网络流量通常是可以忽略不计的。

 

总结

当今,无代理监控是用于监控重要的、分布式系统的正常运行时间和可用性的一种全新的典范。IT部门投资购买监控软件来保护公司的收益,并确保他们的系统运行水平能高于期望的服务水平。

 

监控软件应该能:

提供高额的回报

最小化运营成本

绝对不会造成性能衰退或分布式系统的不可用性

 

达到以上三个目标的唯一方法就是采用无代理监控方案。它是监控软件未来发展方向。

 

免费Mercury SiteScope 试用版本

可到以下地址下载10天免费Mercury SiteScope 试用版本

http://www.mercury.com/us/promotions/sitescope_trial.html.


站内搜索
相关文章
◎应用实施:卓越中心的发展
◎实施全面的J2EE监控和诊断解决方案
◎美科利客户的见解
◎改进质量和测试管理
◎错误警报不复存在:成功实施应用管理战略
◎代理和无代理系统管理的比较:运营总成本
◎高级测试管理的工具和技术
◎ERP功能测试最佳实践:10个步骤确保ERP系统的可靠性
◎美科利和SAP:优化业务成果
◎四款主流测试工具的测试流程
◎WinRunner如何实现自动化测试
◎TD 7.x 升级到 TD 8.0 的一些经验(SQLSERVER 下)
◎winsock的buffer简单解析
◎何谓 Keyword-Driven Testing?
◎QuickTestPro中的快捷键
◎协议的选择的问题谈话
◎winsock协议错误编码解析
◎Loadrunner中参数的设置
◎使用LoadRunner来测试BEATUXEDO (LoadRunner 7.6)
◎主流测试工具介绍(3)
◎主流测试工具介绍(2)
◎主流测试工具介绍(1)
◎LoadRunner的一个解决方案
◎jboss tomcat weblogic websphere 性能对比测试
◎WinRunner 脚本标准格式
◎LoadRunner简化国泰航空测试流程
◎Winrunner经验总结
◎对脚本的建议
◎关于"RPC server is unavailable"的解决方案
◎TestDirector项目数据迁移完整过程
◎TD中Case的复用
◎WinRunner的问题整理
◎Winrunner TSL命令简介(四)
◎Winrunner TSL命令简介(三)
◎Winrunner TSL命令简介(二)
◎Winrunner TSL命令简介(一)
◎使用LoadRunner测试TUXEDO
◎TD7.6 字段中英文对照表
◎Winrunner Context Sensitive命令列表
◎LoadRunner监视的性能计数器
◎让LoadRunner走下神坛
热门文章
◎主流测试工具介绍(1)
◎Winrunner经验总结
◎主流测试工具介绍(2)
◎主流测试工具介绍(3)
◎Winrunner TSL命令简介(一)
◎WinRunner的问题整理
◎LoadRunner监视的性能计数器
◎Loadrunner中参数的设置
◎四款主流测试工具的测试流程
◎LoadRunner的一个解决方案
◎让LoadRunner走下神坛
◎WinRunner 脚本标准格式
◎LoadRunner简化国泰航空测试流程
◎WinRunner如何实现自动化测试
◎利用loadrunner测试ORACLE存储过程的性能
◎jboss tomcat weblogic websphere 性能对比测试
◎Winrunner TSL命令简介(四)
◎Winrunner TSL命令简介(二)
◎使用LoadRunner测试TUXEDO
◎TestDirector项目数据迁移完整过程
◎LoadRunner函数介绍
◎关于"RPC server is unavailable"的解决方案
◎Winrunner TSL命令简介(三)
◎使用Winrunner进行性能测试
◎TD7.6 字段中英文对照表
◎LoadRunner本机录制http协议程序遇到的问题以及解决方法
◎Winrunner Context Sensitive命令列表
◎WinRunner使用经验介绍
◎TD中Case的复用
◎对脚本的建议
◎MI测试工具介绍
◎QTP的登陆脚本设计
◎如何用QTP解析PDF
◎winsock协议错误编码解析
◎TD 7.x 升级到 TD 8.0 的一些经验(SQLSERVER 下)
◎QuickTestPro SP考试心得
◎loadruner报错:Step download timeout(120 seconds)的解决方法
◎使用LoadRunner来测试BEATUXEDO (LoadRunner 7.6)
◎QuickTestPro中的快捷键
◎ERP功能测试最佳实践:10个步骤确保ERP系统的可靠性
◎高级测试管理的工具和技术
◎winsock的buffer简单解析
◎何谓 Keyword-Driven Testing?
◎LoadRunner学习——LoadRunner的安装
◎QTP的学习历程
◎使用LoadRunner来测试BEA TUXEDO(LoadRunner7.6)
◎LoadRunner函数介绍续
◎QTP的登陆脚本设计
◎关于"The RPC server is unavailable"的探讨及解决方案
◎改进质量和测试管理

Google提供的广告