一种硬盘资源动态分配的方法和设备与流程

文档序号:24638839发布日期:2021-04-09 20:50阅读:95来源:国知局
一种硬盘资源动态分配的方法和设备与流程

本领域涉及计算机领域,并且更具体地涉及一种硬盘资源动态分配的方法和设备。



背景技术:

硬盘是服务器存储单元不可或缺的组件,依据传输协议的不同,目前常用的硬盘有sas(串行连接scsi接口)、sata(串行高级技术连接)、nvme硬盘。sata硬盘,又称串口硬盘,采用串行连接方式,使用嵌入式时钟信号,具备较强的纠错能力,能对传输指令进行检查,提高数据传输的可靠性,具有结构简单、支持热插拔的优点。sas是新一代的scsi技术,sas硬盘也采用串行技术,以获得更高的传输速度,并通过缩短连结线改善内部空间,可兼容sata硬盘。

随着服务器应用场景对存储提出的需求越来越高,服务器主板cpu上提供的有限sas接口不足以满足多硬盘高存储的应用需求,可实现sas传输接口扩展的expander芯片及sasexpander背板应运而生。sasexpander背板通常搭配hba卡或raid卡使用,通过形成一个先进的交换式拓扑架构,得以构建一个基于sas技术的磁盘阵列甚至更大型的存储系统。

通过sasexpander背板扩展下挂的硬盘设备在使用时,受expander内部控制器及firmware(固件)的控制,其带宽和速率通常有固定上限值,这极大降低了资源的灵活分配及存储单元的利用效率。如何在通过sasexpander背板扩展存储资源的同时,合理分配硬盘使用,提升存储单元运行效率,将成为提升服务器资源利用率的重要环节。

目前已有芯片厂商开发出可实现不同接口传输速率分配的expanderfirmware。现有的服务器存储单元设计,通过对sasexpander背板所接硬盘种类及速率的人为预判,由操作人员手动刷新sasexpander背板的firmware。待关机再重启后,方可使用刷新后的firmware。

现有技术方案的缺点主要有:无法实现sasexpander背板firmware在线升级维护:sasexpander背板firmware刷新后,必须关机重启方可生效,中断了服务器正在运行的业务;无法实现存储设备的动态带宽及资源分配:当sasexpander背板连接多个硬盘时,若要调节不同硬盘上行通道的速率,需人为识别硬盘种类或人为输入指令测定硬盘读写速率,据此选择firmware进行烧录,调配挂载硬盘的读写状态,造成人力资源的浪费。



技术实现要素:

有鉴于此,本发明实施例的目的在于提出一种硬盘资源动态分配的方法和设备,通过使用本发明的技术方案,能够实现sasexpander背板固件在线升级维护,刷新sasexpander背板的固件时无需关机重启,不中断服务器正在运行的业务,节省开关机的时间和维护时间,实现了存储设备的动态带宽及资源分配,能够动态调整硬盘的上行带宽,实现存储资源的合理分配。

基于上述目的,本发明的实施例的一个方面提供了一种硬盘资源动态分配的方法,包括以下步骤:

监控sasexpander背板上各个硬盘的信息,并基于该信息和相应固件中的预设信息判断硬盘上行通道速率是否需要调整;

响应于硬盘上行通道速率需要调整,将sasexpander背板上的预设功能管脚关闭;

在sasexpander背板上选择相应的固件进行烧录;

响应于烧录完成,将sasexpander背板上的预设功能管脚开启。

根据本发明的一个实施例,监控sasexpander背板上各个硬盘的信息,并基于该信息和相应固件中的预设信息判断硬盘上行通道速率是否需要调整包括:

监控每个硬盘的实时读写速率,并计算每个硬盘的实时读写速率比;

将每个硬盘的实时读写速率比分别与已刷入的固件设定的比例进行比较;

响应于每个硬盘的实时读写速率比均与已刷入的固件设定的比例一致,判断硬盘上行通道速率不需要调整。

根据本发明的一个实施例,还包括:

响应于每个硬盘的实时读写速率比中的任意一个与已刷入的固件设定的比例不一致,判断硬盘上行通道速率需要调整。

根据本发明的一个实施例,还包括:

将每个硬盘上行通道带宽分配不等的固件保存在sasexpander背板上的闪存中。

根据本发明的一个实施例,在sasexpander背板上选择相应的固件进行烧录包括:

在sasexpander背板上的闪存中选择与各个硬盘数据传输速率比一致的固件进行烧录。

本发明的实施例的另一个方面,还提供了一种硬盘资源动态分配的设备,设备包括:

