Idc的网络和服务器健康度数据采样方法及装置的制造方法
【技术领域】
[0001]本发明涉及数据采集的技术领域,尤其涉及一种IDC的网络和服务器健康度数据采样方法及装置。
【背景技术】
[0002]目前,在选择互联网数据中心IDC(Internet Data Center)的时候,我们会对IDC的网络可用率、网络响应时间进行测试,后续在使用的过程当中一般很少去关注网络响应时间的变化,结果因为机房用户的日趋增加,网络响应时间逐渐增长,在后续的使用过程中会发现网络响应时间已经不是当初选择时的数据。随着使用的时间增长,由于在使用IDC机房中服务器的过程中没有对这些硬件的健康度进行持续的健康度监控,会影IDC机房中服务器中硬盘的健康度参数。而现有技术中,IDC的网络的健康度采集是通过人工敲入相应健康度测试命令得到的,IDC的服务器的健康度采集则是通过人工在各个服务器中敲入相应健康度测试命令得到的,一个IDC机房中服务器的数量太多,如果经常进行健康度监控,操作繁琐,需要耗费很多的人力成本。
【发明内容】
[0003]本发明的目的在于提出IDC的网络和服务器健康度数据采样方法及装置,旨在解决IDC的网络和服务器健康度的数据采集操作繁琐的问题。
[0004]为达此目的,本发明实施例采用以下技术方案:
[0005]一种IDC的网络和服务器健康度数据的采样方法,所述方法包括:
[0006]通过运行健康度测试脚本按预设的周期对IDC的网络和IDC机房中各服务器进行相应健康度数据的测试;
[0007]将获取到的所述IDC的网络的健康度测试结果和接收到的所述IDC机房中各服务器输出的健康度数据的测试结果存储入预置的数据库。
[0008]优选的,所述通过运行健康度测试脚本对IDC的网络和IDC机房中各服务器进行相应健康度数据的测试之前,还包括:生成包含用于按预设的周期发送所述健康度数据的测试命令的健康度测试脚本。
[0009]优选的,所述将接收到的所述IDC的网络和所述IDC机房中各服务器输出的健康度测试结果存储入预置的数据库之后,还包括:按预置频率调用所述数据库中的相应健康度测试结果,生成相应健康度数据的数据报表、相应健康度数据的数据可视图或至少两个时间段内的健康度数据的数据对比图。
[0010]优选的,所述通过运行健康度测试脚本按预设的周期对IDC的网络和IDC机房中各服务器进行相应健康度数据的测试,包括:通过运行健康度测试脚本按预设的周期发送用于测试IDC机房中各服务器的相应健康度数据的测试命令给IDC机房中各服务器,且按预置周期执行用于测试IDC的网络的相应健康度数据的测试命令。
[0011]优选的,健康度数据包括IDC的网络丢包率、IDC的网络响应时间、IDC机房中服务器的硬盘健康度、IDC机房中服务器的硬盘读写速度、IDC机房中各服务器的磁盘1的读写压力。
[0012]本发明还提供了一种IDC的网络和服务器健康度数据的采样装置,所述装置包括:
[0013]脚本运行单元,用于通过运行健康度测试脚本按预设的周期对IDC的网络和IDC机房中各服务器进行相应健康度数据的测试;
[0014]与所述脚本运行单元连接的测试结果接收存储单元,用于将获取到的所述IDC的网络的健康度测试结果和接收到的所述IDC机房中各服务器输出的健康度数据的测试结果存储入预置的数据库。
[0015]优选的,还包括与所述脚本运行单元连接的脚本生成单元,用于生成包含用于周期性发送所述健康度数据的测试命令的健康度测试脚本。
[0016]优选的,还包括与所述测试结果接收存储单元连接的可视化单元,用于按预置频率调用所述数据库中的相应健康度测试结果,生成相应健康度数据的数据报表、相应健康度数据的数据可视图或至少两个时间段内的健康度数据的数据对比图。
[0017]优选的,所述脚本运行单元,用于:通过运行健康度测试脚本按预设的周期发送用于测试IDC机房中各服务器的相应健康度数据的测试命令给IDC机房中各服务器,且按预置周期执行用于测试IDC的网络的相应健康度数据的测试命令。
[0018]优选的,健康度数据包括IDC的网络丢包率、IDC的网络响应时间、IDC机房中服务器的硬盘健康度、IDC机房中服务器的硬盘读写速度、IDC机房中各服务器的磁盘1的读写压力。
[0019]本发明与现有技术相比,通过管理服务器运行健康度测试脚本,使得IDC的网络和IDC机房中各服务器相应健康度数据的采集自动化、操作简捷,将采集的健康度数据存储入预设数据库,使数据记录自动化且准确性高,方便后续提取查看。
【附图说明】
[0020]图1为本发明提供一种IDC的网络和服务器的健康度数据采样方法第一实施例的方法流程示意图;
[0021]图2为本发明提供一种IDC的网络和服务器的健康度数据采样装置第一实施例的结构框图。
【具体实施方式】
[0022]下面结合附图和实施例对本发明实施例作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明实施例,而非对本发明实施例的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明实施例相关的部分而非全部结构。
[0023]参照图1,图1为本发明提供一种IDC的网络和服务器的健康度数据采样方法第一实施例的方法流程示意图。
[0024]一种IDC的网络和服务器的健康度数据采样方法,该方法可以采用用于处理和存储数据信息的处理器来实现,也可以采用IDC机房中的任意一个服务器作为管理服务器来实现。该方法包括下述步骤。
[0025]100:生成包含用于按预设的周期发送健康度数据的测试命令的健康度测试脚本。
[0026]健康度测试脚本中包括用于测试IDC的网络和IDC机房中各服务器的健康度数据的测试命令集合,用于测试IDC的网络的健康度数据的测试命令包括用于测试网络丢包率的测试命令、用于测试网络响应时间的测试命令等。用于测试IDC机房中各服务器的健康度数据的测试命令包括用于测试IDC机房中各服务器的硬盘健康度的测试命令、用于测试IDC机房中各服务器的硬盘读写速度的测试命令、用于测试IDC机房测试测试中各服务器的磁盘1的读写压力的命令等。发送健康度数据的测试命令的周期可以各不相同,如用于测试IDC机房中各服务器的硬盘读写速度的测试命令可以每月发送一次,而用于测试获得网络丢包率的测试命令可以每15-30分钟发送一次。
[0027]其中,健康度测试脚本中的测试命令可以采用linux shell centos,php,python,ruby等脚本语言来编写,以linux shell centos这种脚本语言为例,通过ping命令获得IDC的网络丢包率和网络响应时间;通过发送hdpar命令给各服务器来检测IDC机房中各服务器硬盘读写速度;通过发送smartctl命令给各服务器来检测IDC机房中各服务器硬盘的健康情况,根据硬盘型号,其命令参数有所不同;通过发送top命令给各服务器来检测IDC机房中各服务器磁盘1的读写压力。
[0028]101:通过运行健康度测试脚本按预设的周期对IDC的网络和IDC机房中各服务器进行相应健康度数据的测试。
[0029]具体的,管理服务器通过运行健康度测试脚本按预设的周期发送用于测试IDC机房中各服务器的相应健康度数据的测试命令给IDC机房中各服务器,且管理服务器通过运行健康度测试脚本按预置周期执行用于测试IDC的网络的相应健康度数据的测试命令。其中,IDC机房中各服务器可以不包括管理服务器。
[0030]健康度数据包括IDC的网络丢包率、IDC的网络响应时间、IDC机房中服务器的硬盘健康度、IDC机房中服务器的硬盘读写速度、IDC机房中各服务器的磁盘1的读写压力。
[0031]102:将获取到的IDC的网络的健康度测试结果和接收到的IDC机房中各服务器输出的健康度数据的测试结果存储入预置的数据库。
[0032]健康度测试结果包括健康度数据类型、测试时间和测得的健康度数据。
[0033]例如:管理服务器预先创建mysql数据库,管理服务器将接收到的所述IDC的网络和所述IDC机房中各服务器输出的健康度测试结果存储入mysql数据库中。
[0034]进一步的,为了更直观的看到IDC的网络和IDC机房中各服务器中的健康度数据情况,还包括步骤103。
[0035]103:按预置频率调用数据库中的相应健康度测试结果,生成相应健康度数据的数据报表、相应健康度数据的数据可视图或至少两个时间段内的健康度数据的数据对比图。
[0036]通过数据库生成相应健康度数据报表,其生成的健康度数据报表或数据可视图可以针对某一种或几种健康度数据类型,可以通过用户设置选择一种或几种健康度数据类型,管理服务器从数据库中调取这些数据类型的数据,并生成数据报表。
[0037]通过数据库生成IDC机房中相应服务器的健康度数据报表或数据可视图,其生成的健康度数据报表或数据可视图也可以针对IDC机房中各服务器中的一个或几个,可以通过用户设置选择IDC机房中各服务器中的一个或几个,管理服务器从数据库中调取这些服务器的各项健康度数据,并生成数据报表。生成的健康度数据报表也可以针对IDC机房中各服务器中的一个或几个服务器的一种或几种服务器的健康度数据类型,可以通过用户设置选择IDC机房中各服务器中的一个或几个服务器并选择一种或几种服务器的健康度数据类型,从数据库中调取从数据库中调取用户设置的相应服务器的相应健康度数据,并生成数据报表或生成数据可视图,其中数据可视图可以为折线图、扇形图、柱状图等。
[0038]通过数据库生成至少两个时间段内的健康度数据的数据对比图,可以通过用户设置选择IDC机房中的至少两个时间段和健康度数据类型,从数据库中调取用户设置的相应时间段的对应健康度数据类型的数据,生成数据对比图,其中,数据对比图可以为数据对比表、对比折线图、对比扇形图、对比柱状