CN113010259A - 两节点超融合一体机的存储方法及设备 - Google Patents

两节点超融合一体机的存储方法及设备 Download PDF

Info

Publication number
CN113010259A
CN113010259A CN201911328002.2A CN201911328002A CN113010259A CN 113010259 A CN113010259 A CN 113010259A CN 201911328002 A CN201911328002 A CN 201911328002A CN 113010259 A CN113010259 A CN 113010259A
Authority
CN
China
Prior art keywords
node
hard disk
local hard
area
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201911328002.2A
Other languages
English (en)
Inventor
王为
张鑫
李慧敏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Zstack Information Technology Co ltd
Original Assignee
Shanghai Zstack Information Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Zstack Information Technology Co ltd filed Critical Shanghai Zstack Information Technology Co ltd
Priority to CN201911328002.2A priority Critical patent/CN113010259A/zh
Publication of CN113010259A publication Critical patent/CN113010259A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment

Abstract

本发明的目的是提供一种两节点超融合一体机的存储方法及设备,本发明通过另外设计activity log是因为每次写入后都更新每个子区域对应的quick‑sync bitmap成本会很高,可以设计数据结构,例如,用1bit表示一个较大的硬盘区域,用来记录正在修改这块较大的区域,当我们不再修改这块区域时(冷却),再将这个较大的区域的各个更小的子区域的修改信息一次性同步到对应quick‑sync bitmap中,这样达到提高效率、性能的效果。

Description

