一种易运维的带外批量定向升级BMC的方法与流程

文档序号:11519393阅读:188来源:国知局

本发明涉及bmc维护技术领域,具体地说是一种易运维的带外批量定向升级bmc的方法。



背景技术:

基板管理控制器(baseboardmanagementcontroller),英文缩写为bmc,是一种用于管理服务器的系统。

随着大数据的发展,客户采购服务器的数量日趋庞大,客户面对数以万计的机房,对运维提出了极大的挑战,几万台甚至几十万台服务器中可能有不同厂商,不同型号,客户一般会通过访问服务器的bmc来对每台服务器进行监控,bmc作为服务器平台管理的“大脑”,在客户运维环境中起着至关重要的作用。

作为一款功能强大的bmc,在其服役过程中难免会经历数次版本升级,如何保证升级的准确率成为了客户运维团队的一个难题,现有技术中的bmc升级动作一般比较简单,即通过工具,将ip、用户名、密码传递给升级工具,升级工具知道bmc的ip、用户名、密码之后随即启动升级动作,现有技术中的一种升级工具只能对同一型号的机型进行升级升级,比如,升级工具a只能实现将机型a的从版本a升级到版本a,但是并不能用于对机型c的升级工作。上述方法对单型号的服务器尚且适用,但客户机房往往运维着不同厂家不同型号的机台,其升级的规律可能千变万化,比如a机型升级至a版本,b机型升级至b版本,c机型升级至c版本,此时现有技术中的升级方式显然无法满足客户需求。



技术实现要素:

本发明的目的在于提供一种易运维的带外批量定向升级bmc的方法,用于解决无法对bmc进行批量升级的问题。

本发明解决其技术问题所采取的技术方案是:

一种易运维的带外批量定向升级bmc的方法,包括以下步骤:

1)、将若干的服务器通过网络连接到同一管理端上,将若干的新版本文件存储到管理端中;

2)、在管理端上输入升级方案,升级方案包括需要进行升级的服务器的bmc的ip、该bmc的用户名、该bmc的密码、需要进行升级的服务器的bmc的型号和该型号的bmc需要升级到的新版本文件的名称,管理端将升级方案存储到配置文件中;

3)、管理端通过脚本对步骤2)中所述的配置文件进行解析;

4)、管理端根据步骤3)的解析结果寻找到步骤2)中所述的bmc对应的新版本文件,管理端将该新版本文件更新到步骤2)中所述的bmc上。

进一步地,所述步骤2)中的配置文件包括ip.txt和config.txt,需要进行升级的服务器的bmc的ip、该bmc的用户名和该bmc的密码存储到ip.txt中,需要进行升级的服务器的bmc的型号和该该型号bmc需要升级到的新版本文件的名称存储到config.txt中。

进一步地,所述步骤3)中的中的脚本采用shell脚本。

进一步地,所述步骤1)中将若干的新版本文件存储到管理端中的方法具体为,建立若干的文件夹,每个文件夹中各存储一个所述新版本文件,文件夹以对应的新版本文件的名称进行命名。

本发明的有益效果是:

本发明提供的一种易运维的带外批量定向升级bmc的方法,能够通过一台管理端实现对若干的服务器的bmc进行批量的升级工作,在批量进行bmc的升级工作中,即使在bmc的数量繁多而且涉及的bmc的型号较多的时候,也能实现快速的将各个bmc准确的升级到对应的版本,提高了bmc升级工作的速度。

附图说明

图1为本发明的流程图;

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

如图1所示,本发明包括以下步骤:

1)、将若干的服务器通过网络连接到同一管理端上,将若干的新版本文件存储到管理端中,将若干的新版本文件存储到管理端中的方法具体为,建立若干的文件夹,每个文件夹中各存储一个所述新版本文件,文件夹以对应的新版本文件的名称进行命名;

