论文部分内容阅读
传统的服务器管理一般有以下两种方式:一种是人工定期巡视。这种方式较有局限性,例如当服务器出现异常情况的时候不能第一时间发现、管理效率低下等;另一种是针对特定的服务器专门开发管理软件。但这种方式成本比较高,同时不能实现不同服务器的共同管理。在这种情况下,开发出能够实现集中管理多台、不同服务器的管理软件就十分必要。但开发这类软件的难点在于各厂商制造服务器的标准不一,无法以统一的方式对多厂商的不同服务器进行管理。针对这一问题,Intel等公司提出了智能平台管理接口(Intelligent Platform Management Interface, IPMI), IPMI为上层系统管理软件提供对底层硬件设备监控的统一接口,使得不同平台的集中管理成为了可能。本文的主要工作是借助Ruby语言实现一个基于智能平台管理接口的服务器管理软件,软件能够在不同的操作系统下运行。软件能够实现对支持IPMI规范的服务器的实时监控和远程管理,所有实现的IPMI功能都是通过在LAN下与BMC (Baseboard Management Controller, IPMI的核心)进行信息的交互来完成的。实际管理中当被监控的服务器发生异常情况如温度超过设置的阀值时,会产生告警信息并记录在系统事件日志中,管理人员可以通过本软件查看相关日志信息,给出相应的解决方案进行服务器恢复,来减少因服务器宕机所造成的损失。本文首先分析了传统服务器管理方式的不足,以说明基于IPMI的服务器管理的重要意义。然后详细地介绍了IPMI的主体架构及其内部实现方式。接下来,提出了一种基于IPMI的服务器管理软件的设计方案,并详细描述了软件要实现的具体功能和其核心模块的具体实现细节。最后指出了该软件在实际的服务器管理应用中的价值以及其存在的一些不足之处,并提出了一些如何改进软件功能和提升软件管理能力的想法。本文实现的管理软件既可以作为一个单独的工具用来辅助服务器的管理,同时它提供的函数接口还可以作为用Rails开发的服务器管理系统的类库,利用此软件实现的功能并结合其他一些服务器管理技术将使管理能力更佳。