监控模块,监控模块配置为监控sasexpander背板上各个硬盘的信息,并基于该信息和相应固件中的预设信息判断硬盘上行通道速率是否需要调整;

停用模块,停用模块配置为响应于硬盘上行通道速率需要调整,将sasexpander背板上的预设功能管脚关闭;

选择模块,选择模块配置为在sasexpander背板上选择相应的固件进行烧录;

启用模块,启用模块配置为响应于烧录完成,将sasexpander背板上的预设功能管脚开启。

根据本发明的一个实施例,监控模块还配置为:

监控每个硬盘的实时读写速率,并计算每个硬盘的实时读写速率比;

将每个硬盘的实时读写速率比分别与已刷入的固件设定的比例进行比较;

响应于每个硬盘的实时读写速率比均与已刷入的固件设定的比例一致,判断硬盘上行通道速率不需要调整。

根据本发明的一个实施例,还包括判断模块,判断模块配置为:

响应于每个硬盘的实时读写速率比中的任意一个与已刷入的固件设定的比例不一致,判断硬盘上行通道速率需要调整。

根据本发明的一个实施例,还包括存储模块,存储模块配置为:

将每个硬盘上行通道带宽分配不等的固件保存在sasexpander背板上的闪存中。

根据本发明的一个实施例,选择模块配置为:

在sasexpander背板上的闪存中选择与各个硬盘数据传输速率比一致的固件进行烧录。

本发明具有以下有益技术效果:本发明实施例提供的硬盘资源动态分配的方法,通过监控sasexpander背板上各个硬盘的信息,并基于该信息和相应固件中的预设信息判断硬盘上行通道速率是否需要调整;响应于硬盘上行通道速率需要调整,将sasexpander背板上的预设功能管脚关闭;在sasexpander背板上选择相应的固件进行烧录;响应于烧录完成,将sasexpander背板上的预设功能管脚开启的技术方案,能够实现sasexpander背板固件在线升级维护,刷新sasexpander背板的固件时无需关机重启,不中断服务器正在运行的业务,节省开关机的时间和维护时间,实现了存储设备的动态带宽及资源分配,能够动态调整硬盘的上行带宽,实现存储资源的合理分配。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。

图1为根据本发明一个实施例的硬盘资源动态分配的方法的示意性流程图;

图2为根据本发明一个实施例的硬盘资源动态分配的设备的示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明实施例进一步详细说明。

基于上述目的,本发明的实施例的第一个方面,提出了一种硬盘资源动态分配的方法的一个实施例。图1示出的是该方法的示意性流程图。

如图1中所示,该方法可以包括以下步骤:

s1监控sasexpander背板上各个硬盘的信息,并基于该信息和相应固件中的预设信息判断硬盘上行通道速率是否需要调整,挂载硬盘的实时读写速率存储于sasexpander背板的寄存器中,通过i2c协议可以被fpga获取,fpga对获取的硬盘实时读写速率进行分析,并作出是否刷新firmware的判断,fpga内部对各挂载硬盘的实时读写速率进行比例计算,并按照四舍五入的原则取整,若各挂载硬盘的实时读写速率比例均与已刷入的firmware设定比例一致(初次输入的firmware使下挂硬盘带宽和速率均等),则维持原sasexpander背板的firmware不变,若各挂载硬盘的实时读写速率比例中的任意一个与已刷入的firmware设定比例不一致,则做出刷新firmware的判断;

s2响应于硬盘上行通道速率需要调整,将sasexpander背板上的预设功能管脚关闭,在需要调整的情况下,需要选择其他的固件进行烧录,为防止在烧录过程中,存储系统的工作错乱,因此在烧录的过程中需要暂停上行及下行数据传输的功能管脚的动作以停止sasexpander背板挂载的存储设备参与的数据传输;

s3在sasexpander背板上选择相应的固件进行烧录,在sasexpander背板上会设置闪存,该闪存中存有各硬盘上行通道带宽分配不等的firmware,后续在线自动烧录的sasexpander背板的firmware都存储在这个闪存中,并对其封装进行标记,供fpga识别,并依据挂载硬盘的速率选择闪存中存储的与当下各硬盘数据传输速率比值一致的firmware进行烧录。

s4响应于烧录完成,将sasexpander背板上的预设功能管脚开启,烧录完成后将上述关闭的预设功能管脚开启以恢复其数据的上行与下行传输,可以不断重复上述步骤,直到各挂载硬盘的实时读写速率比例与已刷入的firmware设定比例一致,此时,各硬盘存储设备的资源得到最大程度的合理利用。

