专利名称:服务器识别方法
技术领域:
本发明涉及一种识别方法,特别是一种服务器识别方法。
背景技术:
随着企业规模的增大,也使得企业内部的服务器数量随之增加。在企业内部通 过专门的管理软件对服务器进行管理。而管理主机的第一件事情就是要把服务器记录 到管理系统中。将服务器加入到管理系统有以下各种方法离线式(offline)与在线式 (online)。离线式在服务器尚未启动时,将新的服务器记录至管理列表中,再将该管理列表 导入至管理系统。而在线式是在服务器运行时,通过标准协议连接服务器以达到发现服务 器的目的。而在线式的连接方式又可以区分为两种频内(in-band)与频外(out-of-band)。 频内指的是操作系统已经启动的情况下利用标准协议,如,ICMP、SNMP、WMI等或是通过私有 协议访问操作系统。频外则是服务器没有进入操作系统的情况下,通过智能平台管理接口 (International Precious Metalslnstitute,IPMI)、主动式管理技术(Active Management Technology,AMT)等协议来访问服务器。但是,在频内与频外不同模式下,服务器的网络地 址是完全不同的。管理系统会将不同网络地址的同一台服务器辨识为不同服务器。假设一台具有双网络卡的服务器,具有两个不同的网络地址。该服务器支持IPMI 协议(为主板具有有基板管理控制(BMC)芯片),基板管理控制的网络地址为10. 1. 1. 1。而 服务器所运行的操作系统的网络地址为192. 168. 1. 1。当管理系统分别通过这两个网络地 址发现服务器,管理系统系将两个网络地址分别设定为两台服务器。这样一来,将造成内部 网络路由上的复杂度与管理上的重复。
发明内容
本发明所要解决的技术问题是提供一种服务器识别方法,用以识别同一局域网络 中的多个服务器,特别是针对具有多网络地址且同一服务器。为了实现上述目的,本发明提供了一种服务器识别方法,用以识别一局域网络中 的多个服务器,该服务器识别方法包括将一管理主机电性连接于每一该些服务器;根据该服务器的运行状态,通过一联机手段取得该服务器的一机器特征码;由该管理主机根据每一该服务器的该机器特征码查找一服务器列表中是否存在 该服务器;当该服务器列表中存在该服务器时,则依据该机器特征码对该服务器列表的该服 务器的记录内容进行更新;以及当该服务器列表中不存在该服务器的记录时,则将该服务器的该机器特征码新增 至该服务器列表中。
上述的服务器识别方法,其中该机器特征码包含一网络地址、一操作系统的种 类、一机器名、一机器序号、一媒体存取地址、或一通用唯一识别码。上述的服务器识别方法,其中该操作系统为窗口操作系统或Linux操作系统。上述的服务器识别方法,其中若该服务器的该操作系统为该窗口操作系统时,则 提取该服务器的机器名作为该机器特征码。上述的服务器识别方法,其中若该服务器的该操作系统为该Linux操作系统时, 则提取该服务器的该机器序号、该媒体存取地址、或该通用唯一识别码作为该机器特征码。上述的服务器识别方法,其中在该管理主机中另具有一非法列表,其用以记录无 效的该机器特征码,避免该管理主机将符合该非法列表的该些服务器识别为同一台该服务
o上述的服务器识别方法,其中该联机手段为频内手段或频外手段。为达上述目的,本发明所公开的服务器识别方法包括以下步骤将管理主机电性 连接于每一服务器;根据服务器的运行状态,通过联机手段取得该服务器的机器特征码; 由管理主机根据每一服务器的机器特征码查找服务器列表中是否存在服务器;当服务器列 表中存在服务器时,则依据机器特征码对服务器列表的服务器的记录内容进行更新;当服 务器列表中不存在服务器的记录时,则将服务器的网络地址新增至服务器列表中。本发明的技术效果在于本发明提供了一种服务器识别方法,其应用在局域网络 中具有多网络地址的同一服务器。由于在企业的局域网络中可能存在具有多个不同网络地 址的同一服务器。若是管理系统根据每一网络地址进行新增服务器时,将会产生多组指向 相同服务器的路由。本发明针对此一具有多网络地址的同一服务器进行合并,使得管理系 统可以将重复的路由合并为同一组,以降低管理与路由的负担。以下结合附图和具体实施例对本发明进行详细描述,但不作为对本发明的限定。
1图为本发明的结构示意图;2图为本发明的运行流程示意图;3图为本发明的步骤S230的运行流程示意图。其中,附图标记110 服务器120 管理主机121 管理清单122 非法列表
具体实施例方式下面结合附图对本发明的结构原理和工作原理作具体的描述请参考图1所示,其为本发明的架构示意图。在图1中为一局域网络,在局域网络 中具有至少一服务器110与管理主机120。服务器110上所运行的操作系统可以是微软公 司所推出的窗口操作系统(例如:ffindows XP,NT,Windows 2003、Vista或 Windows 7 等)、 Linux操作系统或Unix操作系统。管理主机120通过网络连接于该些服务器110。在管理主机120上运行管理程序,用以辨识各服务器110。管理程序包括以下步骤,还请参考图2 所示,其为本发明的运行流程示意图。步骤S210 将管理主机电性连接于每一服务器;步骤S220 根据服务器的运行状态,通过联机手段取得该服务器的机器特征码;步骤S230 由管理主机根据每一服务器的机器特征码查找服务器列表中是否存 在服务器;步骤S240 当服务器列表中存在服务器时,则依据机器特征码对服务器列表的服 务器的记录内容进行更新;以及步骤S250 当服务器列表中不存在服务器的记录时,则将服务器的网络地址新增 至服务器列表中。在管理主机120中具有服务器110列表与非法列表122。服务器110列表用以记 录符合机器特征码的同一台服务器110。而非法列表122用以记录无效的机器特征码,避免 管理主机120将符合非法列表122的些服务器110识别为同一台该服务器110。举例来说,非法列表122可以通过机器序号与通用唯一识别码作为辨识的依据。 请参考下表所示表1.非法列表
Category字段用以区分是SN或UUID ;Operator字段用来定义查找规则的,在表 1有三种(equal 即和后面字段完全一样则为非法;contains 只要包含字段中的内容则为 非法;regular 字段是一个正则表达式,如果符合该表达式则为非法数据)。举例来说,SN 内容是 “To be filled by OEM” ;UUID 内容中包括 “aaa | bbb |. . . fff |000|. . . 999” 这就 需要维护一个非法列表122,遇到这些没意义内容则即使两个网络地址相同的服务器110, 也不会认为是同一台服务器110。管理主机120可以通过服务器110的运行环境与操作系统来进行判断。换言之, 管理主机120通过机器特征码判断管理清单121中的服务器110是否为同一台。其中机 器特征码为网络地址、操作系统的种类、机器名、机器序号、媒体存取地址或通用唯一识别 码(Universally Unique Identifier,UUID)的任一。例如,服务器110的操作系统若是微 软公司所推出的窗口操作系统,则在同一网域中仅能存在一台机器名的服务器110。但是 Linux操作系统并无此一限制。因此,为能详尽的说明整体的步骤S230的判断过程,还请另外参考图3。在判断过 程包括以下步骤步骤S310 判断服务器的操作系统是否为窗口操作系统;若服务器的操作系统为 窗口操作系统则执行步骤S320,反之则执行步骤S330。步骤S320:承接步骤S310,若服务器的操作系统为窗口操作系统,查找管理清单 中是否存在相同机器名称的服务器;步骤S330 若服务器的操作系统不为窗口操作系统或者管理清单中不存在相同 机器名称的服务器,则查找非法列表用以判断服务器的机器序号是否为无效数据;若为无 效数据,则执行步骤S350步骤S340 承接步骤S330,若服务器的机器序号不为无效数据时,则查找管理清 单中是否存在相同机器序号的服务器;步骤S350:承接步骤S340,若管理清单中不存在相同机器序号的服务器,查找管 理清单中是否存在有与该台服务器的媒体存取地址相同的该服务器;步骤S360 承接步骤S350,若管理清单中不存在有相同媒体存取地址的服务器, 则查找非法列表判断该台服务器的通用唯一识别码是否为无效数据;步骤S370 承接步骤S360 若该台服务器的通用唯一识别码不为无效数据,则判 断管理清单中是否有相同的通用唯一识别码;步骤S371 承接步骤S360,若非法列表中存在服务器的通用唯一识别码,则在管 理清单中建立新的服务器数据;步骤S381 承接步骤S370,若管理清单中不存在相同的通用唯一识别码,则在管 理清单中建立新的服务器数据;步骤S382 承步骤S320,若服务器的操作系统为窗口操作系统,则遍历管理列表 中具有相同的服务器,并将相同机器名的服务器识别为同一台服务器;步骤S351 承接步骤S340,若管理清单中存在相同机器序号的服务器,则将相同 机器序号的服务器识别为同一台服务器;步骤S361 承接步骤S350,若存在相同媒体存取地址的该服务器,并将相同媒体 存取地址的服务器识别为同一台服务器;以及
步骤S383 承接步骤S370,若管理清单中具有相同的通用唯一识别码,则将相同 机器序号的通用唯一识别码别为同一台服务器。为能清楚说明本发明的运行,以下述例子作为说明,请配合上述运行流程。首先, 管理主机120通过网络连接该些服务器。每一个服务器110并非处于开机运行的状态。因 此对于未开机的服务器110或运行中的服务器110会分别以不同的通讯协议进行连接(对 应步骤S210)。假设服务器A所运行操作系统的网络地址为10. 191. 1. 1(相应的媒体存取 地址11-22-33-44-55-66),而服务器A的基板管理控制的网络地址为172. 17. 1. 1 (相应的 媒体存取地址 aa-bb-cc-dd-ee-ff)。接着,通过联机手段取得该服务器A的机器特征码。由于服务器A可能尚未开机或者 已经处于运行状态。因此管理主机120会根据服务器A的不同状态取得相应的机器特征码。假设服务器A处于未开机状态。管理主机120利用IPMI协议通过172. 17. 1. 1查 找到服务器A。由于服务器A仍处于关机状态,所以无法通过IPMI取得服务器的操作系统 信息。管理主机120可以通过BMC取得服务器A的序号资料(假设为“To be filled by OEM”)、媒体存取地址(aa-bb-cc-dd-ee-ff)、通用唯一识别码(123-aaa-bbb-ccc_ddd)。假 设管理主机120中并未储存有该台服务器A信息,所以管理主机120在查找到服务器A后, 管理主机120系将服务器A记录在管理清单121中。随后,将服务器A开机并运行操作系统。管理主机120查询局域网络时发现网 络地址为10. 191. 1. 1的服务器A,管理主机120找到后通过私有协议利用系统管理基本 输入/输出系统(System management BIOS, SMBI0S)取到服务器的操作系统信息(假 设为Windows 2003 enterprise)、机器序号(假设为snOOl)、媒体存取地址(Mac地址 (11-22-33-44-55-66 和 aa-bb-cc-dd-ee-ff))、通用唯一识别码(123-567-789-abc-def)。管理主机120根据服务器110开机时所获取到的各项机器特征码查询管理清单 121中是否具有相同的服务器110。由于服务器110关机时BMC的机器序号(To be filled by OEM)为无效数据。且管理清单121中并未查找到相同的通用唯一识别码。最后,在管 理清单121中查找到服务器110的已储存的媒体存取地址。所以,可以将这两笔的服务器 110信息识别为同一台服务器110。除了上述情况外,若非法列表122中存在服务器110的通用唯一识别码,则需在管 理清单121中建立新的服务器110数据。这是因为通用唯一识别码如果是非法数据,这将 意味该比数据没有意义,既然没意义就不能将它和其它已经存在的节点进行合并。因此只 能建立的新的节点来记录该笔服务器110。如果不建立新的节点,而是与其它已经存在的节 点进行合并。将可能产生把两台不同的服务器110识别成同一台(对应步骤S341)。本发明提供一种服务器110识别方法,其应用在局域网络中具有多网络地址的同 一服务器110。由于在企业的局域网络中可能存在具有多个不同网络地址的同一服务器 110。若是管理系统系根据每一网络地址进行新增服务器110时,将会产生多组指向相同服 务器110的路由。本发明针对此一具有多网络地址的同一服务器110进行合并,使得管理 系统可以将重复的路由合并为同一组,以降低管理与路由的负担。当然,本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,熟 悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变 形都应属于本发明所附的权利要求的保护范围。
权利要求
一种服务器识别方法,用以识别一局域网络中的多个服务器,其特征在于,该服务器识别方法包括将一管理主机电性连接于每一该些服务器;根据该服务器的运行状态,通过一联机手段取得该服务器的一机器特征码;由该管理主机根据每一该服务器的该机器特征码查找一服务器列表中是否存在该服务器;当该服务器列表中存在该服务器时,则依据该机器特征码对该服务器列表的该服务器的记录内容进行更新;以及当该服务器列表中不存在该服务器的记录时,则将该服务器的该机器特征码新增至该服务器列表中。
2.如权利要求1所述的服务器识别方法,其特征在于,该机器特征码包含一网络地 址、一操作系统的种类、一机器名、一机器序号、一媒体存取地址或一通用唯一识别码。
3.如权利要求2所述的服务器识别方法,其特征在于,该操作系统为窗口操作系统或 Linux操作系统。
4.如权利要求3所述的服务器识别方法,其特征在于,若该服务器的该操作系统为该 窗口操作系统时,则提取该服务器的机器名作为该机器特征码。
5.如权利要求3所述的服务器识别方法,其特征在于,若该服务器的该操作系统为该 Linux操作系统时,则提取该服务器的该机器序号、该媒体存取地址或该通用唯一识别码作 为该机器特征码。
6.如权利要求1所述的服务器识别方法,其特征在于,在该管理主机中另具有一非法 列表,其用以记录无效的该机器特征码,避免该管理主机将符合该非法列表的该些服务器 识别为同一台该服务器。
7.如权利要求1所述的服务器识别方法,其特征在于,该联机手段为频内手段或频外 手段。
全文摘要
一种服务器识别方法,用以识别在同一局域网络中的多个服务器。识别方法包括以下步骤将管理主机电性连接于每一服务器;根据服务器的运行状态,通过联机手段取得该服务器的机器特征码;由管理主机根据每一服务器的机器特征码查找服务器列表中是否存在服务器;当服务器列表中存在服务器时,则依据机器特征码对服务器列表的服务器的记录内容进行更新;当服务器列表中不存在服务器的记录时,则将服务器的网络地址新增至服务器列表中。
文档编号H04L29/06GK101877647SQ200910253310
公开日2010年11月3日 申请日期2009年11月30日 优先权日2009年11月30日
发明者刘福成, 范刚, 陈玄同, 陈龙 申请人:英业达股份有限公司