服务器运行状态收集和分析对于业务平台至关重要,这也是服务器管理中最基本的组成部分。而如今在各行业中都广为出现的服务器集群(Server Cluster),在客户端来讲他们是隐型的,而在管理员眼中则需要分而治之,当群集中的服务器数量越来越多的时候,运维人员应该如何具体的进行监控和管理呢?游龙科技(SiteView)作为国内领先的IT运维厂商,在大量金融行业实施案例的基础上,对于服务器集群的监控和管理提出了崭新的观点。
服务器集群(Clusters)的“亚健康”
服务器集群提供了改进的容错能力和模块化的系统扩展能力,一旦某个系统出现故障,应用服务将被重新启动或被另一台服务器接管,这正符合了金融行业客户的广泛需求。网上业务量的大量增长,使得服务器集群在这些企业中的应用大量出现。作为高可用性和稳定性的代表,服务器集群的应用本是无可挑剔的,但仍有一些企业牵动这些“大象”时,却依然在使用过时的技术。举例来说,一个服务器集群的运行状况,一般就代表一个核心业务系统的可用与否的关键因素,传统监控方法仅仅简单地认为集群中的某台主机“可用”或“不可用”两种状态。
游龙科技认为:“正是因为管理人员对于集群系统的过分信任,才会导致判断它时采用这样简单的做法,但这只考虑了两种极端的状态,显然无法对集群系统的健康状况进行全面分析”。根据农发行、上海交行、新华期货、金石期货、江海证券、中海基金……等国内大量游龙科技的客户实际应用中,我们对各种服务器应用集群进行了监控,大量的情况证明系统从“可用”转向“不可用”并非是瞬间发生,而存在一个相当繁琐的过程。在这个过程中,系统的某些核心指标将会提前显示出异常,虽然此时系统对外表现出的仍然为“可用”,但整个系统实际已经处于“亚健康”,对客户端的请求反应逐渐变慢,系统出现不稳定的迹象,系统整体可用性逐渐降低,如果不进行任何干预,系统在未来某个时点将有极大可能转化为真正“不可用”,从而导致灾难性的后果。
服务器集群(Clusters)运维“三步走”
集群中每台服务器都应该得到同样的关注,而如何整体监控到整个集群的好坏呢?游龙科技认为可以采用这样的步骤:“先做到监控单台服务器的性能,然后根据业务进行分组,最后针对集群整体性能实时监控”。
第一步:全面掌控集群运行的基本信息。在没有有效工具帮助的情况下,服务器集群的维护工作异常繁重,同时也直接影响了运行的效果。管理人员首先可以利用SiteView ECC实时全面的信息收集,如对服务器静态指标(如:操作系统类型、版本、CPU型号、CPU个数、物理内存和交换空间的大小等)收集上来,然后将动态指标(如:系统连续运行时间、CUP、内存、磁盘分区使用率、某一进程占用的系统资源、某一进程在系统中的数目等)在管理平台上设置仪表盘或者直方图显示,做好最基本的监控管理。
第二步:根据业务状况将集群进行对应分组。可通过SiteView ECC的分组功能将服务器、存储和网络设备针对业务进行分组。分组功能相当重要,为什么这么说呢?在20年前,一个典型的银行仅提供3-5种业务,但是现在,主要业务就达几十乃至上百种。这包括:抵押贷款、个人贷款、储蓄,以及信用卡账户和内部协同管理服务器群等等,如果不分组的话,在管理员眼里这些系统还都是单独的,这也就失去了整体运维的作用。管理员利用分组功能之后,就可使用SiteView ECC内置的几十种监测器,通过对业务服务主机进行定时和实时的监测,提供其需要的业务服务水平数据,包括业务系统所经路经的延迟、丢包、流量、网络停顿时间和网络可用率更详细数据的管理。
第三步:全面预警,深化调优。管理员可通过SiteView ECC可定制的监测器功能对集群性能整体进行监管。例如:反映集群服务的总体运行状况,集中显示特定方面的数据;反映服务器运行状况和性能的基础结构数据;反映心跳线中数据检测的正常工作;反映可能出现服务器切换的响应时间;反映特定用户体验的客户端数据,例如连接集群时间、连接成与失败的特定操作等等。并根据指定的逻辑与给定阀值进行比较,如果满足该逻辑,则进行报警。报警方式可选择邮件或者手机短信息。并且还可以将采集来的数据存入SiteView ECC数据库,作为数据挖掘,集群性能分析的数据源。
游龙科技针对服务器集群的运维方向的研究已经被众多的金融企业所应用。以上海交行为例,SiteView ECC被安装在核心服务器上,能够对上海交行的上千台服务器进行统一的监测,通过一个界面能够看到整个服务器集群的运行状况,全面掌握服务器区的运行,这样就可不用部署复杂繁多的设备来监控大规模的服务器集群。与上交行的感触相同,很多金融企业中的运维人员纷纷表示:“我们的系统必须能够每天 24 小时、每周 7天不间断地工作。此外,我们还需要简化数据中心,以便快速部署系统来应对需求波动,SiteView ECC强大的功能让我们感到惊讶。对于那些正在寻找任务关键型数据中心运维解决方案的人来说,也可以方便的满足用户自己的配置定义和功能扩充要求。”