例如,新版本文件包括4.1.2、4.2.0和4.3.0,那么在管理端的存储路径/file下建立三个文件夹,这三个文件夹的名称分别为4.1.2、4.2.0和4.3.0,将4.1.2的新版本文件存储到名称为4.1.2的文件夹中,将4.2.0的新版本文件存储到名称为4.2.0的文件夹中,将4.3.0的新版本文件存储到名称为4.3.0的文件夹中;

2)、在管理端上输入升级方案,升级方案包括需要进行升级的服务器的bmc的ip、该bmc的用户名、该bmc的密码、需要进行升级的服务器的bmc的型号和该型号的bmc需要升级到的新版本文件的名称,管理端将升级方案存储到配置文件中;

配置文件包括ip.txt和config.txt,需要进行升级的服务器的bmc的ip、该bmc的用户名和该bmc的密码存储到ip.txt中,需要进行升级的服务器的bmc的型号和该型号bmc需要升级到的新版本文件的名称存储到config.txt中。

ip.txt的格式如下,

以“192.168.0.1adminadmin”为例,其中“192.168.0.1”指的是需要进行升级的服务器的bmc的ip,第一个“admin”指的是该bmc的用户名,第二个“admin”指的是该bmc的密码;

config.txt的格式如下,

“nf5166h44.1.2”指的是将型号为nf5166h4的bmc升级到4.1.2的新版本,“nf5212g44.2.0”是指型号为nf5212g4的bmc升级到4.2.0的新版本,“sa3224l24.3.0”指的是将型号sa3224l2的bmc升级到4.3.0的版本;

3)、管理端通过shell脚本对步骤2)中的配置文件进行解析;

解析结果包括5个变量。一是$ip即需要进行升级的服务器的bmc的ip,二是$user即该bmc的用户名,三是$passwd即该bmc的密码,四是$pn即需要进行升级的服务器的bmc的型号,五是$fv即该型号bmc需要升级到的新版本文件的名称,这些变量均由shell脚本自动从配置文件中读取,实现的代码如下:

catip.txt|awk'{print$1}'|whilereadip

catip.txt|awk'{print$2}'|whilereaduser

catip.txt|awk'{print$3}'|whilereadpasswd

catconfig.txt|awk'{print$1}'|whilereadpn

catconfig.txt|awk'{print$2}'|whilereadfv

4)、管理端根据步骤3)的解析结果寻找到寻找到步骤2)中所述的bmc对应的新版本文件,管理端将该新版本文件更新到步骤2)中所述的bmc上,

具体为,管理端通过脚本根据步骤3)中$ip找到该ip下的bmc,然后使用$user和$passwd登录该bmc,然后管理端通过脚本读取该bmc的型号信息,称读取到该bmc的型号信息为$pn,然后管理端在步骤3)中的解析结果中找到与$pn相匹配的$pn,然后管理端找到$pn相对应的所对应的$fv,然后管理端将该$fv升级到对应的bmc上。

以ip为192.168.0.1的服务器为例,管理端通过脚本找到ip为192.168.0.1下的bmc,然后管理端通过脚本读取ip为192.168.0.1的bmc的型号信息,ip为192.168.0.1的bmc的型号为nf5166h4,然后管理端在步骤3)中的解析结果中找到型号nf5166h4,然后管理端找到型号nf5166h4相对应的所对应的$fv即4.1.2,然后管理端将4.1.2的新版本文件升级到对应的bmc上。

升级结束后,对升级结果进行校验。

本发明提供的一种易运维的带外批量定向升级bmc的方法,能够通过一台管理端实现对若干的服务器的bmc进行批量的升级工作,在批量进行bmc的升级工作中,只有ip、用户名、密码和bmc的型号信息都相符的时候才能对该型号下的bmc进行对应的升级的工作,从而确保了升级工作的准确度。即使在bmc的数量繁多而且涉及的bmc的型号较多的时候,也能实现快速的将各个bmc准确的升级到对应的版本,提高了bmc升级工作的速度。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1