储存系统的双控制器的运作方法技术方案

技术编号:7423256 阅读:189 留言:0更新日期:2012-06-09 11:29
本发明专利技术公开了一种储存系统的双控制器的运作方法,适用于具有第一控制器以及第二控制器的储存系统。储存系统的双控制器运作方法包括:将储存系统的储存装置分割成多个储存单元;接收给第一控制器的写入请求,其中写入请求包括写入数据;当第一控制器具有可写入单元表时,依据可写入单元表判断是否存在未使用且属于第一控制器的储存单元;当存在未使用且属于第一控制器的储存单元时,将未使用且属于第一控制器的储存单元作为写入单元,并将写入数据写入写入单元;以及依据写入单元,更新可写入单元表。

【技术实现步骤摘要】

本专利技术关于一种特别是一种能够平衡储存系统的双控制器的负载的运作方法。
技术介绍
为了服务多个客户端(client),例如储存局域网络(Storage Area Network, SAN) 等储存系统常采用双控制器。而传统的储存系统是将所有的储存装置整合建立成一个磁盘阵列(redundant array of inexpensive drives,RAID),并以双控制器中一个固定的控制器启动RAID。也就是说,不管是哪一个控制器接收到读写请求,都需经由此固定的控制器才能存取储存装置。由于所有的读写请求都需通过此固定的控制器因此当整个储存系统的外部压力很大的情况下,此固定的控制器也必须承担大部分的存取压力。也就是说,双控制器的负载并不平衡。为了改善这种现象,后续的储存系统将储存装置分别分配给双控制器,并利用各自的储存装置建立两组RAID。例如由控制器0负责RAID0,由控制器1负责RAID1。且不论是来自于哪一个客户端,只要是对RAIDO的读写请求都由控制器0负责;反之欲对RAIDl 存取则都需经过控制器1。但是这种方法仍存在庞大的转发需求,而须耗费将请求转发时所需的时间以及频宽。举例来说当控制器1收到对RAIDO的写入要求时,需要将此写入要求转发给控制器0 ;且当写入完成后,控制器0需通过控制器1才能回报写入的结果。无疑地,这种转发的机制更是加大的储存系统运作时的负载。且若是客户端仅对其中一个RAID有大量的存取需求时,仍会造成仅有单一控制器过于防路,而双控制器负载不平衡的问题。
技术实现思路
为了解决上述问题,因而提供一种,其适用于具有一第一控制器以及一第二控制器的一储存系统。储存系统的双控制器运作方法包括将储存系统的至少一储存装置分割成多个储存单元;接收给第一控制器的一写入请求,其中写入请求包括一写入数据;当第一控制器具有一可写入单元表(writable unit map)时,依据可写入单元表判断是否存在未使用且属于第一控制器的储存单元;当存在未使用且属于第一控制器的储存单元时,将未使用且属于第一控制器的储存单元作为一写入单元,并将写入数据写入写入单元;以及依据写入单元,更新可写入单元表。根据一实施范例,储存装置是磁盘阵列(redundant array of inexpensive drives,RAID)、逻辑卷管理(logical volume management, LVM)或是硬盘(disk)。另包括当第一控制器不具有可写入单元表时, 执行以下步骤令第一控制器的一储存单元动态分配模块与第二控制器的储存单元动态分配模块协商,并据以产生第一控制器的可写入单元表;以及依据可写入单元表判断是否存在未使用且属于第一控制器的储存单元。其中第一控制器的储存单元动态分配模块以及第二控制器的储存单元动态分配模块,依据所有的储存单元以及第二控制器的可写入单元表产生第一控制器的可写入单元表。储存系统的双控制器运作方法亦包括当不存在未使用且属于第一控制器的储存单元时,执行以下步骤发出一储存单元申请请求给第一控制器的储存单元动态分配模块, 使得第一控制器的储存单元动态分配模块与第二控制器的储存单元动态分配模块协商,并据以分配至少一个未使用的储存单元给第一控制器;依据分配得到的未使用且属于第一控制器的储存单元,更新可写入单元表;将分配得到的未使用且属于第一控制器的储存单元作为写入单元,并将写入数据写入写入单元;以及依据写入单元,更新可写入单元表。其中第一控制器的储存单元动态分配模块以及第二控制器的储存单元动态分配模块,依据所有未使用的储存单元以及第二控制器的可写入单元表分配至少一个未使用的储存单元给第一控制器。而为了读取储存装置中的数据,储存系统的双控制器运作方法另包括接收给第一控制器的一读取请求;以及由与读取请求对应的至少一个储存单元读取一读取数据,以响应读取请求。此外,储存系统的双控制器运作方法也包括接收给第一控制器的一关闭请求; 令第一控制器的储存单元动态分配模块将第一控制器的可写入单元表传送给第二控制器的储存单元动态分配模块;令第二控制器的储存单元动态分配模块将第一控制器的可写入单元表合并至第二控制器的可写入单元表;以及关闭第一控制器。综上所述,第一控制器以及第二控制器分别存取其所负责的储存单元,因此能够很好地平衡对于各个储存装置的访问压力。且藉由双控制器各自的动态分配储存单元,能够灵活地动态调整对于储存单元的存取权,而避免传统上仅有单一控制器过大的情形。附图说明图1为一实施范例的储存系统的示意图;图2为一实施范例的双控制器的示意图;图3为一实施范例的储存系统的双控制器运作方法的流程图。其中,附图标记10客户端12服务器20第一控制器22储存单元动态分配模块24可写入单元表30第二控制器32储存单元动态分配模块34可写入单元表40储存系统42,4 储存装置44,44a,44b,44c,44d 储存单元具体实施例方式以下在实施方式中详细叙述本专利技术的详细特征以及优点,其内容足以使任何本领域的技术人员了解本专利技术的
技术实现思路
并据以实施,且根据本说明书所公开的内容、权利要求及附图,任何本领域的技术人员可轻易地理解本专利技术相关的目的及优点。一种适用于具有双控制器以及至少一储存装置的一储存系统,其中双控制器为一第一控制器以及一第二控制器。储存系统可实作为一储存局域网络(Storage Area Network, SAN),虽以下以SAN为例,但不以此为限。请参照图1以及图2,其分别为一实施范例的储存系统以及双控制器的示意图。至少一客户端(client) 10可通过互联网(Internet,因特网)等广域网络(Wide Area Network, WAN)连接到储存系统(在此以SAN为例)40的至少一服务器12。储存系统 40具有第一控制器20、第二控制器30以及储存装置42。其中第一控制器20与第二控制器 30分别具有一储存单元动态分配模块22与32。客户端10通过因特网以及储存系统40够存取储存装置42,且连接到服务器12的储存装置42可被客户端10视为直接连接。举例来说,对客户端10而言,储存装置42就像是服务器12本身所具有的一颗硬盘。而实际上,月艮务器12通过第一控制器20与第二控制器30以及一内部网络存取储存装置42。其中储存系统40可以是一种以内部网络连接服务器12以及储存装置42的架构, 使得服务器12能够高速地以数据块(block)级别访问储存装置42。服务器12可以例如是电子邮件服务器、数据库、高利用率的文件服务器。而储存装置42可以是单一储存设备,亦可是将多个储存设备连接起来的集合。例如储存装置42可以是磁盘阵列(redundant array of inexpensive drives, RAID)、逻辑卷管理(logical volume management, LVM)或是硬盘 (di sk)。多个储存装置42之间则可用光纤信道(fiber channel)等方式连结在一起。储存系统40中,服务器12通过内部网络连接到储存装置42 ;其中内部网络需能够支持储存系统(SAN) 40所采用的储存通讯协议。例如光纤信道协议(Fibre Channel Protocol,FCP)或是因特网小型计本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种储存系统的双控制器的运作方法,适用于具有一第一控制器以及一第二控制器的一储存系统,其特征在于,该储存系统的双控制器运作方法包括将该储存系统的至少一储存装置分割成多个储存单元; 接收给该第一控制器的一写入请求,其中该写入请求包括一写入数据; 当该第一控制器具有一可写入单元表时,依据该可写入单元表判断是否存在未使用且属于该第一控制器的该储存单元;当存在未使用且属于该第一控制器的该储存单元时,将该未使用且属于该第一控制器的储存单元作为一写入单元,并将该写入数据写入该写入单元;以及依据该写入单元,更新该可写入单元表。2.如权利要求1所述的储存系统的双控制器运作方法,其特征在于,还包括 当该第一控制器不具有该可写入单元表时,执行以下步骤令该第一控制器的一储存单元动态分配模块与该第二控制器的该储存单元动态分配模块协商,并据以产生该第一控制器的该可写入单元表;以及依据该可写入单元表判断是否存在该未使用且属于该第一控制器的储存单元。3.如权利要求2所述的储存系统的双控制器运作方法,其特征在于,该第一控制器的该储存单元动态分配模块以及该第二控制器的该储存单元动态分配模块,依据所有的该些储存单元以及该第二控制器的该可写入单元表产生该第一控制器的该可写入单元表。4.如权利要求1所述的储存系统的双控制器运作方法,其特征在于,还包括 当不存在该未使用且属于该第一控制器的储存单元时,执行以下步...

【专利技术属性】
技术研发人员:刘庆彪陈志丰
申请(专利权)人:英业达股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术