一种双控制器的iSCSI数据存储系统的制作方法

文档序号:18648485发布日期:2019-09-12 09:11阅读:428来源:国知局
一种双控制器的iSCSI数据存储系统的制作方法

本实用新型涉及存储技术领域,具体涉及一种双控制器的iSCSI数据存储系统。



背景技术:

随着移动互联网及云计算技术的快速发展和推动,数据是企业、生产、经营、战略等几乎所有的经营活动所依赖的,不可或缺的信息,因此数据的完整性和安全性显得尤为重要;传统的存储控制器只是实现了单一的控制器,无法避免控制器的宕机和意外发生,为充分保护数据,实现数据的多一重保护功能,业界出现了双控甚至多控制器,这样会造成存储系统在成本和维护上的困难;同时单一控制器的基于iSCSI的数据传输过程中,前端链路和后端链路都有可能由于硬件故障或操作故障导致数据丢失或损坏为用户带来不可限量的损失。



技术实现要素:

针对现有技术中存在的问题,本实用新型的目的在于提供一种双控制器的iSCSI数据存储系统。

本实用新型解决其技术问题所采用的技术方案是:一种双控制器的iSCSI数据存储系统,包括硬件平台和软件平台,所述硬件平台包括两个主控制器、SAS硬盘、电源和背板,主控制器由SAS控制器组成,两个主控制器的SAS控制器通过背板连接到同一块SAS硬盘,同时两个控制器之间搭建基于千兆网的心跳互联和基于万兆网的镜像通道;软件平台包括linux文件系统、SCST、MDADM、多路径软件。

具体的是,所述主控制器之间通过2路万兆网缓存镜像同步,通过2路千兆网冗余心跳,每个主控制器同时对外提供2路万兆和千兆存储网络接口。

具体的是,所述主控制器根据SAS控制器支持的SAS信号数量,对外支持多组硬盘,同时电源具有双冗余功能。

具体的是,所述主控制器为X86平台处理器。

一种双控制器的iSCSI数据存储系统,还包括用于实现两个控制器之间的故障检测、信息同步、故障接管和故障恢复的应用层、支撑层、target驱动层、卷管理层和硬件驱动层,所述应用层设有基本存储管理单元;支撑层设有为应用层提供基本服务的服务单元;target驱动层设有用于实现存储设备映射到远程主机的数据传输单元;卷管理层设有为磁盘空间提供的管理单元;驱动层设有对存储外围接口模块的驱动单元。

具体的是,所述基本存储管理单元包括SMI-S规范和web服务软件。

具体的是,所述支撑层包括故障检测、信息同步、故障接管及故障恢复功能。

具体的是,所述管理单元包括动态管理及冗余管理功能。

具体的是,所述服务单元设有缓存管理和缓存同步功能。

具体的是,所述系统还包括文件系统层和块设备层。

本实用新型具有以下有益效果:

1、本实用新型实现的软件全部基于开源软件实现,同时两个主控制器采用完全一样的硬件,基于可视化的操作界面,方便维护者和使用者,同时软件方面无需额外的支出,仅需要专业人员基于开源代码编译安装即可。

2、本实用新型在硬件和软件上都进行了冗余设计,确保数据完整性和可靠性,并且软件都是基于开源软件,降低了用户的成本支出,同时基于Web的人机界面服务可以方便用户操作和维护。

附图说明

图1是双控制器的iSCSI数据存储系统硬件平台架构框图。

图2是双控制器的iSCSI数据存储系统软件系统架构框图。

具体实施方式

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

如图1所示,一种双控制器的iSCSI数据存储系统,包括硬件平台和软件平台,硬件平台包括两个主控制器、SAS硬盘、电源和背板,主控制器由SAS控制器组成,两个主控制器的SAS控制器通过背板连接到同一块SAS硬盘,同时两个控制器之间搭建基于千兆网的心跳互联和基于万兆网的镜像通道;软件平台包括linux文件系统、SCST、MDADM、多路径软件。

主控制器之间通过2路万兆网缓存镜像同步,通过2路千兆网冗余心跳,每个主控制器同时对外提供2路万兆和千兆存储网络接口;主控制器根据SAS控制器支持的SAS信号数量,对外支持多组硬盘,同时电源具有双冗余功能;主控制器为X86平台处理器。

如图2所示,一种双控制器的iSCSI数据存储系统,还包括用于实现两个控制器之间的故障检测、信息同步、故障接管和故障恢复的应用层、支撑层、target驱动层、卷管理层和硬件驱动层,应用层设有基本存储管理单元;支撑层设有为应用层提供基本服务的服务单元;target驱动层设有用于实现存储设备映射到远程主机的数据传输单元;卷管理层设有为磁盘空间提供的管理单元;驱动层设有对存储外围接口模块的驱动单元;基本存储管理单元包括SMI-S规范和web服务软件;支撑层包括故障检测、信息同步、故障接管及故障恢复功能;管理单元包括动态管理及冗余管理功能;服务单元设有缓存管理和缓存同步功能;系统还包括文件系统层和块设备层。

硬件平台是基础,存储软件系统是灵魂。双控软件主要通过Raid功能、故障检测、raid同步、lun同步、映射信息同步、故障接管及故障恢复方案来实现。Raid功能基于开源SCST和MDADM软件实现,可以支持多种Raid模式,如Raid0、1、5、6、10等;故障检测时心跳信号和故障恢复时信息的发送及接收采用同一个socket,通过不同类型数据包进行处理。信息同步通过SMI-S标准化软件提供的通讯机制进行传输;Raid同步主要是A控制器在创建及删除raid时需要同步至B控制器,在A端创建的raid,B端不需重新创建,但需要根据配置文件激活才能使用。在A端删除raid时,B端需要停掉raid并更新配置文件。因此raid创建时,需要传递该raid配置信息,raid删除时需要传递该raid名称以便对端删除;A控制器在创建及删除lun时需要同步至B控制器,在A端创建的lun,B端不需重新创建,但需要重新启动raid才能使用。在A端删除lun时,B端不需要重复删除,但需要删除其映射关系、重启raid进行更新;映射信息同步内容包括主机信息同步、主机组信息同步及lun映射信息同步,如对lun映射、主机、主机组信息的同步,两端控制器做的操作是一样的,因此可以通过SMI-S提供的统一管理接口,往本地及对端控制器各发送相应命令即可;当控制器发生故障时,需要进行故障接管,主要工作是归属权切换。查看lun是否归属本控制器,如果归属本控制器查看是否有session;如果有session,保持不变,如果没有session,询问对端是否有session;如果对端有session,更改本地及对端lun归属权;当重新检测到心跳信号后,进入故障恢复阶段,故障恢复需要同步raid、lun、映射、scst配置信息。其中为保证数据传输的可靠性,在数据包中加入MD5位校验信息;通过MAC互信,检测当前控制器是否需要发送配置文件,是否需要进行配置文件新旧的比较,简化处理流程;通过时间同步保证双控制器配置文件时间的统一,以便进行文件新旧的比较。

数据故障考虑前端和后端,前端主要是控制器故障,后端主要是链路故障,当发生前端故障时,通过控制器之间通过心跳可以感知对端是否故障,如果收不到对端的心跳,则启动故障转移和业务接管工作时限故障切换和接管;如果是后端故障,通过多路径软件实现数据或业务从一条路径切换到另一条路径,也可以实现数据冗余功能,确保数据传输过程和存储过程中数据完整性。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。

尽管已经示出和描述了本实用新型的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本实用新型的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本实用新型的范围由所附权利要求及其等同物限定。

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