两节点超融合一体机的存储方法及设备
技术领域
本发明涉及计算机领域,尤其涉及一种两节点超融合一体机的存储方法及设备。
背景技术
传统应用往往运行在单台服务器上,当这台服务器失效,例如当这台服务器的CPU、内存、硬盘故障时,存在应用无法对外提供服务的风险。为了解决这种风险,业界提出了不同的解决方案,例如:
通过存储区域网络(SAN)提供共享存储,当一台服务器失效时将应用在其他服务器上启动;
或,通过在三台或以上的服务器上同时运行分布式存储和虚拟化服务,当一天服务器失效时,由另外两台服务器提供分布式存储,同时其中一台提供虚拟化服务启动应用。
传统应用部署方式为单物理机部署,如图1所示,当服务器发生故障时,显然虚拟机也无法继续运行,而且,因为虚拟机的所有数据存储于服务器的本地存储,在该服务器恢复前,显然无法恢复虚拟机,也就无法恢复业务。
因此,业界提出了如图2所示的基于存储区域网络的部署方式,这种方式通过把存储数据存放到支持双活或多活的存储控制器上,再在服务器上安装HBA卡,通过光纤交换机与存储控制器相连接,达到将虚拟机的数据存放于远端高可用存储上,经过网络访问的目的,这样当一台服务器失效时,可以在另一台服务器上启动虚拟机,因为,存储数据存放于远端高可用存储上,所以数据没有丢失,达到了高可用应用的目的。但是,这种方案需要购买光纤交换机、专用的存储控制器等,大大提高了成本。
因此,业界又提出了如图3所示的超融合的方案。超融合方案往往需要三台服务器起步,三台服务器一般通过万兆存储网连接,虚拟机写入数据时通过存储网写入三份,由于不需要购买专用的存储控制器,因此,成本大大降低。当一台服务器失效时,另外两台保存有两份完整的数据,因此,可以继续提供存储服务,而虚拟机则在其中一台启动,继续提供业务。
综上所述,现有的方案具有如下缺点:
1.传统应用部署为单节点部署,存在单点故障。
2.通过存储区域网络具有成本高昂(需要HBA卡、光纤交换机、存储控制器等部件)、部署复杂(正确部署存储区域网络需要专业的技术来调试才能够使得系统运行)、运维难度高(光纤网络与传统网络不同,缺乏运维工具,而且由于系统的复杂度导致有较高的知识门槛)等缺点。
3.通过三节点分式存储超融合降低了部分成本,但依然具有一定门槛(三台起步,万兆交换机),且得盘率低(三台服务器实际上只能使用一台的容量,而且由于存储日志Journal需要占用一定空间,因此最终得盘率在30%左右,且要占用大量内存,一般每块硬盘需要占用1~4GB内存)、性能不理想(数据需要写三份,而且有日志双写的问题,且存在文件系统中间层,写入时存在一定延迟)、系统敏感度高(分式存储一般不使用Raid卡,因此当一台服务器上的一块磁盘出现故障时,需要立即对数据做重平衡已保证数据安全,很容易影响业务性能,此外整个系统最多允许1/3的节点或磁盘失效)和部署运维依然较为困难(分布式存储涉及大量分布式系统的原理和知识,不正确的配置操作很容易造成灾难性的后果)等。
发明内容
本发明的一个目的是提供一种两节点超融合一体机的存储方法及设备。
根据本发明的一个方面,提供了一种两节点超融合一体机的存储方法,该方法包括:
在一个一体机服务器内设置两个独立模块,两个独立模块分别为第一节点和第二节点,将所述第一节点和第二节点之间通过万兆网络线缆连接;
虚拟机向作为主节点的第一节点发出写请求,其中所述写请求包括:待写入的数据和所述待写入的数据在所述第一节点的本地硬盘的写入位置;
所述第一节点将所述写入位置对应的本地硬盘中的区域记录在其本地硬盘的区域活动日志中,其中,所述区域活动日志表示某块区域正在被修改;
所述第一节点将所述写请求发送到其本地硬盘,并同时将所述写请求发送到第二节点的本地硬盘,以将所述待写入的数据分别写入第一节点的本地硬盘的对应区域中和第二节点的本地硬盘的对应区域中,其中,所述第二节点作为从节点;
当第一节点的本地硬盘的对应区域中和第二节点的本地硬盘的对应区域中均结束写入数据时,将所述第一节点的本地硬盘的对应区域和第二节点的本地硬盘的对应区域中的数据写入是否同步的状态记录到各个对应的数据块位图中,其中,所述区域包括多个子区域,每个子区域对应一个数据块位图,各个数据块位图写在所述第一节点的本地硬盘中。
进一步的,上述方法中,在一个一体机服务器内设置两个独立模块作为两个独立的节点,两个节点之间通过万兆网络线缆连接中,
所述第一节点和第二节点的本地硬盘分别采用独立磁盘冗余阵列的结构。
进一步的,上述方法中,将所述第一节点的本地硬盘的对应区域和第二节点的本地硬盘的对应区域中的数据写入是否同步的状态记录到各个对应的数据块位图中之后,还包括:
当作为主节点的第一节点宕机时,原来作为从节点的第二节点成为新的主节点;
当作为从节点的第一节点恢复启动时,所述第一节点根据第二节点的区域活动日志和数据块位图,同时所述第一节点根据第一节点的区域活动日志,将第一节点的本地硬盘的对应区域中与第二节点的本地硬
进一步的,上述方法中,将所述第一节点的本地硬盘的对应区域和第二节点的本地硬盘的对应区域中的数据写入是否同步的状态记录到各个对应的数据块位图中之后,还包括:
当作为从节点的第二节点宕机后恢复启动时,第二节点根据作为主节点的第一节点的区域活动日志和数据块位图,将第二节点的本地硬盘的对应区域中与第一节点的本地硬盘的对应区域中不一致的数据,同步到第二节点的本地硬盘的对应区域中。
根据本发明的另一面,还提供一种两节点超融合一体机的存储设备,其中,该设备包括:
第一节点和第二节点,所述第一节点和第二节点为在一个一体机服务器内设置的两个独立模块,所述第一节点和第二节点之间通过万兆网络线缆连接;
虚拟机,用于向作为主节点的第一节点发出写请求,所述写请求包括待写入的数据和所述待写入的数据在所述第一节点的本地硬盘的写入位置;
其中,所述第一节点将所述写入位置对应的本地硬盘中的区域记录在其本地硬盘的区域活动日志中,其中,所述区域活动日志表示某块区域正在被修改;将所述写请求发送到其本地硬盘,并同时将所述写请求发送到第二节点的本地硬盘,以将所述待写入的数据分别写入第一节点的本地硬盘的对应区域中和第二节点的本地硬盘的对应区域中,其中,所述第二节点作为从节点;当第一节点的本地硬盘的对应区域中和第二节点的本地硬盘的对应区域中均结束写入数据时,将所述第一节点的本地硬盘的对应区域中和第二节点的本地硬盘的对应区域中的数据写入是否同步的状态记录到各个对应的数据块位图中,其中,所述区域包括多个子区域,每个子区域对应一个数据块位图,各个数据块位图写在所述第一节点的本地硬盘上。
进一步的,上述设备中,所述第一节点和第二节点的本地硬盘分别采用独立磁盘冗余阵列的结构。
进一步的,上述设备中,所述第二节点,用于当作为主节点的第一节点宕机时,原来作为从节点的第二节点成为新的主节点;
所述第一节点,还用于当作为从节点的第一节点恢复启动时,根据所述第一节点根据第二节点的区域活动日志和数据块位图,同时所述第一节点根据第一节点的区域活动日志,将第一节点的本地硬盘的对应区域中与第二节点的本地硬盘的对应区域中不一致的数据,同步到第一节点的本地硬盘的对应区域中。
进一步的,上述设备中,所述第二节点,用于当作为从节点的第二节点宕机后恢复启动时,根据作为主节点的第一节点的区域活动日志和数据块位图,将第二节点的本地硬盘的对应区域中与第一节点的本地硬盘的对应区域中不一致的数据,同步到第二节点的本地硬盘的对应区域中。
根据本发明的另一方面,还提供一种计算机可读介质,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行以实现权上述任一项所述的方法。
根据本发明的另一方面,还提供一种用于在网络设备端信息处理的设备,该设备包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发该设备执行上述任一项所述的方法。
与现有技术相比,本发明的两节点超融合一体机的方案备具有下面优点:
一、两节点超融合成本低,无需万兆交换机,占用空间小,从硬件上只有一个机器;
二、部署运维简单,硬件上只有一个体机,没有复杂的网络和结构,无需配置交换机;
三、得盘率相对较高(整体得盘率为37.5%)
四、性能很高,整体基于块设备无需文件系统,数据写两份,而且没有硬盘日志,因此写入很快,读数据时总从本地读取,因此几乎没有任何性能损耗)
五、系统敏感度低,当一块硬盘损坏时,无需迁移应用或重平衡数据,只需在替换硬盘即可,整个系统最多允许1/2的节点或磁盘失效。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1示出现有的单物理机部署的示意图;
图2示出现有的基于存储区域网络的部署方式示意图;
图3示出现有的超融合的方案示意图;
图4示出本发明一实施例的两点超融合一体机的示意图;
图5示出本发明一实施例两节点超融合一体机的存储的示意图。
附图中相同或相似的附图标记代表相同或相似的部件。
具体实施方式
下面结合附图对本发明作进一步详细描述。
在本申请一个典型的配置中,终端、服务网络的设备和可信方均包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
如图4和5所示,本发明提供两节点超融合一体机的存储方法,所述方法包括:
步骤S1,在一个一体机服务器内设置两个独立模块,两个独立模块分别为第一节点和第二节点,将所述第一节点和第二节点之间通过万兆网络线缆连接;
在此,在一个一体机服务器内存在两个独立模块,每个模块中包含独立的CPU、内存、主板、硬盘等,可以看做一个独立的服务器的缩小版,另外,两个模块之间通过万兆网络线缆连接,中间不需要经过交换机,部署简单,并可以降低成本;
步骤S2,虚拟机向作为主节点的第一节点发出写请求,其中,所述写请求包括:待写入的数据和所述待写入的数据在所述第一节点的本地硬盘的写入位置;
在此,每次虚拟机启动时,会分配一个供虚拟机启动的节点,称之为主节点(Primary节点),读、写请求总是Primary节点同步到从节点(Secondary节点);
步骤S3,所述第一节点将所述写入位置对应的本地硬盘中的区域记录在其本地硬盘的区域活动日志(activity log)中,其中,所述区域活动日志表示某块区域正在被修改;
在此,可以分别在第一节点和第二节点的本地硬盘上分别划出一块单独的存储区域,用于存储每个节点对应的区域活动日志(activity log)和数据块位图(quick-syncbitmap);
步骤S4,所述第一节点将所述写请求发送到其本地硬盘,并同时将所述写请求发送到第二节点的本地硬盘,以将所述待写入的数据分别写入第一节点的本地硬盘的对应区域中和第二节点的本地硬盘的对应区域中,其中,所述第二节点作为从节点;
在此,第一节点将写请求发送到其本地硬盘,同时将所述写请求发送到直连的第二节点的本地硬盘;
步骤S5,当第一节点的本地硬盘的对应区域中和第二节点的本地硬盘的对应区域中均结束写入数据时,将所述第一节点的本地硬盘的对应区域和第二节点的本地硬盘的对应区域中的数据写入是否同步的状态记录到各个对应的数据块位图(quick-sync bitmap)中,其中,所述区域包括多个子区域,每个子区域对应一个数据块位图,各个数据块位图写在所述第一节点的本地硬盘中。
在此,区域活动日志(activity log)代表了Primary节点当前正在修改哪个区域的数据,数据块位图(quick-sync bitmap)代表了主从节点两边的子区域数据的一致情况。
当两边的第一节点和第二节点都完成写入时,返回给上层虚拟机写入成功。当虚拟机不在写入这块区域时(数据区域冷却),可以将这个区域的数据写入是否同步的状态记录到各个数据块位图(quick-sync bitmap)中。
实际上,对我们来说最重要的信息是两边数据的同步是否一致的情况,因为,我们需要时刻知道两边数据哪里不一致,哪里是最新的,以帮助我们在意外情况下重新同步数据并避免全盘同步,所以quick-sync bitmap无疑是很重要的。
之所以另外设计activity log是因为每次写入后都更新每个子区域对应的quick-sync bitmap成本会很高,而我们知道写入过程往往具有一定的局部性和热点效应,因此写入过程的各个子区域在短时间内往往集中相近区域或连续区域,因此我们可以设计数据结构,例如,用1bit表示一个较大的硬盘区域,用来记录正在修改这块较大的区域,当我们不再修改这块区域时(冷却),再将这个较大的区域的各个更小的子区域的修改信息一次性同步到对应quick-sync bitmap中,这样达到提高效率、性能的效果。
本发明的两节点超融合一体机的存储方法一实施例中,步骤S1,在一个一体机服务器内设置两个独立模块作为两个独立的节点,两个节点之间通过万兆网络线缆连接中,
所述第一节点和第二节点的本地硬盘分别采用独立磁盘冗余阵列的结构。
在此,每个节点供数据存储的本地硬盘采用一个Raid卡(Redundant Array ofIndependent Disks,独立磁盘冗余阵列)加四个硬盘的方式,通过Raid卡可以保证本地数据的冗余性,避免单盘故障时需要迁移虚拟机。
本发明的两节点超融合一体机的存储方法一实施例中,步骤S5,将所述第一节点的本地硬盘的对应区域和第二节点的本地硬盘的对应区域中的数据写入是否同步的状态记录到各个对应的数据块位图中之后,还包括:
步骤S511,当作为主节点的第一节点宕机时,原来作为从节点的第二节点成为新的主节点;
在此,当Primary节点宕机时,Secondary节点会通过对连接的监控和心跳的检查确认是Primary节点发生了宕机,而不是分区(两边网络中断),此时原来Secondary节点会根据它所同步的虚拟机的数据将虚拟机启动,成为新的Primary节点;
步骤S512,当作为从节点的第一节点恢复启动时,所述第一节点根据第二节点的区域活动日志和数据块位图,同时所述第一节点根据第一节点的区域活动日志,将第一节点的本地硬盘的对应区域中与第二节点的本地硬盘的对应区域中不一致的数据,同步到第一节点的本地硬盘的对应区域中。
在此,这里讨论当正在写入过程中Primary节点宕机的场景:
当原本的Primary节点恢复启动时,原Primary节点不会启动虚拟机,而是根据原本的Secondary节点中的activity log和quick-sync bitmap的信息同步到自己,同时会通过自己的activity log找到自己在宕机前是否修改了本地数据但没有同步到对端原本的Secondary节点,综合下来就是两边有可能不一致的部分,只需要同步这一部分即可。避免了全盘同步。
本发明的两节点超融合一体机的存储方法一实施例中,步骤S5,将所述第一节点的本地硬盘的对应区域和第二节点的本地硬盘的对应区域中的数据写入是否同步的状态记录到各个对应的数据块位图中之后,还包括:
步骤S521,当作为从节点的第二节点宕机后恢复启动时,第二节点根据作为主节点的第一节点的区域活动日志和数据块位图,将第二节点的本地硬盘中与第一节点的本地硬盘中不一致的数据,同步到第二节点的本地硬盘中。
在此,这里讨论正在写入过程中Secondary节点宕机的场景:
当Secondary节点宕机时,对虚拟机的写入几乎没有感知,写入可以继续,但quick-sync bitmap会记录此时修改的这些区域都是不同步的,当Secondary节点重新上线之后,Secondary节点可以根据Primary节点的activity log和quick-sync bitmap同步相互不一致的区域,从而避免全盘同步,提高效率。
综上所述,两节点超融合一体机的存储方法具有下面优点:
一、两节点超融合成本低,无需万兆交换机,占用空间小,从硬件上只有一个机器;
二、部署运维简单,硬件上只有一个体机,没有复杂的网络和结构,无需配置交换机;
三、得盘率相对较高(整体得盘率为37.5%)
四、性能很高,整体基于块设备无需文件系统,数据写两份,而且没有硬盘日志,因此,写入很快,读数据时总从本地读取,因此几乎没有任何性能损耗)
五、系统敏感度低,当一块硬盘损坏时,无需迁移应用或重平衡数据,只需在替换硬盘即可,整个系统最多允许1/2的节点或磁盘失效。
如图4和5所示,本发明提供两节点超融合一体机的存储设备,所述设备包括:
第一节点和第二节点,所述第一节点和第二节点为在一个一体机服务器内设置的两个独立模块,所述第一节点和第二节点之间通过万兆网络线缆连接;
在此,在一个一体机服务器内存在两个独立模块,每个模块中包含独立的CPU、内存、主板、硬盘等,可以看做一个独立的服务器的缩小版,另外,两个模块之间通过万兆网络线缆连接,中间不需要经过交换机,部署简单,并可以降低成本;
虚拟机,用于向作为主节点的第一节点发出写请求,所述写请求包括待写入的数据和所述待写入的数据在所述第一节点的本地硬盘的写入位置;
在此,每次虚拟机启动时,会分配一个供虚拟机启动的节点,称之为主节点(Primary节点),读、写请求总是Primary节点同步到从节点(Secondary节点);
其中,所述第一节点将所述写入位置对应的本地硬盘中的区域记录在其本地硬盘的区域活动日志(activity log)中,其中,所述区域活动日志表示某块区域正在被修改;将所述写请求发送到其本地硬盘,并同时将所述写请求发送到第二节点的本地硬盘,以将所述待写入的数据分别写入第一节点的本地硬盘的对应区域中和第二节点的本地硬盘的对应区域中,其中,所述第二节点作为从节点;当第一节点的本地硬盘的对应区域中和第二节点的本地硬盘的对应区域均结束写入数据时,将所述第一节点的本地硬盘的对应区域和第二节点的本地硬盘的对应区域中的数据写入是否同步的状态记录到各个对应的数据块位图(quick-sync bitmap)中,其中,所述区域包括多个子区域,每个子区域对应一个数据块位图,各个数据块位图写在所述第一节点的本地硬盘上。
在此,可以分别在第一节点和第二节点的本地硬盘上分别划出一块单独的存储区域,用于存储每个节点对应的区域活动日志(activity log)和数据块位图(quick-syncbitmap);
第一节点将写请求发送到其本地硬盘,同时将所述写请求发送到直连的第二节点的本地硬盘;
区域活动日志(activity log)代表了Primary节点当前正在修改哪个区域的数据,数据块位图(quick-sync bitmap)代表了主从节点两边的子区域数据的一致情况。
当两边的第一节点和第二节点都完成写入时,返回给上层虚拟机写入成功。当虚拟机不在写入这块区域时(数据区域冷却),可以将这个区域的数据写入是否同步的状态记录到各个数据块位图(quick-sync bitmap)中。
实际上,对我们来说最重要的信息是两边数据的同步是否一致的情况,因为,我们需要时刻知道两边数据哪里不一致,哪里是最新的,以帮助我们在意外情况下重新同步数据并避免全盘同步,所以quick-sync bitmap无疑是很重要的。
之所以另外设计activity log是因为每次写入后都更新每个子区域对应的quick-sync bitmap成本会很高,而我们知道写入过程往往具有一定的局部性和热点效应,因此写入过程的各个子区域在短时间内往往集中相近区域或连续区域,因此我们可以设计数据结构,例如,用1bit表示一个较大的硬盘区域,用来记录正在修改这块较大的区域,当我们不再修改这块区域时(冷却),再将这个较大的区域的各个更小的子区域的修改信息一次性同步到对应quick-sync bitmap中,这样达到提高效率、性能的效果。
本发明的两节点超融合一体机的存储设备一实施例中,所述第一节点和第二节点的本地硬盘分别采用独立磁盘冗余阵列的结构。
在此,每个节点供数据存储的本地硬盘采用一个Raid卡(Redundant Array ofIndependent Disks,独立磁盘冗余阵列)加四个硬盘的方式,通过Raid卡可以保证本地数据的冗余性,避免单盘故障时需要迁移虚拟机。
本发明的两节点超融合一体机的存储设备一实施例中,
所述第二节点,用于当作为主节点的第一节点宕机时,原来作为从节点的第二节点成为新的主节点;
在此,当Primary节点宕机时,Secondary节点会通过对连接的监控和心跳的检查确认是Primary节点发生了宕机,而不是分区(两边网络中断),此时原来Secondary节点会根据它所同步的虚拟机的数据将虚拟机启动,成为新的Primary节点;
所述第一节点,还用于当作为从节点的第一节点恢复启动时,根据所述第一节点根据第二节点的区域活动日志和数据块位图,同时所述第一节点根据第一节点的区域活动日志,将第一节点的本地硬盘的对应区域中与第二节点的本地硬盘的对应区域中不一致的数据,同步到第一节点的本地硬盘的对应区域中。
在此,这里讨论当正在写入过程中Primary节点宕机的场景:
当原本的Primary节点恢复启动时,原Primary节点不会启动虚拟机,而是根据原本的Secondary节点中的activity log和quick-sync bitmap的信息同步到自己,同时会通过自己的activity log找到自己在宕机前是否修改了本地数据但没有同步到对端原本的Secondary节点,综合下来就是两边有可能不一致的部分,只需要同步这一部分即可。避免了全盘同步。
本发明的两节点超融合一体机的存储设备一实施例中,所述第二节点,用于作为从节点的第二节点宕机后恢复启动时,根据作为主节点的第一节点的区域活动日志和数据块位图,将第二节点的本地硬盘的对应区域中与第一节点的本地硬盘的对应区域中不一致的数据,同步到第二节点的本地硬盘的对应区域中。
在此,这里讨论正在写入过程中Secondary节点宕机的场景:
当Secondary节点宕机时,对虚拟机的写入几乎没有感知,写入可以继续,但quick-sync bitmap会记录此时修改的这些区域都是不同步的,当Secondary节点重新上线之后,Secondary节点可以根据Primary节点的activity log和quick-sync bitmap同步相互不一致的区域,从而避免全盘同步,提高效率。
综上所述,两节点超融合一体机的存储设备具有下面优点:
一、两节点超融合成本低,无需万兆交换机,占用空间小,从硬件上只有一个机器;
二、部署运维简单,硬件上只有一个体机,没有复杂的网络和结构,无需配置交换机;
三、得盘率相对较高(整体得盘率为37.5%)
四、性能很高,整体基于块设备无需文件系统,数据写两份,而且没有硬盘日志,因此写入很快,读数据时总从本地读取,因此几乎没有任何性能损耗)
五、系统敏感度低,当一块硬盘损坏时,无需迁移应用或重平衡数据,只需在替换硬盘即可,整个系统最多允许1/2的节点或磁盘失效。
根据本发明的另一方面,还提供一种计算机可读介质,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行以实现权上述任一项所述的方法。
根据本发明的另一方面,还提供一种用于在网络设备端信息处理的设备,该设备包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发该设备执行上述任一项所述的方法。
本发明的各设备和存储介质实施例的详细内容,具体可参见各方法实施例的对应部分,在此,不再赘述。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
需要注意的是,本发明可在软件和/或软件与硬件的组合体中被实施,例如,可采用专用集成电路(ASIC)、通用目的计算机或任何其他类似硬件设备来实现。在一个实施例中,本发明的软件程序可以通过处理器执行以实现上文所述步骤或功能。同样地,本发明的软件程序(包括相关的数据结构)可以被存储到计算机可读记录介质中,例如,RAM存储器,磁或光驱动器或软磁盘及类似设备。另外,本发明的一些步骤或功能可采用硬件来实现,例如,作为与处理器配合从而执行各个步骤或功能的电路。
另外,本发明的一部分可被应用为计算机程序产品,例如计算机程序指令,当其被计算机执行时,通过该计算机的操作,可以调用或提供根据本发明的方法和/或技术方案。而调用本发明的方法的程序指令,可能被存储在固定的或可移动的记录介质中,和/或通过广播或其他信号承载媒体中的数据流而被传输,和/或被存储在根据所述程序指令运行的计算机设备的工作存储器中。在此,根据本发明的一个实施例包括一个装置,该装置包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发该装置运行基于前述根据本发明的多个实施例的方法和/或技术方案。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。

