在如今越来越虚拟化的环境下,服务器性能问题比以往任何时候都要来得常见、严重。咨询公司Glass House Technologies的虚拟化服务主管Erwin Vollering说:“在物理环境下,每台服务器都有其各自的SCSI控制器、磁盘、内存和处理器等部件。而现在,你在一个物理主机上的共享环境中运行10至15台服务器,这些服务器同时处理同样的任务,使用同样的资源,一旦物理主机出现故障,统统崩溃。”
那么,你如何着手诊断这些问题,以便解决问题、继续恢复运行?
服务器反应迟缓的诊断:
1.确保引起问题的是服务器
Extra Hop公司的首席执行官兼创始人Jesse Rothstein表示,许多似乎来自服务器层面的性能问题常常是由网络、数据库和存储系统等层面的问题引起的。Rothstein说:“最终,你需要通盘考虑和分析这些问题,不过实际做起来很棘手。”
Fluke Networks公司的全球产品营销经理Dan Klimke说:“要是出现了延迟问题,我们需要看一下这个延迟最先出现在服务器,还是出现在网络或客户端层面。跟踪分析症状需要耗费很多时间。”
IT部门经常把多台服务器连接起来,为最终用户提供资源(如应用程序)。Klimke说:“你可能有一台基于Web的前端服务器与应用服务器进行对话,而该应用服务器与数据库服务器进行对话,所有这些服务器通过某种网络连接起来。所以在排除故障时,第一步就是确保问题确实来自某台服务器,而不是来自网络。”
2.搞定繁琐累赘的应用程序
某个应用程序引起服务器反应迟缓或干脆停机,这完全有可能。Klimke说:“应用程序可能过于’繁琐累赘’(chatty)–也就是说,这类应用程序写入时不是使用含有大量数据的大型帧、发送数量比较少的帧,而是使用最小的帧,因而到头来只好来回频繁地发送大量数据,才能完成较大的帧所能完成的任务;相比之下,使用大型帧速度快得多、效率高得多。”
比如说,来自应用程序的某个命令可能发送到服务器,导致服务器出现问题。Klimke说:“看一下进入到服务器的实际数据流量,就能查出数据包进入到哪个环节,服务器停机之前什么命令发送到了服务器。这势必需要查看网络连接上的实际数据流量,还需要能解读就在服务器停机之前发送过去的命令和帧。”
3.清理肮脏的网络
Rothstein表示,肮脏的网络是指数据包出现丢失、重新排序或碎片的网络,它会拖累服务器的性能,因而引起服务器性能下降、服务器负载加大。
他解释:“大多数人没有认识到,像TCP堆栈这些网络协议堆栈既有快速路径,又有慢速路径。快速路径很高效,针对它所要传送的数据包进行了优化,可以按顺序传送下一个数据包。但是如果你无序传送数据包,或者无意中将数据包由第四层往下传送到第三层,服务器和操作系统就会耗费大量的资源,用于重新组装那些IP碎片,或者重新排序或重新组装TCP片段。”
虚拟化可能会使这个问题复杂化。Rothstein说:“你的虚拟机管理程序是个调度程序……跨所有运行中的不同虚拟机和访客操作系统共享处理器时间;如果从一个虚拟机切换到另一个虚拟机,难免会出现延迟。要是配置有误,网络数据包就会出现延迟,以至于被底层网络堆栈丢弃;一旦你达到引爆点,性能衰减不仅仅显而易见,还会带来灾难性后果。”
4.使用监控工具
Rothstein表示,无论是执行SNMP轮询来记录服务器健康指标的自动化第三方工具,还是比较简单的免费开源工具,你都要充分利用监控工具。
Vollering表示,如果你在使用虚拟化服务器,监控工具显得尤为重要。他表示,VMware、微软和思杰这三大虚拟化技术提供商都提供优秀的监控工具。他说:“这些工具可以告诉你什么方面在给你的环境施加压力,无论是处理器使用率、内存使用率还是磁盘使用率。”
Vollering表示,即使那些工具可供使用、部署到位,但是许多公司还是往往要么不知道自己可以使用它们,要么不知道如何使用。此外,这些工具会带来洪水般的信息和警报。他说:“你可能得花一整天的时间来查阅各种图表。”
那么,怎样才能最有效地利用这些工具呢?Vollering说:“仔细阅读使用手册,针对自己的环境合理配置工具。那样一来,要是出现了警报,你就知道需要探究警报,而不是由于工具仍采用默认的阈值进行配置而面临洪水般的警报。”
服务器反应迟缓的最佳解决方式:
1.检查服务器的物理资源
CDW公司的内部解决方案架构师Kelly Sather表示,一旦你查明了某个性能问题来自服务器层面,就要仔细检查这台问题服务器的物理资源。他说:“最好的情况是,只要添加另一个处理器或添加更多内存这么简单。”
Fluke Networks公司的全球产品营销经理Dan Klimke补充说:“务必要看一下你的处理器利用率是不是因许多进程而过高。我们发现,许多问题的出现完全归因于磁盘塞满了。”
2.校正和调整负载
多个虚拟服务器带来的负载可能远远超出物理服务器的处理能力范围。咨询公司Glass House Technologies的虚拟化服务主管Erwin Vollering说:“你要知道自己的局限性。如果你在处理月度财务合并数字的同时拍摄快照,你的存储系统就无力同时处理所有那些事务。”
3.实时迁移虚拟机
CDW公司的内部解决方案架构师KellySather表示,随着工作负载加大、虚拟机数量激增,你可能会发现需要把一个引起问题的虚拟机迁移到另一个主机上,或者把“正常的”虚拟机卸载到另一个主机上,以便为需要资源的虚拟机腾出资源。VMware的vMotion和微软的Hyper-V(以及其他技术)都让你可以将虚拟机实时迁移到其他主机上,根本不需要连接到最终用户。
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
相关推荐
-
配置优先级 避免对服务器故障草木皆兵
服务器出现故障就会发出警报,这本来是件好事。但如果大事小事都一通乱报,肯定会使管理员抓狂。如果学会利用告警优先级配置,就可以分类处理事务了。
-
如何用微软系统中心顾问在云中跟踪服务器故障?
Windows管理员总是忙着寻找获取管理服务器信息的好办法。不用怀疑,这一类管理工具非常多。微软的系统中心顾问(SCA)就是其中一个,它有什么作用呢?
-
服务器预防性维护可减小硬件故障几率
只有在对系统进行升级或有故障发生时,像服务器这样的硬件才会引起人们的注意。对于服务器来说,最常见的故障包括硬盘驱动、电源、RAID适配器、主板、RAM或CPU问题等。
-
服务器常见故障的诊断与解决方法介绍
当你遇到类似的问题时,就可以按照本文例子的介绍,先问自己几个简单的问题,逐步隔离问题所在,最后找到真正的问题根源。