通过本发明的技术方案,能够实现sasexpander背板固件在线升级维护,刷新sasexpander背板的固件时无需关机重启,不中断服务器正在运行的业务,节省开关机的时间和维护时间,实现了存储设备的动态带宽及资源分配,能够动态调整硬盘的上行带宽,实现存储资源的合理分配。

在本发明的一个优选实施例中,监控sasexpander背板上各个硬盘的信息,并基于该信息和相应固件中的预设信息判断硬盘上行通道速率是否需要调整包括:

监控每个硬盘的实时读写速率,并计算每个硬盘的实时读写速率比;

将每个硬盘的实时读写速率比分别与已刷入的固件设定的比例进行比较;

响应于每个硬盘的实时读写速率比均与已刷入的固件设定的比例一致,判断硬盘上行通道速率不需要调整。

在本发明的一个优选实施例中,还包括:

响应于每个硬盘的实时读写速率比中的任意一个与已刷入的固件设定的比例不一致,判断硬盘上行通道速率需要调整。fpga内部对各挂载硬盘的实时读写速率进行比例计算,并按照四舍五入的原则取整,若各挂载硬盘的实时读写速率比例均与已刷入的firmware设定比例一致(初次输入的firmware使下挂硬盘带宽和速率均等),则维持原sasexpander背板的firmware不变,若各挂载硬盘的实时读写速率比例中的任意一个与已刷入的firmware设定比例不一致,则做出刷新firmware的判断。

在本发明的一个优选实施例中,还包括:

将每个硬盘上行通道带宽分配不等的固件保存在sasexpander背板上的闪存中。在sasexpander背板上会设置闪存,该闪存中存有各硬盘上行通道带宽分配不等的firmware,后续在线自动烧录的sasexpander背板的firmware都存储在这个闪存中,并对其封装进行标记,供fpga识别。

在本发明的一个优选实施例中,在sasexpander背板上选择相应的固件进行烧录包括:

在sasexpander背板上的闪存中选择与各个硬盘数据传输速率比一致的固件进行烧录。

通过本发明的技术方案,能够实现sasexpander背板固件在线升级维护,刷新sasexpander背板的固件时无需关机重启,不中断服务器正在运行的业务,节省开关机的时间和维护时间,实现了存储设备的动态带宽及资源分配,能够动态调整硬盘的上行带宽,实现存储资源的合理分配。

需要说明的是,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关硬件来完成,上述的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中存储介质可为磁碟、光盘、只读存储器(read-onlymemory,rom)或随机存取存储器(randomaccessmemory,ram)等。上述计算机程序的实施例,可以达到与之对应的前述任意方法实施例相同或者相类似的效果。

此外,根据本发明实施例公开的方法还可以被实现为由cpu执行的计算机程序,该计算机程序可以存储在计算机可读存储介质中。在该计算机程序被cpu执行时,执行本发明实施例公开的方法中限定的上述功能。

基于上述目的,本发明的实施例的第二个方面,提出了一种硬盘资源动态分配的设备,如图2所示,设备200包括:

监控模块,监控模块配置为监控sasexpander背板上各个硬盘的信息,并基于该信息和相应固件中的预设信息判断硬盘上行通道速率是否需要调整;

停用模块,停用模块配置为响应于硬盘上行通道速率需要调整,将sasexpander背板上的预设功能管脚关闭;

选择模块,选择模块配置为在sasexpander背板上选择相应的固件进行烧录;

启用模块,启用模块配置为响应于烧录完成,将sasexpander背板上的预设功能管脚开启。

在本发明的一个优选实施例中,监控模块还配置为:

监控每个硬盘的实时读写速率,并计算每个硬盘的实时读写速率比;

将每个硬盘的实时读写速率比分别与已刷入的固件设定的比例进行比较;

响应于每个硬盘的实时读写速率比均与已刷入的固件设定的比例一致,判断硬盘上行通道速率不需要调整。

在本发明的一个优选实施例中,还包括判断模块,判断模块配置为:

响应于每个硬盘的实时读写速率比中的任意一个与已刷入的固件设定的比例不一致,判断硬盘上行通道速率需要调整。

在本发明的一个优选实施例中,还包括存储模块,存储模块配置为:

将每个硬盘上行通道带宽分配不等的固件保存在sasexpander背板上的闪存中。

在本发明的一个优选实施例中,选择模块配置为:

在sasexpander背板上的闪存中选择与各个硬盘数据传输速率比一致的固件进行烧录。

上述实施例,特别是任何“优选”实施例是实现的可能示例,并且仅为了清楚地理解本发明的原理而提出。可以在不脱离本文所描述的技术的精神和原理的情况下对上述实施例进行许多变化和修改。所有修改旨在被包括在本公开的范围内并且由所附权利要求保护。

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