Claims (10)

1.一种两节点超融合一体机的存储方法,其中,该方法包括:
在一个一体机服务器内设置两个独立模块,两个独立模块分别为第一节点和第二节点,将所述第一节点和第二节点之间通过万兆网络线缆连接;
虚拟机向作为主节点的第一节点发出写请求,其中所述写请求包括:待写入的数据和所述待写入的数据在所述第一节点的本地硬盘的写入位置;
所述第一节点将所述写入位置对应的本地硬盘中的区域记录在其本地硬盘的区域活动日志中,其中,所述区域活动日志表示某块区域正在被修改;
所述第一节点将所述写请求发送到其本地硬盘,并同时将所述写请求发送到第二节点的本地硬盘,以将所述待写入的数据分别写入第一节点的本地硬盘的对应区域中和第二节点的本地硬盘的对应区域中,其中,所述第二节点作为从节点;
当第一节点的本地硬盘的对应区域中和第二节点的本地硬盘的对应区域中均结束写入数据时,将所述第一节点的本地硬盘的对应区域和第二节点的本地硬盘的对应区域中的数据写入是否同步的状态记录到各个对应的数据块位图中,其中,所述区域包括多个子区域,每个子区域对应一个数据块位图,各个数据块位图写在所述第一节点的本地硬盘中。
2.根据权利要求1所述的方法,其中,在一个一体机服务器内设置两个独立模块作为两个独立的节点,两个节点之间通过万兆网络线缆连接中,
所述第一节点和第二节点的本地硬盘分别采用独立磁盘冗余阵列的结构。
3.根据权利要求1所述的方法,其中,将所述第一节点的本地硬盘的对应区域和第二节点的本地硬盘的对应区域中的数据写入是否同步的状态记录到各个对应的数据块位图中之后,还包括:
当作为主节点的第一节点宕机时,原来作为从节点的第二节点成为新的主节点;
当作为从节点的第一节点恢复启动时,所述第一节点根据第二节点的区域活动日志和数据块位图,同时所述第一节点根据第一节点的区域活动日志,将第一节点的本地硬盘的对应区域中与第二节点的本地硬盘的对应区域中不一致的数据,同步到第一节点的本地硬盘的对应区域中。
4.根据权利要求1所述的方法,其中,将所述第一节点的本地硬盘的对应区域和第二节点的本地硬盘的对应区域中的数据写入是否同步的状态记录到各个对应的数据块位图中之后,还包括:
当作为从节点的第二节点宕机后恢复启动时,第二节点根据作为主节点的第一节点的区域活动日志和数据块位图,将第二节点的本地硬盘的对应区域中与第一节点的本地硬盘的对应区域中不一致的数据,同步到第二节点的本地硬盘的对应区域中。
5.一种两节点超融合一体机的存储设备,其中,该设备包括:
第一节点和第二节点,所述第一节点和第二节点为在一个一体机服务器内设置的两个独立模块,所述第一节点和第二节点之间通过万兆网络线缆连接;
虚拟机,用于向作为主节点的第一节点发出写请求,所述写请求包括待写入的数据和所述待写入的数据在所述第一节点的本地硬盘的写入位置;
其中,所述第一节点将所述写入位置对应的本地硬盘中的区域记录在其本地硬盘的区域活动日志中,其中,所述区域活动日志表示某块区域正在被修改;将所述写请求发送到其本地硬盘,并同时将所述写请求发送到第二节点的本地硬盘,以将所述待写入的数据分别写入第一节点的本地硬盘的对应区域中和第二节点的本地硬盘的对应区域中,其中,所述第二节点作为从节点;当第一节点的本地硬盘的对应区域中和第二节点的本地硬盘的对应区域中均结束写入数据时,将所述第一节点的本地硬盘的对应区域中和第二节点的本地硬盘的对应区域中的数据写入是否同步的状态记录到各个对应的数据块位图中,其中,所述区域包括多个子区域,每个子区域对应一个数据块位图,各个数据块位图写在所述第一节点的本地硬盘上。
6.根据权利要求5所述的设备,其中,所述第一节点和第二节点的本地硬盘分别采用独立磁盘冗余阵列的结构。
7.根据权利要求5所述的设备,其中,所述第二节点,用于当作为主节点的第一节点宕机时,原来作为从节点的第二节点成为新的主节点;
所述第一节点,还用于当作为从节点的第一节点恢复启动时,根据所述第一节点根据第二节点的区域活动日志和数据块位图,同时所述第一节点根据第一节点的区域活动日志,将第一节点的本地硬盘的对应区域中与第二节点的本地硬盘的对应区域中不一致的数据,同步到第一节点的本地硬盘的对应区域中。
8.根据权利要求5所述的设备,其中,所述第二节点,用于当作为从节点的第二节点宕机后恢复启动时,根据作为主节点的第一节点的区域活动日志和数据块位图,将第二节点的本地硬盘的对应区域中与第一节点的本地硬盘的对应区域中不一致的数据,同步到第二节点的本地硬盘的对应区域中。
9.一种计算机可读介质,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行以实现权利要求1至4中任一项所述的方法。
10.一种用于在网络设备端信息处理的设备,该设备包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发该设备执行权利要求1至4中任一项所述的方法。
CN201911328002.2A 2019-12-20 2019-12-20 两节点超融合一体机的存储方法及设备 Pending CN113010259A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911328002.2A CN113010259A (zh) 2019-12-20 2019-12-20 两节点超融合一体机的存储方法及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911328002.2A CN113010259A (zh) 2019-12-20 2019-12-20 两节点超融合一体机的存储方法及设备

Publications (1)

Publication Number Publication Date
CN113010259A true CN113010259A (zh) 2021-06-22

Family

ID=76381754

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911328002.2A Pending CN113010259A (zh) 2019-12-20 2019-12-20 两节点超融合一体机的存储方法及设备

Country Status (1)

Country Link
CN (1) CN113010259A (zh)

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101067796A (zh) * 2007-06-07 2007-11-07 华为技术有限公司 镜像恢复方法、存储设备及网络系统
CN103902349A (zh) * 2012-12-27 2014-07-02 中国移动通信集团江西有限公司 一种虚拟化平台存储管理服务器及其管理方法
CN104168323A (zh) * 2013-08-26 2014-11-26 天津书生投资有限公司 一种云服务系统及方法
CN104615504A (zh) * 2015-02-06 2015-05-13 浪潮(北京)电子信息产业有限公司 一种实现数据保护的方法及装置
CN104699566A (zh) * 2013-12-16 2015-06-10 杭州海康威视数字技术股份有限公司 基于云存储的数据冗余备份方法、系统及存储节点服务器
CN105739924A (zh) * 2016-01-29 2016-07-06 华为技术有限公司 基于缓存集群的缓存方法和系统
CN106445730A (zh) * 2016-07-22 2017-02-22 平安科技(深圳)有限公司 一种提高虚拟机性能的方法和终端
CN107220104A (zh) * 2017-05-27 2017-09-29 郑州云海信息技术有限公司 一种虚拟机备灾方法和装置
CN108496153A (zh) * 2015-11-27 2018-09-04 Netapp股份有限公司 同步复制关系的非破坏性基线和再同步
CN109254873A (zh) * 2018-08-15 2019-01-22 华为技术有限公司 数据备份方法、相关装置及系统
CN109669929A (zh) * 2018-12-14 2019-04-23 江苏瑞中数据股份有限公司 基于分布式并行数据库的实时数据存储方法和系统

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101067796A (zh) * 2007-06-07 2007-11-07 华为技术有限公司 镜像恢复方法、存储设备及网络系统
CN103902349A (zh) * 2012-12-27 2014-07-02 中国移动通信集团江西有限公司 一种虚拟化平台存储管理服务器及其管理方法
CN104168323A (zh) * 2013-08-26 2014-11-26 天津书生投资有限公司 一种云服务系统及方法
CN104699566A (zh) * 2013-12-16 2015-06-10 杭州海康威视数字技术股份有限公司 基于云存储的数据冗余备份方法、系统及存储节点服务器
CN104615504A (zh) * 2015-02-06 2015-05-13 浪潮(北京)电子信息产业有限公司 一种实现数据保护的方法及装置
CN108496153A (zh) * 2015-11-27 2018-09-04 Netapp股份有限公司 同步复制关系的非破坏性基线和再同步
CN105739924A (zh) * 2016-01-29 2016-07-06 华为技术有限公司 基于缓存集群的缓存方法和系统
CN106445730A (zh) * 2016-07-22 2017-02-22 平安科技(深圳)有限公司 一种提高虚拟机性能的方法和终端
CN107220104A (zh) * 2017-05-27 2017-09-29 郑州云海信息技术有限公司 一种虚拟机备灾方法和装置
CN109254873A (zh) * 2018-08-15 2019-01-22 华为技术有限公司 数据备份方法、相关装置及系统
CN109669929A (zh) * 2018-12-14 2019-04-23 江苏瑞中数据股份有限公司 基于分布式并行数据库的实时数据存储方法和系统

Similar Documents

Publication Publication Date Title
US9483366B2 (en) Bitmap selection for remote copying of updates
JP4405509B2 (ja) データ管理方法、システム、およびプログラム(リモート記憶位置にフェイルオーバを行うための方法、システム、およびプログラム)
US8498967B1 (en) Two-node high availability cluster storage solution using an intelligent initiator to avoid split brain syndrome
KR100233179B1 (ko) 데이터 저장 시스템 및 머신 수행 방법
US5734818A (en) Forming consistency groups using self-describing record sets for remote data duplexing
US5615329A (en) Remote data duplexing
US5504861A (en) Remote data duplexing
CN100524235C (zh) 存储网络中的恢复操作
CN108628717A (zh) 一种数据库系统及监控方法
CN103516736A (zh) 分布式缓存系统的数据恢复方法及装置
US7386664B1 (en) Method and system for mirror storage element resynchronization in a storage virtualization device
US9798615B2 (en) System and method for providing a RAID plus copy model for a storage network
US7412577B2 (en) Shared data mirroring apparatus, method, and system
CN108595287B (zh) 基于纠删码的数据截断方法及装置
US7707372B1 (en) Updating a change track map based on a mirror recovery map
US7996707B2 (en) Method to recover from ungrouped logical path failures
US20050198411A1 (en) Commingled write cache in dual input/output adapter
CN116204137B (zh) 基于dpu的分布式存储系统、控制方法、装置及设备
CN113535665A (zh) 一种主数据库与备数据库之间同步日志文件的方法及装置
CN113010259A (zh) 两节点超融合一体机的存储方法及设备
WO2022033269A1 (zh) 数据处理的方法、设备及系统
CN105871987A (zh) 数据写入的高可用系统及方法
CN109582497A (zh) 一种基于动态数据增量快速应急启动方法
JP5640480B2 (ja) データ管理プログラム、ストレージシステム、およびデータ管理方法
US20210240351A1 (en) Remote copy system and remote copy management method

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20210622

RJ01 Rejection of invention patent application after publication