CN114741242A - 磁盘检测方法以及装置 - Google Patents
磁盘检测方法以及装置 Download PDFInfo
- Publication number
- CN114741242A CN114741242A CN202210320055.5A CN202210320055A CN114741242A CN 114741242 A CN114741242 A CN 114741242A CN 202210320055 A CN202210320055 A CN 202210320055A CN 114741242 A CN114741242 A CN 114741242A
- Authority
- CN
- China
- Prior art keywords
- disk
- information
- storage system
- distributed storage
- change
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2205—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
- G06F11/2221—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test input/output devices or peripheral units
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2273—Test methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0674—Disk device
- G06F3/0676—Magnetic disk device
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Computer Security & Cryptography (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本说明书实施例提供磁盘检测方法以及装置,其中所述磁盘检测方法包括:响应于磁盘更新指令在分布式存储系统中确定待更新磁盘集合;在所述待更新磁盘集合中选择目标磁盘,并确定所述目标磁盘的磁盘信息;在检测到所述分布式存储系统对应的磁盘变更信息的情况下,将所述磁盘变更信息与所述磁盘信息进行比对,并根据比对结果对磁盘维护信息进行状态更新;基于所述磁盘变更信息对所述分布式存储系统进行运行检测,并根据运行检测结果对磁盘维护信息进行数据更新,能够及时发现磁盘更换出现拔插错误,并将插拔错误产生的影响范围降低,提升了硬盘维护的效率,在磁盘插拔错误时可以快速给出提示,提供稳定的存储服务,进而保证了数据的安全性。
Description
技术领域
本说明书实施例涉及数据存储技术领域,特别涉及磁盘检测方法以及装置。
背景技术
随着互联网技术的发展,服务器集群可以提供安全可靠的弹性计算服务,并且随着数字化进程的深入,使用服务器集群为用户群体提供计算服务支持变得愈发普遍;现有技术中,在服务器集群的维护过程中,针对存储硬件的变更,为了避免变更过程耗费过多时间,往往采用热插拔的技术手段;然而,在对存储硬件进行热插拔出现插拔错误的情况时,由于此时服务器依旧在正常工作,插拔错误的存储硬件中存储的数据可能会被调用、覆盖或删除,造成数据混淆与丢失等问题,无法提供稳定的存储服务,也无法保证数据安全,因此,亟待一磁盘检测方法解决以上问题。
发明内容
有鉴于此,本说明书实施例提供了一种磁盘检测方法。本说明书一个或者多个实施例同时涉及一种磁盘检测装置,一种计算设备,一种计算机可读存储介质以及一种计算机程序,以解决现有技术中存在的技术缺陷。
根据本说明书实施例的第一方面,提供了一种磁盘检测方法,包括:
响应于磁盘更新指令在分布式存储系统中确定待更新磁盘集合;
在所述待更新磁盘集合中选择目标磁盘,并确定所述目标磁盘的磁盘信息;
在检测到所述分布式存储系统对应的磁盘变更信息的情况下,将所述磁盘变更信息与所述磁盘信息进行比对,并根据比对结果对磁盘维护信息进行状态更新;
基于所述磁盘变更信息对所述分布式存储系统进行运行检测,并根据运行检测结果对磁盘维护信息进行数据更新。
根据本说明书实施例的第二方面,提供了一种磁盘检测装置,包括:
响应模块,被配置为响应于磁盘更新指令在分布式存储系统中确定待更新磁盘集合;
选择模块,被配置为在所述待更新磁盘集合中选择目标磁盘,并确定所述目标磁盘的磁盘信息;
比对模块,被配置为在检测到所述分布式存储系统对应的磁盘变更信息的情况下,将所述磁盘变更信息与所述磁盘信息进行比对,并根据比对结果对磁盘维护信息进行状态更新;
检测模块,被配置为基于所述磁盘变更信息对所述分布式存储系统进行运行检测,并根据运行检测结果对磁盘维护信息进行数据更新。
根据本说明书实施例的第三方面,提供了一种计算设备,包括:
存储器和处理器;
所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令:
响应于磁盘更新指令在分布式存储系统中确定待更新磁盘集合;
在所述待更新磁盘集合中选择目标磁盘,并确定所述目标磁盘的磁盘信息;
在检测到所述分布式存储系统对应的磁盘变更信息的情况下,将所述磁盘变更信息与所述磁盘信息进行比对,并根据比对结果对磁盘维护信息进行状态更新;
基于所述磁盘变更信息对所述分布式存储系统进行运行检测,并根据运行检测结果对磁盘维护信息进行数据更新。
根据本说明书实施例的第四方面,提供了一种计算机可读存储介质,其存储有计算机可执行指令,该指令被处理器执行时实现任意一项所述磁盘检测方法的步骤。
根据本说明书实施例的第五方面,提供了一种计算机程序,其中,当所述计算机程序在计算机中执行时,令计算机执行上述磁盘检测方法的步骤。
本说明书一个实施例实现了根据磁盘更新指令去确定需要进行更新的磁盘的集合,选择集合中的一个磁盘作为目标磁盘,确定目标磁盘的磁盘信息,之后在检测到分布式存储系统对应的磁盘变更信息的情况下,将磁盘变更信息与目标磁盘的磁盘信息进行对比,根据对比结果更新磁盘维护信息,之后对分布式存储系统进行运行检测,根据检测结果再次对磁盘维护信息进行更新,通过这种方法能够及时发现磁盘更换出现拔插错误,并将插拔错误产生的影响范围降低,提升了硬盘维护的效率,在磁盘插拔错误时可以快速给出提示,提供稳定的存储服务,进而保证了数据的安全性。
附图说明
图1是本说明书一个实施例提供的一种磁盘检测方法的流程图;
图2是本说明书一个实施例提供的一种磁盘检测方法中的故障感知流程图;
图3是本说明书一个实施例提供的一种磁盘检测方法中的角色确认流程图;
图4是本说明书一个实施例提供的一种磁盘检测方法的处理过程流程图;
图5是本说明书一个实施例提供的一种磁盘检测方法的信息交互示意图;
图6是本说明书一个实施例提供的一种磁盘检测装置的结构示意图;
图7是本说明书一个实施例提供的一种计算设备的结构框图。
具体实施方式
在下面的描述中阐述了很多具体细节以便于充分理解本说明书。但是本说明书能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本说明书内涵的情况下做类似推广,因此本说明书不受下面公开的具体实施的限制。
在本说明书一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本说明书一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本说明书一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
首先,对本说明书一个或多个实施例涉及的名词术语进行解释。
混合云:是指一种由内部基础架构、私有云服务和公有云组成,各平台之间按照编排运行的混合式计算、存储和服务环境。将公有云和私有云进行混合和匹配,以获得良好效果,这种个性化的解决方案,达到了既省钱又安全的目的。
热插拔:就是计算机允许用户在不切断电源、不关闭系统的情况下即时接入和取出设备,从而增加计算机扩展外设的灵活性。在本方案中,磁盘热拔插即指人工或者机械在计算机运行状态下,将计算机上的磁盘从服务器中拔出,同时使用其他磁盘插入,从而完成替换的过程。
分布式存储系统:是将数据分散存储在多台独立的设备上。传统的网络存储系统采用集中的存储服务器存放所有数据,存储服务器成为系统性能的瓶颈,也是可靠性和安全性的焦点,不能满足大规模存储应用的需要。分布式网络存储系统采用可扩展的系统结构,利用多台存储服务器分担存储负荷,利用位置服务器定位存储信息,它不但提高了系统的可靠性、可用性和存取效率,还易于扩展。
在本说明书中,提供了一种磁盘检测方法,本说明书同时涉及一种磁盘检测装置,一种计算设备,以及一种计算机可读存储介质,在下面的实施例中逐一进行详细说明。
实际应用中,面对服务器集群中的存储硬件更换过程,尤其是硬盘的插拔出现错误的情况,被拔出的硬盘出现错误时,会使得当前正在使用此硬盘空间的用户出现进程错误和数据丢失的情况;对于被插入的硬盘出现错误,由于分布式存储系统开始工作前第一个步骤就是对硬盘进行格式化,这种情况下会清空被插入的硬盘中的数据,从而彻底失去挽回机会,在这种情况下,最为直接的方式就是对服务器集群中的所有存储的数据进行备份,这种情况下就不会出现数据丢失无法找回的情况,但是这对应硬件的开销是绝大多数服务器集群的维护方无法接受的。
本说明书提供的磁盘检测方法,在待更新磁盘集合中选取一个磁盘作为目标磁盘,保证了磁盘进行插拔时,每次只处理一个磁盘,又因为分布式存储系统存在多副本,对于单盘的损坏或者数据丢失可以容忍,这就保证不会因为磁盘插拔错误导致的数据丢失远超分布式存储系统的承受范围,最终引起的数据丢失的不可逆,并且这种方式远远小于将全部数据进行备份的硬件开销,节省存储资源,降低了成本。
图1示出了根据本说明书一个实施例提供的一种磁盘检测方法的流程图,具体包括以下步骤。
步骤S102:响应于磁盘更新指令在分布式存储系统中确定待更新磁盘集合。
其中,磁盘更新指令可以理解为,指示服务端进行磁盘更新的指令,需要说明的是,磁盘更新指令的来源可以是人工录入的,也可以是分布式存储系统自动化上传的,磁盘更新指令的来源由实际使用场景决定,本实施例不进行限定。人工上传磁盘更新指令的情况,可以理解为,用户需要对分布式存储系统中进行磁盘进行更换时,用户使用与分布式存储系统对应的交互界面,录入磁盘更新指令,磁盘更新指令中包含用户需要进行更换的磁盘的相关信息;此外,根据分布式存储系统自动化上传磁盘更新指令的情况,可以理解为,分布式存储系统检测自身的运行情况,在满足预设条件时,如发现磁盘损坏,磁盘存储空间不足等情况时,自动化上传磁盘更新指令。分布式存储系统可以理解为与分布式存储系统相同,但是主要应用于存储数据的功能的系统;待更新磁盘集合,可以理解为由需要进行更新的磁盘所组成的集合。
基于此,通过磁盘更新指令的指示,在分布式存储系统中确定需要被更新的磁盘,这些磁盘共同组成待更新磁盘集合。需要说明的是,磁盘更新指令的获取分为两种不同的方式,其中,分布式存储系统的自动化上传基于分布式存储系统的坏盘管理功能展开。
为了保证分布式存储系统能在第一时间感知坏盘的出现,以及将坏盘上的数据复制转移到其他正常的磁盘上,坏盘管理功能成为了分布式存储系统的基础功能之一;在实际的应用场景中,为了保证数据的安全性,上层应用不会将数据直接写入磁盘中,而是上传至分布式存储系统,之后由分布式存储系统对数据进行写入,所以分布式磁盘系统可以使用绝大部分的磁盘,这就使得分布式存储系统可以监测探针文件对磁盘进行数据写入与数据删除的相关状态,这种检测磁盘的状态的方式就是坏盘管理功能的具体体现。
然而,在实际应用场景中,由于分布式存储系统的坏盘管理功能对磁盘进行检测,是根据监测探针文件在磁盘上的写入读取进行的,这种情况下,若磁盘中存在坏块,但是探针文件没有写到此坏块位置,这就导致了分布式存储系统并不会在这种情况下发出磁盘更新指令,但是相关的维护人员在维护过程中,会发现出现坏块的磁盘的写入删除时长不正常,进而推断出此磁盘需要进行变更,所以在分布式存储系统自动化上传磁盘更新指令之外,还包括人工上传磁盘更新指令。由图2所示的一种磁盘检测方法中的故障感知流程图,其中展示了在分布式存储系统中出现坏盘的情况下,对于坏盘的处理方法,针对分布式存储系统中存在的坏盘,使用自动化上报坏盘以及手动录入坏盘两种方式,之后是对坏盘的检测,通过检测的结果确定处理坏盘问题的方式。
进一步的,在没有对待更新磁盘进行指示的相关信息的情况下,分布式存储系统中无法确定待更新磁盘集合,为了确定待更新磁盘集合,在本实施例中,具体实现方式如下:
接收针对所述分布式存储系统上传的所述磁盘更新指令;解析所述磁盘更新指令,获得至少一个待更新标识;根据所述至少一个待更新标识,在所述分布式存储系统中确定至少一个待更新磁盘,并构建待更新磁盘集合。
其中,待更新标识可以理解为,与需要进行更新的磁盘对应的标识,可以通过此待更新标识确定相关磁盘;待更新磁盘可以理解为,在分布式存储系统中需要进行更新的磁盘。需要说明的是,需要进行更新的情况包括磁盘损坏、存储空间不足等情况,这种情况下需要对磁盘进行拔出,此外还存在需要在空槽位上对新的磁盘进行插入等情况,具体的更新内容由实际使用场景决定,本实施例不进行限定。
基于此,接收用于指示分布式存储系统进行磁盘更新任务的磁盘更新指令,解析磁盘更新指令,得到其中携带的待更新标识,根据待更新标识的指示,在分布式存储系统中查找对应的磁盘,这些被查找到的磁盘就是待处理磁盘,将所有查找到的磁盘进行集合,得到待更新磁盘集合。
举例说明,在公有云场景下,相关机房都会有公有云维护方的专业人员驻守,有一套完善的维修保障流程,能够保障磁盘维修流程中磁盘插拔的正确性。而在私有云与混合云场景下,为了满足不同形式的客户需求,会采用多种不同的运维形式,机房资产管理使用的系统以及维护人员的水平参差不齐,在磁盘热拔插流程中容易发生因为各种失误导致的磁盘拔插错误的情况,典型的场景有,从错误服务器上拔出错误的磁盘,错误磁盘可能正被上层应用调用,导致数据风险;以及将错误的磁盘插入服务器,导致相关磁盘的数据被删除或出现数据混淆影响数据安全。
为了解决上述问题,接收混合云的分布式存储系统上传的磁盘更新指令A,之后对A进行解析,得到3个待更新标识,分别为标识a1、标识a2、标识a3,根据这3个标识,确定分布式存储系统需要进行更新的3个磁盘为磁盘C1、磁盘C2、磁盘C3,根据C1、C2、C3构建待更新磁盘集合。
综上,通过以上方法,可以快捷准确的确定需要被更新的磁盘。保证第一时间展开分布式存储系统中的磁盘更新任务,避免因为处理延误导致的数据安全问题。
步骤S104:在所述待更新磁盘集合中选择目标磁盘,并确定所述目标磁盘的磁盘信息。
具体的,在确定了需要进行处理的磁盘的集合之后,需要在这个集合中选择目标磁盘进行处理。
其中,目标磁盘可以理解为,众多需要被处理的磁盘中,当前时刻将要进行处理的一个磁盘;目标磁盘信息则包含着目标磁盘在被处理之前的相关信息。
基于此,在待更新磁盘集合的众多磁盘中选择其中之一,作为将要进行处理的磁盘,之后确定这个被选择出的磁盘的相关信息;通过每次只对待更新磁盘集合中的一个磁盘进行处理,使得在磁盘处理过程中即便出现问题,也可以将产生的错误约束在这一块磁盘内,又因为分布式存储系统自身的多副本特性,一块磁盘出现错误在分布式存储系统自身能够容忍与补救的范围内,有效保证数据安全性。此外,在确定了当前需要进行处理的目标磁盘之后,还可以将目标磁盘的磁盘信息反馈给分布式存储系统的维护人员的设备上,维护人员依照此信息对分布式存储系统中的目标磁盘进行更新,更新的内容包括自分布式存储系统中拔出目标磁盘,以及将目标磁盘插入至分布式存储系统。
进一步的,在目标磁盘进行变更的过程中,需要获取目标磁盘自身对应的标识、所述位置等信息,保证在处理出现错误的情况下,能够依据这些信息确定错误原因,在本实施例中,具体实现方式如下:
确定所述目标磁盘的标识信息、槽位信息以及挂载点信息;根据所述标识信息、所述槽位信息以及所述挂载点信息确定所述目标磁盘的磁盘信息。
其中,标识信息可以理解为,记录着磁盘唯一对应的识别标识的信息,如磁盘的序列号、ID等;槽位信息可以理解为,存储着磁盘在服务器上的物理位置的信息,如在14号服务器的磁盘插槽的第1行、第1列;挂载点信息可以理解为,对磁盘进行数据写入时,数据写入的位置信息。
基于此,确定目标磁盘唯一对应的标识信息,指示目标磁盘位置的槽位信息,以及对应数据写入位置的挂载点信息,并将标识信息、槽位信息以及挂载点信息结合得到磁盘信息。需要说明的是,在对目标磁盘更新时,需要将目标磁盘拔出的情况下,槽位信息对应的是目标磁盘此时在分布式存储系统的服务器中的具体物理位置,并且其中还可以包括了一个拔出标识,指示需要对目标磁盘进行拔出操作,而在需要将目标磁盘插入的情况下,槽位信息对应的是目标磁盘将要插入分布式存储系统的服务器的具体物理位置,同样的,其中还可以包括一个插入标识,指示需要将目标磁盘进行插入的操作。此外,在分布式存储系统中,如果只是需要在某个空插口中插入一个磁盘,此时不需要限定插入的磁盘具体是哪一个,也不需要限定插入的磁盘的挂载点的情况下,可以将目标磁盘对应的标识信息与挂载点信息设置为预设的形式,用以指示不对目标磁盘限制标识与挂载点。
沿用上例,确定磁盘C1为目标磁盘,之后通过lsblk-nodeps-no serial/dev/sda或者hdparm命令查看C1的磁盘序列号b1“12345”,根据sudo lsscsi命令获取C1的槽位信息b2“14:0:0”,以及确定C1的挂载点信息b3。根据得到的b1、b2、b3确定C1的磁盘信息B。
综上,通过确定目标磁盘的唯一对应标识、位置、挂载点,可以更好的指示维护人员对目标磁盘的插拔。并且磁盘信息还可以作为目标磁盘相关信息的留底,作为维护更新之后的比对凭证,快速的确定目标磁盘插拔是否正确。
步骤S106:在检测到所述分布式存储系统对应的磁盘变更信息的情况下,将所述磁盘变更信息与所述磁盘信息进行比对,并根据比对结果对磁盘维护信息进行状态更新。
具体的,在确定了目标磁盘的磁盘信息,以及对目标磁盘进行变更之后,需要获取变更后的相关信息,来确定变更过程中对目标磁盘进行插拔的正确性。需要说明的是,在确定了目标磁盘的磁盘信息,然后将磁盘信息反馈给维护节点,维护节点对目标磁盘进行相关变更之前,需要目标磁盘上部署的角色对此变更进行确认;因为在分布式存储系统中,系统很难确定一个磁盘中正在被哪些上层应用使用,所以这时需要服务器上的所有角色都调用分布式存储系统的接口,对服务器中的磁盘插拔进行确定,而在角色没有确认的情况下,说明此角色可能还在使用服务器中的磁盘,如果此时对服务器中的磁盘进行插拔,很可能导致角色的任务被迫中断,并出现数据丢失的问题。如图3所示的一种磁盘检测方法中的角色确认流程图,其中展示了服务器上的角色进行确认的流程,包括下线任务开始;服务器上的用户对任务进行确认,其中,将任务发送至分布式存储系统的所有用户,用户根据任务中变更的磁盘与数据影响来对自身对应的数据进行复制与迁移,保证磁盘发生变更的情况下不会影响到角色的数据安全;之后卸载磁盘并将磁盘进行静默,对磁盘进行静默是通过静默带来的缓冲时间,确保磁盘上的数据都未被使用;最后确定需要进行变更的磁盘的工单,此工单中记录着需要进行处理的磁盘。
其中,磁盘变更信息可以理解为,分布式存储系统中的磁盘出现变更时,记录发生的变更的信息;磁盘维护信息可以理解为,指示这分布式存储系统中的磁盘变更与预期的变更之间关系,用于记录此次磁盘维护工作中插拔磁盘是否正确,并在插拔错误时指示维护人员进行后续处理。
基于此,检测到分布式存储系统对应的磁盘变更信息之后,说明分布式存储系统中出现磁盘插拔动作。此时将磁盘变更信息与目标磁盘的磁盘信息进行比对,确定进行了插拔的磁盘是否为目标磁盘,基于比对的结果更新磁盘维护信息。
进一步的,根据磁盘变更之后接收到的磁盘变更信息,以及磁盘变更前的目标磁盘的磁盘信息,需要对二者进行比对才能确定磁盘变更的是否变更正确,在本实施例中,具体实现方式如下:
解析所述磁盘变更信息,获得变更标识信息、变更槽位信息以及变更挂载点信息;将所述变更标识信息与所述标识信息,所述变更槽位信息与所述槽位信息,所述变更挂载点信息与所述挂载点信息分别进行比对。
其中,变更标识信息可以理解为,存储着分布式存储系统中发生变更的磁盘的唯一对应标识的信息;变更槽位信息可以理解为,存储着发生磁盘变更的磁盘的位置的信息,需要说明的是,磁盘变更存在着两种形式,其一是拔出了分布式存储系统中的某磁盘,其二是对分布式存储系统插入某磁盘,在第一种情况下,变更槽位信息中可以包含一个拔出标识,以及拔出的磁盘在拔出前的位置信息,在第二中情况下,变更槽位信息中可以包含一个插入标识,以及插入的磁盘在插入后的位置信息。挂载点信息可以理解为,记录着变更的磁盘的挂载点的信息。
基于此,解析磁盘变更信息,获得分布式存储系统中发生变更的磁盘的唯一对应标识,对应的位置信息,以及写入数据的挂载点信息,将发生变更的磁盘的唯一对应标识与目标磁盘的唯一对应标识进行对比,将发生变更的磁盘的槽位信息与目标磁盘的槽位信息进行对比,比较发生变更的磁盘与目标磁盘是否都是插入、或都是拔出,确定相同之后再对比位置信息是否相同,最后比对变更的磁盘的挂载点与目标磁盘的挂载点是否相同。需要说明的是,在目标磁盘的标识信息与挂载点信息为预设的特定形式时,需要忽略变更的磁盘与目标磁盘之间的标识信息与挂载点信息的比对,或直接将二者的比对结果视为相同。
沿用上例,解析磁盘变更信息D,得到变更标识信息d1,变更槽位信息d2,变更挂载点信息d3,比较c1与d1,c2与d2,c3与d3。
综上,通过这种比对方法,可以检验在分布式存储系统中的变更的磁盘是否为目标磁盘,并且检验是否按照预设的方式进行的变更。通过这样的检验就能保证第一时间获知分布式存储系统中的磁盘发生变更时是否存在错误。
进一步的,在将磁盘变更信息与目标磁盘的磁盘信息进行比对之后,不同的比对结果对应着磁盘变更的不同情况,而不同的磁盘变更情况需要采用不同的方式进行处理,在本实施例中,具体实现方式如下:
判断所述磁盘变更信息与所述磁盘信息是否相同;若是,将所述磁盘变更信息写入所述磁盘维护信息,根据写入结果将所述磁盘维护信息更新为正常状态;若否,确定磁盘异常信息,将所述磁盘异常信息写入所述磁盘维护信息,根据写入结果将所述磁盘维护信息更新为异常状态。
其中,磁盘维护信息可以理解为,记录着磁盘变更结果的信息,可以指示磁盘进行插入或拔出过程中是否出现错误,以及出现的错误时的具体错误类型,用于引导维护人员进行有针对性的维护,磁盘异常信息可以理解为,将磁盘变更信息与磁盘信息进行比对得到的信息。
基于此,判断磁盘变更信息与磁盘信息之后,若二者相同,则说明分布式存储系统中目标磁盘已经进行了对应的变更,这种情况下,将磁盘变更信息写入磁盘维护信息中,用于留下相关变更记录,并将写入完成的磁盘维护信息中的状态标识确定为正常状态;若二者不同,则说明分布式存储系统中目标磁盘没有进行对应的变更,其中包括变更的磁盘并不是目标磁盘,或是目标磁盘进行插入、拔出的位置不相同的情况,在这种情况下,确定磁盘变更信息与磁盘信息之间的不同,作为异常信息,并将异常信息写入磁盘维护信息,将写入完成的磁盘维护信息中的状态标识确定为异常状态,需要说明的是,正常状态与异常状态的区分,可以是在磁盘维护信息的对应字节位置设置不同的预设字节,例如,正常状态下记为“1”,异常状态下记为“0”,或是在预设的位置上插入一个预设的字节,如正常状态下插入字节“000”,异常状态下不插入字节等方法,只要保证可以对正常状态以及异常状态进行区分即可,具体采用的正常状态与异常状态的区分方式由实际使用场景决定,本实施例不进行限定。
沿用上例,判断磁盘信息B与磁盘变更信息D是否相同,在相同的情况下,将B或D写入磁盘维护信息E中,根据写入结果将E更新为正常状态;在不同的情况下,比对B与D之间的不同,确定异常信息F,将F写入E中,根据写入结果将E更新为异常状态。
综上,通过磁盘信息与磁盘变更信息之间的比对结果,对磁盘维护信息进行相应的更新,可以实现不同的磁盘更换场景下采取不同的处理方式,扩展磁盘检测方法的应用范围。
进一步的,在磁盘检测过程中,需要对目标磁盘进行运行检测,而运行检测的所消耗的时间是比较长的,这种等待运行检测的检测结果导致检测的效率降低,为了解决这个问题,在本实施例中,具体实现方式如下:
确定当前检测周期中所述目标磁盘对应的目标集群;在所述待更新磁盘集合中确定与所述目标集群不同的区别集群;在所述区别集群中选择下一检测周期中的目标磁盘,并执行所述确定所述目标磁盘的磁盘信息的步骤。
其中,集群为一组相互独立的,通过高速网络互联的计算机,它们构成了一个组,并以单一系统的模式加以管理,且集群通常分布在一个或者多个机房内,同一个处理事件基本不会由不同集群共同承担,即便共同承担,不同集群内部的数据处理也不会互相影响。
基于此,在目标磁盘进行运行检测之前,确定目标磁盘在分布式网络中对应的集群,之后在待更新磁盘集合中确定与这个集群不同的另外一个磁盘作为新的目标磁盘,之后原来的目标磁盘继续执行运行检测,同时新的目标磁盘开始新一轮的检测任务。
沿用上例,在C1进行运行检测之前,确定C1对应的集群,在B中选择与C1对应的集群不同的集群,在不同的集群中选择一个新的磁盘C2,作为新的目标磁盘,开始新一轮的检测,需要说明的是,选择不同的集群中的磁盘中,选取的方法包括随机选取,按照预设的磁盘槽位号顺序选取等,选择新的目标磁盘所采用的方法由实际应用场景决定,本实施例不进行限定。
步骤S108:基于所述磁盘变更信息对所述分布式存储系统进行运行检测,并根据运行检测结果对磁盘维护信息进行数据更新。
具体的,确定了磁盘维护信息之后,还需要判断分布式存储系统在目标磁盘进行变更之后的运行状况,保证目标磁盘的变更不会导致分布式网络出现运行错误。
其中,运行检测可以理解为,在分布式存储系统在运行状态,动态的对其运行过程进行的检测。
基于此,分布式存储系统在目标磁盘进行变更之后,运行分布式存储系统,之后对运行状态的分布式存储系统进行动态的检测,根据检测的结果对磁盘维护信息进行更新。
对分布式存储系统中的磁盘记性变更,会存在两种状态,一种是将磁盘插入分布式存储系统,另一种是在分布式存储系统中拔出磁盘:
(1)在插入状态下,被插入的磁盘包括两种情况,分别为磁盘中存储着数据信息与磁盘中没有存储数据信息,这两种情况下的检测方式不同,在本实施例中,具体实现方式如下:
在所述磁盘变更信息为磁盘插入信息的情况下,基于所述磁盘插入信息确定插入磁盘;检测所述插入磁盘中包含的存储数据,根据检测结果确定所述插入磁盘的磁盘使用信息;根据所述磁盘使用信息对所述分布式存储系统进行异常检测,获得异常检测信息;根据所述异常检测信息对所述磁盘维护信息进行数据更新。
其中,磁盘插入信息可以理解为,在磁盘变更的具体方式为插入时,此时磁盘对应的磁盘变更信息;插入磁盘可以理解为,磁盘变更过程中,被插入到分布式存储系统中的磁盘;磁盘使用信息可以理解为,插入磁盘被使用的情况,分为被使用过和未被使用过这两种情况,需要说明的是磁盘使用信息中可以包括一个专属标识用于指示插入磁盘是否为空磁盘,也可以记录插入磁盘中的存储空间被占用的内存,磁盘使用信息只需要能够表示出插入磁盘中的存储空间中是否存储着数据即可,磁盘使用信息中具体存储的信息类型由实际使用场景确定,本实施例不进行限定。异常检测信息可以理解为,包含异常检测结果的信息,需要说明的是,异常检测是磁盘进行插入之后,对分布式网络在运行状态下进行的检测,用于检测分布式网络在插入磁盘插入后是否会在运行时出现错误,并依据此对插入磁盘的插入是否正确给出结论。
基于此,在磁盘变更信息为磁盘插入信息的时候,说明变更的磁盘执行的是在分布式存储系统中将磁盘插入;之后通过磁盘插入信息确定插入分布式存储系统的磁盘,检测插入磁盘是否存在存储数据,由此确定插入磁盘此前是否是被使用过的磁盘;之后根据磁盘使用信息的不同,采用对应的异常检测方法进行检测,并根据检测的结果去对磁盘维护信息进行更新。
沿用上例,在B为磁盘插入信息的情况下,之后通过B确定对应的C1为插入磁盘,检测C1中是否存储了数据,得到磁盘使用信息H,再根据H对分布式网络进行对应的检测,根据检测得到的异常检测信息M对磁盘维护信息进行更新。
综上,通过对磁盘是否存储着信息确定磁盘是否曾经使用过,并更具磁盘的使用情况采取对应方式进行检测,可以更有针对性的确定磁盘变更过程是否正确,保证及时发现问题,提升检测效率。
(2)在拔出状态下,要实现对磁盘进行检测,在本实施例中,具体实现方式如下:
在所述磁盘变更信息为磁盘拔出信息的情况下,确定所述磁盘拔出信息对应的拔出磁盘;对不包含拔出磁盘的分布式存储系统进行运行状态检测,根据运行状态检测结果确定异常检测信息;根据所述异常检测信息对所述磁盘维护信息进行数据更新。
其中,拔出磁盘可以理解为,在分布式存储系统中进行磁盘变更时,从分布式存储系统中拔出的磁盘。
基于此,在磁盘变更信息为磁盘拔出信息的情况下,确定磁盘拔出信息对应的磁盘为拔出磁盘,在分布式存储系统中卸载掉拔出磁盘之后,运行分布式存储系统,并检验分布式存储系统运行状态下,系统内的磁盘是否会出现报错情况,在出现了报错情况下,说明拔出分布式存储系统的磁盘对分布式存储系统的运行产生了影响。在这种情况下,根据分布式存储系统运行状态下的检测结果确定异常检测信息,并基于异常检测信息对磁盘维护信息进行更新,指示维护人员接下来对分布式存储系统中的磁盘的维护工作。
沿用上例,在C1是拔出磁盘的情况下,在分布式存储系统将C1拔出后,运行分布式存储系统,此时检验分布式存储系统是否出现报错,若不出现报错,确定异常检测信息为空,在出现报错的情况下,将报错信息写入异常检测信息中,之后异常检测信息对磁盘维护信息进行更新。
综上,由于拔出磁盘已经脱离了分布式存储系统,所以不能直接对其进行检测,但是可以通过分布式存储系统运行之后其中的其他磁盘是否出现问题,来判断拔出磁盘的相关操作是否正确。
进一步的,判断插入磁盘是否是被使用过,在本实施例中,具体实现方式如下:
检测所述插入磁盘的存储空间,判断所述存储空间中是否包括存储数据;若否,将空载磁盘信息作为所述磁盘使用信息;若是,将负载磁盘信息作为所述磁盘使用信息。
其中,空载磁盘信息可以理解为,记录着插入磁盘的存储空间中没有存储数据的信息;对应的,负载磁盘信息可以理解为,记录着插入磁盘的存储空间中存储着数据的信息,需要说明的是,负载磁盘信息中可以只拥有一个专属的标识,用于记录插入磁盘中是否存储着数据,或者是负载磁盘信息中可以记录插入磁盘中存储数据的数据量,又或者是将插入磁盘存储空间中存储的数据进行记录,只需要保证可以通过负载磁盘信息确定插入磁盘中存储着数据即可,其具体存储的内容由实际使用场景决定,本实施例不进行限定。
基于此,检测插入磁盘的存储空间,此时可以通过插入磁盘的挂载点,对插入磁盘的存储空间进行检查,或者通过对应的指令调用磁盘自身记录的内部存储空间的使用情况,在插入磁盘中没有存储数据的情况下,将记录着此结果的空载磁盘信息作为磁盘使用信息,对应的,在插入磁盘中存储了数据的情况下,将记录着此结果的负载磁盘信息作为磁盘使用信息。
沿用上例,检测磁盘C1的存储空间,判断C1中是否存储着数据,在C1中存储着数据的情况下,将负载磁盘信息G1作为磁盘使用信息H,相反的,在C1中没有存储数据的情况下,将空载磁盘信息G2作为磁盘使用信息H。
综上,通过价检测磁盘的存储空间确定磁盘中是否存储着数据,进一步得知磁盘是否被使用过。根据磁盘的使用情况进一步展开后续的检测任务,有针对性的进行检测。
进一步的,对于磁盘没有被使用的情况下,需要选择对应的方式进行后续检测,在本实施例中,具体实现方式如下:
在所述磁盘使用信息为空载磁盘信息的情况下,对所述插入磁盘进行格式化处理;对包含格式化处理后的插入磁盘的分布式存储系统进行运行状态检测,根据运行检测结果确定异常检测信息。
其中,格式化是指对磁盘进行初始化的一种操作,这种操作通常会导致现有的磁盘中所有的文件被清除,需要说明的是,被使用的磁盘,如果其中的信息被全部清除,最终在检测过程中检测到其中没有存储数据的情况下,可以将这个磁盘视作未被使用过;尤其是在磁盘变更的情况下,如果磁盘中没有包括数据,那么这个磁盘就不会产生数据丢失的风险。
基于此,在磁盘使用信息为空载磁盘信息的情况下,将所述插入磁盘进行格式化处理,之后再对运行状态的分布式存储系统进行检测,检测运行状态下分布式存储系统中是否会出现错误的磁盘,根据检测出的结果确定异常检测信息。
沿用上例,在H为G2的情况下,将C1进行格式化处理,运行分布式存储系统,之后检测分布式存储系统中是否有其他磁盘在这个过程中出现了ERROR状态,若是说明C1插入正常,若否则说明C1的插入具有风险,根据这个检测的结果确定信息M。
综上,通过对分布式存储系统在运行状态的检测,可以判断插入磁盘的来源是分布式存储系统的情况下,对插入磁盘进行的拔出操作是否正确,以及是否影响了分部式存储系统的运行。
进一步的,对于磁盘没有被使用的情况下,需要选择对应的方式进行后续检测,在本实施例中,具体实现方式如下:
在所述磁盘使用信息为负载磁盘信息的情况下,查询所述插入磁盘的静默时间;将所述静默时间与预设的时间阈值进行比对,根据时间比对结果确定异常检测信息。
其中,静默时间可以理解为分布式存储系统对磁盘中的数据不进行调用的时间。
基于此,在磁盘使用信息为负载磁盘信息的情况下,查询插入磁盘中的数据最后被调用的时间,得到静默时间,之后将静默时间与预设的时间阈值进行对比,根据比对的结果确定对应的异常检测信息。
综上,通过对插入磁盘的静默时间的查询,确定插入磁盘中存储的数据是否还存在使用价值,无使用价值的数据所在的磁盘往往会拥有很长的静默时间,通过这样的检测保证插入磁盘中的数据是没有使用价值的,是不会被用户进行调用的,所以这种磁盘不会因为误插拔而丢失,保证安全性。
进一步的,判断静默时间与预设的时间阈值之间的大小关系后,还需要根据不同的情况进行相应的检验,在本实施例中,具体实现方式如下:
判断所述静默时间是否大于所述时间阈值;若是,执行对所述插入磁盘进行格式化处理的步骤;若否,根据所述静默时间生成所述异常检测信息。
其中,在静默时间大于预设的时间阈值的情况下,则说明插入磁盘在之前已经被“荒废”很久,其中的数据的存储价值大大降低;而在静默时间小于等于预设的时间阈值的情况下,则说明插入磁盘中的数据在不久前被分布式存储系统调用,插入磁盘中的数据还有较大的概率被上层应用再次使用,这时候就不能将其进行删除。
沿用上例,在H为G1的情况下,查询C1的静默时间t,将t与预设的时间阈值T进行比较,在t>T的情况下,将C1进行格式化步骤,之后检验运行状态下的分布式存储系统中的各个磁盘是否会出现报错;在t<=T的情况下,根据此时的t生成异常存储信息M。
综上,通过静默时间的不同比对结果执行后续不同的检验,有针对性的检验了磁盘变更是否正确,保证信息安全。
通过以上内容可知,对于插入磁盘的检测来说,还可以:
检测磁盘C1的存储空间,判断C1中是否存储着数据,在C1中存储着数据的情况下,将负载磁盘信息G1作为磁盘使用信息H,相反的,在C1中没有存储数据的情况下,将空载磁盘信息G2作为磁盘使用信息H。
在H为G2的情况下,将C1进行格式化处理,运行分布式存储系统,之后检测分布式存储系统中是否有其他磁盘在这个过程中出现了ERROR状态,若是说明C1插入正常,若否则说明C1的插入具有风险,根据这个检测的结果确定信息M。
在H为G1的情况下,查询C1的静默时间t,将t与预设的时间阈值T进行比较,在t>T的情况下,将C1进行格式化步骤,之后检验运行状态下的分布式存储系统中的各个磁盘是否会出现报错;在t<=T的情况下,根据此时的t生成异常存储信息M。
综上,通过以上几个步骤的判断,更加全面的检测了维护人员对于插入磁盘的变更是否正确,为用户提供了一个稳定的存储环境。
本说明书一个实施例实现了根据磁盘更新指令去确定需要进行更新的磁盘的集合,选择集合中的一个磁盘作为目标磁盘,确定目标磁盘的磁盘信息,之后在检测到分布式存储系统对应的磁盘变更信息的情况下,将磁盘变更信息与目标磁盘的磁盘信息进行对比,根据对比结果更新磁盘维护信息,之后对分布式存储系统进行运行检测,根据检测结果再次对磁盘维护信息进行更新,通过这种方法能够及时发现磁盘更换出现拔插错误,并将插拔错误产生的影响范围降低,提升了硬盘维护的效率,在磁盘插拔错误时可以快速给出提示,提供稳定的存储服务,进而保证了数据的安全性。
下述结合附图4,以本说明书提供的磁盘检测方法在机房维护的应用为例,对所述磁盘检测方法进行进一步说明。其中,图4示出了本说明书一个实施例提供的一种磁盘检测方法的处理过程流程图,具体包括以下步骤。
步骤S402:接收针对所述分布式存储系统上传的所述磁盘更新指令。
具体的,某研究机构的计算设备采用了分布式存储系统的架构。并且基于分布式存储系统构建了对应的自动化运维系统对分布式存储系统进行监测与维护,在需要对分布式存储系统对应机房的磁盘进行更新时,自动化运维系统接收到磁盘更新指令。
步骤S404:解析所述磁盘更新指令,获得至少一个待更新标识。
具体的,解析得到的磁盘更新指令,获得磁盘更新指令中携带的待更新标识x1,x2,x3,x4。
步骤S406:根据所述至少一个待更新标识,在所述分布式存储系统中确定至少一个待更新磁盘,并构建待更新磁盘集合。
具体的,根据标识x1,x2,x3,x4确定对应的待更新磁盘为X1,X2,X3,X4,并基于这4个磁盘构建待更新磁盘集合。
步骤S408:在所述待更新磁盘集合中选择目标磁盘。
具体的,自动化运维系统将X1作为目标磁盘。
步骤S410:确定所述目标磁盘的标识信息、槽位信息以及挂载点信息。
具体的,确定X1的标识信息为“000”、槽位信息为“11:11:11-22:22:22”以及挂载点信息,需要说明的是,槽位信息中除了指示目标磁盘的插入分布式存储系统或是自分布式存储系统拔出外,还可以指示目标磁盘自分布式存储系统的一个位置拔出插入另一个位置,如槽位信息指示目标磁盘在分布式存储网络中自A槽位“11:11:11”拔出,插入B槽位“22:22:22”。
步骤S412:根据所述标识信息、所述槽位信息以及所述挂载点信息确定所述目标磁盘的磁盘信息。
步骤S414:解析所述磁盘变更信息,获得变更标识信息、变更槽位信息以及变更挂载点信息。
具体的,将X1的标识信息、槽位信息以及挂载点信息展示给驻场人员,驻场人员根据这些信息对分布式网络中的磁盘进行插拔处理。如图5所示的一种磁盘检测方法的信息交互示意图中的1。
在驻场人员插拔分布式存储系统中的磁盘之后,分布式存储系统会得到被插拔的磁盘对应的磁盘变更信息,解析磁盘变更信息,得到变更的磁盘对应的变更标识信息“000”、变更槽位信息:“11:11:11”以及变更挂载点信息。如图5所示的一种磁盘检测方法的信息交互示意图中的2。
步骤S416:将所述变更标识信息与所述标识信息,所述变更槽位信息与所述槽位信息,所述变更挂载点信息与所述挂载点信息分别进行比对,并根据比对结果对磁盘维护信息进行状态更新。
具体的,比较变更标识信息与标识信息,变更槽位信息与槽位信息以及变更挂载点信息与挂载点信息。将三次比对都相同作为一种情况,其余结果作为另一种情况,对磁盘维护信息进行状态更新,磁盘维护信息在这次更新之后,会显示驻场人员进行磁盘插拔是否与指定的目标磁盘的插拔相同。即显示驻场人员插拔的磁盘是否是将目标磁盘进行的插拔,以及插拔的位置是否正确。如图5所示的一种磁盘检测方法的信息交互示意图中的3、4;其中,通过变更槽位信息与槽位信息之间的比较,实现了3确认老磁盘下线,发现新磁盘,也就是说,通过槽位信息的变化,检测磁盘是否进行了插拔;通过变更标识信息与标识信息之间的比较,实现4从数据库中查询新的磁盘是否已经存在,也就是说,通过目标磁盘的标识信息确定磁盘是否是已存在的磁盘。
步骤S418:检测所述插入磁盘的存储空间,判断所述存储空间中是否包括存储数据。
具体的,在对磁盘维护信息进行状态更新之后,得到结果为驻场人员自A位置拔出了X1,插入了B位置,与目标磁盘的磁盘信息指示一致,之后检查X1的存储空间,判断X1中是否存储了数据。若否,执行步骤S420;若是,执行步骤S422。
步骤S420:将空载磁盘信息作为所述磁盘使用信息。
步骤S422:将负载磁盘信息作为所述磁盘使用信息。
步骤S424:对所述插入磁盘进行格式化处理,并对包含格式化处理后的插入磁盘的分布式存储系统进行运行状态检测,根据运行检测结果确定异常检测信息。
具体的,在磁盘使用信息为空载磁盘信息的情况下,将X1进行格式化,如图5所示的一种磁盘检测方法的信息交互示意图中的5。之后检测运行的分布式存储系统中是否出现报错情况,并将检测结果作为异常检测信息。如图5所示的一种磁盘检测方法的信息交互示意图中的6、7。需要说明的是,检测运行的分布式存储系统中是否出现报错情况所需的时间比较长,这种情况下可以在运行检测的同时,对下一个与X1不是同一集群的磁盘进行检测,由于磁盘不是同一集群,所以两个磁盘之间的变更不会互相影响,可以并将的进行检测。
步骤S426:查询所述插入磁盘的静默时间。
具体的,磁盘使用信息为负载磁盘信息的情况下,查询所述X1的静默时间为15小时。
步骤S428:判断所述静默时间是否大于所述时间阈值。
具体的,判断X1的静默时间是否大于预设的时间阈值,若是,执行步骤S424;若否,执行步骤S430。
步骤S430:根据所述静默时间生成所述异常检测信息。
具体的,若静默时间15h小于预设的时间阈值,这种情况下说明X1还处在活跃期,还经常被分布式存储系统调用,这种情况下也就说明了上层程序还在使用X1进行相关的数据处理,那么这种情况下将X1拔出,会影响到上层程序相关进程的执行。
步骤S432:根据所述异常检测信息对所述磁盘维护信息进行数据更新。
具体的,基于异常检测信息中包含的信息对磁盘维护信息进行更新,记录在分布式存储系统中的磁盘发生变更后,对分布式存储系统运行过程中产生的影响,若磁盘变更对分布式存储系统运行的影响达到了预设的程度,如插入磁盘插入了错误的槽位,拔出的磁盘并不是期望拔出的磁盘等可以引起分布式存储系统产生数据安全隐患的情况,都需要将这些情况反映到磁盘维护信息中,供维护人员对错误插拔的磁盘进行维护与补救。
本说明书一个实施例实现了根据磁盘更新指令去确定需要进行更新的磁盘的集合,选择集合中的一个磁盘作为目标磁盘,确定目标磁盘的磁盘信息,之后在检测到分布式存储系统对应的磁盘变更信息的情况下,将磁盘变更信息与目标磁盘的磁盘信息进行对比,根据对比结果更新磁盘维护信息,之后对分布式存储系统进行运行检测,根据检测结果再次对磁盘维护信息进行更新,通过这种方法能够及时发现磁盘更换出现拔插错误,并将插拔错误产生的影响范围降低,提升了硬盘维护的效率,在磁盘插拔错误时可以快速给出提示,提供稳定的存储服务,进而保证了数据的安全性。
与上述方法实施例相对应,本说明书还提供了磁盘检测装置实施例,图6示出了本说明书一个实施例提供的一种磁盘检测装置的结构示意图。如图6所示,该装置包括:
响应模块602,被配置为响应于磁盘更新指令在分布式存储系统中确定待更新磁盘集合;
选择模块604,被配置为在所述待更新磁盘集合中选择目标磁盘,并确定所述目标磁盘的磁盘信息;
比对模块606,被配置为在检测到所述分布式存储系统对应的磁盘变更信息的情况下,将所述磁盘变更信息与所述磁盘信息进行比对,并根据比对结果对磁盘维护信息进行状态更新;
检测模块608,被配置为基于所述磁盘变更信息对所述分布式存储系统进行运行检测,并根据运行检测结果对磁盘维护信息进行数据更新。
在一个可选的实施例中,所述响应模块602还被配置为:
接收针对所述分布式存储系统上传的所述磁盘更新指令;解析所述磁盘更新指令,获得至少一个待更新标识;根据所述至少一个待更新标识,在所述分布式存储系统中确定至少一个待更新磁盘,并构建待更新磁盘集合。
在一个可选的实施例中,所述选择模块604还被配置为:
确定所述目标磁盘的标识信息、槽位信息以及挂载点信息;根据所述标识信息、所述槽位信息以及所述挂载点信息确定所述目标磁盘的磁盘信息。
在一个可选的实施例中,所述比对模块606还被配置为:
判断所述磁盘变更信息与所述磁盘信息是否相同;若是,将所述磁盘变更信息写入所述磁盘维护信息,根据写入结果将所述磁盘维护信息更新为正常状态;若否,确定磁盘异常信息,将所述磁盘异常信息写入所述磁盘维护信息,根据写入结果将所述磁盘维护信息更新为异常状态。
在一个可选的实施例中,所述比对模块606还被配置为:
解析所述磁盘变更信息,获得变更标识信息、变更槽位信息以及变更挂载点信息;将所述变更标识信息与所述标识信息,所述变更槽位信息与所述槽位信息,所述变更挂载点信息与所述挂载点信息分别进行比对。
在一个可选的实施例中,所述检测模块608还被配置为:
在所述磁盘变更信息为磁盘插入信息的情况下,基于所述磁盘插入信息确定插入磁盘;检测所述插入磁盘中包含的存储数据,根据检测结果确定所述插入磁盘的磁盘使用信息;根据所述磁盘使用信息对所述分布式存储系统进行异常检测,获得异常检测信息;根据所述异常检测信息对所述磁盘维护信息进行数据更新。
在一个可选的实施例中,所述检测模块608还被配置为:
检测所述插入磁盘的存储空间,判断所述存储空间中是否包括存储数据;若否,将空载磁盘信息作为所述磁盘使用信息;若是,将负载磁盘信息作为所述磁盘使用信息。
在一个可选的实施例中,所述检测模块608还被配置为:
在所述磁盘使用信息为空载磁盘信息的情况下,对所述插入磁盘进行格式化处理;对包含格式化处理后的插入磁盘的分布式存储系统进行运行状态检测,根据运行检测结果确定异常检测信息。
在一个可选的实施例中,所述检测模块608还被配置为:
在所述磁盘使用信息为负载磁盘信息的情况下,查询所述插入磁盘的静默时间;将所述静默时间与预设的时间阈值进行比对,根据时间比对结果确定异常检测信息。
在一个可选的实施例中,所述检测模块608还被配置为:
判断所述静默时间是否大于所述时间阈值;若是,执行对所述插入磁盘进行格式化处理的步骤;若否,根据所述静默时间生成所述异常检测信息。
在一个可选的实施例中,所述磁盘检测装置还包括:
集群模块,被配置为确定当前检测周期中所述目标磁盘对应的目标集群;在所述待更新磁盘集合中确定与所述目标集群不同的区别集群;在所述区别集群中选择下一检测周期中的目标磁盘,并执行所述确定所述目标磁盘的磁盘信息的步骤。
本说明书一个实施例提供的磁盘检测装置能够及时发现磁盘更换出现拔插错误,并将插拔错误产生的影响范围降低,提升了硬盘维护的效率,在磁盘插拔错误时可以快速给出提示,提供稳定的存储服务,进而保证了数据的安全性。
上述为本实施例的一种磁盘检测装置的示意性方案。需要说明的是,该磁盘检测装置的技术方案与上述的磁盘检测方法的技术方案属于同一构思,磁盘检测装置的技术方案未详细描述的细节内容,均可以参见上述磁盘检测方法的技术方案的描述。
图7示出了根据本说明书一个实施例提供的一种计算设备700的结构框图。该计算设备700的部件包括但不限于存储器710和处理器720。处理器720与存储器710通过总线730相连接,数据库750用于保存数据。
计算设备700还包括接入设备740,接入设备740使得计算设备700能够经由一个或多个网络760通信。这些网络的示例包括公用交换电话网(PSTN)、局域网(LAN)、广域网(WAN)、个域网(PAN)或诸如因特网的通信网络的组合。接入设备740可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(NIC))中的一个或多个,诸如IEEE802.11无线局域网(WLAN)无线接口、全球微波互联接入(Wi-MAX)接口、以太网接口、通用串行总线(USB)接口、蜂窝网络接口、蓝牙接口、近场通信(NFC)接口,等等。
在本说明书的一个实施例中,计算设备700的上述部件以及图7中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图7所示的计算设备结构框图仅仅是出于示例的目的,而不是对本说明书范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。
计算设备700可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或PC的静止计算设备。计算设备700还可以是移动式或静止式的服务器。
其中,处理器720用于执行如下计算机可执行指令,该计算机可执行指令被处理器执行时实现上述磁盘检测方法的步骤。
上述为本实施例的一种计算设备的示意性方案。需要说明的是,该计算设备的技术方案与上述的磁盘检测方法的技术方案属于同一构思,计算设备的技术方案未详细描述的细节内容,均可以参见上述磁盘检测方法的技术方案的描述。
本说明书一实施例还提供一种计算机可读存储介质,其存储有计算机可执行指令,该计算机可执行指令被处理器执行时实现上述磁盘检测方法的步骤。
上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的磁盘检测方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述磁盘检测方法的技术方案的描述。
本说明书一实施例还提供一种计算机程序,其中,当所述计算机程序在计算机中执行时,令计算机执行上述磁盘检测方法的步骤。
上述为本实施例的一种计算机程序的示意性方案。需要说明的是,该计算机程序的技术方案与上述的磁盘检测方法的技术方案属于同一构思,计算机程序的技术方案未详细描述的细节内容,均可以参见上述磁盘检测方法的技术方案的描述。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本说明书实施例并不受所描述的动作顺序的限制,因为依据本说明书实施例,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本说明书实施例所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
以上公开的本说明书优选实施例只是用于帮助阐述本说明书。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书实施例的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本说明书实施例的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本说明书。本说明书仅受权利要求书及其全部范围和等效物的限制。
Claims (14)
1.一种磁盘检测方法,包括:
响应于磁盘更新指令在分布式存储系统中确定待更新磁盘集合;
在所述待更新磁盘集合中选择目标磁盘,并确定所述目标磁盘的磁盘信息;
在检测到所述分布式存储系统对应的磁盘变更信息的情况下,将所述磁盘变更信息与所述磁盘信息进行比对,并根据比对结果对磁盘维护信息进行状态更新;
基于所述磁盘变更信息对所述分布式存储系统进行运行检测,并根据运行检测结果对磁盘维护信息进行数据更新。
2.根据权利要求1所述的方法,其特征在于,所述响应于磁盘更新指令在分布式存储系统中确定待更新磁盘集合,包括:
接收针对所述分布式存储系统上传的所述磁盘更新指令;
解析所述磁盘更新指令,获得至少一个待更新标识;
根据所述至少一个待更新标识,在所述分布式存储系统中确定至少一个待更新磁盘,并构建待更新磁盘集合。
3.根据权利要求1所述的方法,其特征在于,所述确定所述目标磁盘的磁盘信息,包括:
确定所述目标磁盘的标识信息、槽位信息以及挂载点信息;
根据所述标识信息、所述槽位信息以及所述挂载点信息确定所述目标磁盘的磁盘信息。
4.根据权利要求1所述的方法啊,其特征在于,所述将所述磁盘变更信息与所述磁盘信息进行比对,并根据比对结果对磁盘维护信息进行状态更新,包括:
判断所述磁盘变更信息与所述磁盘信息是否相同;
若是,将所述磁盘变更信息写入所述磁盘维护信息,根据写入结果将所述磁盘维护信息更新为正常状态;
若否,确定磁盘异常信息,将所述磁盘异常信息写入所述磁盘维护信息,根据写入结果将所述磁盘维护信息更新为异常状态。
5.根据权利要求3所述的方法,其特征在于,所述将所述磁盘变更信息与所述磁盘信息进行比对,包括:
解析所述磁盘变更信息,获得变更标识信息、变更槽位信息以及变更挂载点信息;
将所述变更标识信息与所述标识信息,所述变更槽位信息与所述槽位信息,所述变更挂载点信息与所述挂载点信息分别进行比对。
6.根据权利要求1所述的方法,其特征在于,所述基于所述磁盘变更信息对所述分布式存储系统进行运行检测,并根据运行检测结果对磁盘维护信息进行数据更新,包括:
在所述磁盘变更信息为磁盘插入信息的情况下,基于所述磁盘插入信息确定插入磁盘;
检测所述插入磁盘中包含的存储数据,根据检测结果确定所述插入磁盘的磁盘使用信息;
根据所述磁盘使用信息对所述分布式存储系统进行异常检测,获得异常检测信息;
根据所述异常检测信息对所述磁盘维护信息进行数据更新。
7.根据权利要求6所述的方法,其特征在于,所述检测所述插入磁盘中包含的存储数据,根据检测结果确定所述插入磁盘的磁盘使用信息,包括:
检测所述插入磁盘的存储空间,判断所述存储空间中是否包括存储数据;
若否,将空载磁盘信息作为所述磁盘使用信息;
若是,将负载磁盘信息作为所述磁盘使用信息。
8.根据权利要求7所述的方法,其特征在于,所述根据所述磁盘使用信息对所述分布式存储系统进行异常检测,获得异常检测信息,包括:
在所述磁盘使用信息为空载磁盘信息的情况下,对所述插入磁盘进行格式化处理;
对包含格式化处理后的插入磁盘的分布式存储系统进行运行状态检测,根据运行状态检测结果确定异常检测信息。
9.根据权利要求8所述的方法,其特征在于,所述根据所述磁盘使用信息对所述分布式存储系统进行异常检测,获得异常检测信息,包括:
在所述磁盘使用信息为负载磁盘信息的情况下,查询所述插入磁盘的静默时间;
将所述静默时间与预设的时间阈值进行比对,根据时间比对结果确定异常检测信息。
10.根据权利要求9所述的方法,其特征在于,所述根据时间比对结果确定异常检测信息,包括:
判断所述静默时间是否大于所述时间阈值;
若是,执行对所述插入磁盘进行格式化处理的步骤;
若否,根据所述静默时间生成所述异常检测信息。
11.根据权利要求1所述的方法,其特征在于,所述根据比对结果对磁盘维护信息进行状态更新之后,还包括:
确定当前检测周期中所述目标磁盘对应的目标集群;
在所述待更新磁盘集合中确定与所述目标集群不同的区别集群;
在所述区别集群中选择下一检测周期中的目标磁盘,并执行所述确定所述目标磁盘的磁盘信息的步骤。
12.一种磁盘检测装置,包括:
响应模块,被配置为响应于磁盘更新指令在分布式存储系统中确定待更新磁盘集合;
选择模块,被配置为在所述待更新磁盘集合中选择目标磁盘,并确定所述目标磁盘的磁盘信息;
比对模块,被配置为在检测到所述分布式存储系统对应的磁盘变更信息的情况下,将所述磁盘变更信息与所述磁盘信息进行比对,并根据比对结果对磁盘维护信息进行状态更新;
检测模块,被配置为基于所述磁盘变更信息对所述分布式存储系统进行运行检测,并根据运行检测结果对磁盘维护信息进行数据更新。
13.一种计算设备,包括:
存储器和处理器;
所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令,该计算机可执行指令被处理器执行时实现权利要求1至11任意一项所述磁盘检测方法的步骤。
14.一种计算机可读存储介质,其存储有计算机可执行指令,该计算机可执行指令被处理器执行时实现权利要求1至11任意一项所述磁盘检测方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210320055.5A CN114741242A (zh) | 2022-03-29 | 2022-03-29 | 磁盘检测方法以及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210320055.5A CN114741242A (zh) | 2022-03-29 | 2022-03-29 | 磁盘检测方法以及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114741242A true CN114741242A (zh) | 2022-07-12 |
Family
ID=82277220
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210320055.5A Pending CN114741242A (zh) | 2022-03-29 | 2022-03-29 | 磁盘检测方法以及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114741242A (zh) |
-
2022
- 2022-03-29 CN CN202210320055.5A patent/CN114741242A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108509153B (zh) | Osd选择方法、数据写入和读取方法、监控器和服务器集群 | |
US7475217B2 (en) | Method of managing storage capacity in storage system, a storage device and a computer system | |
CN100541489C (zh) | 外部元数据处理 | |
CN107315659B (zh) | 一种元数据的冗余备份方法及装置 | |
US7913045B2 (en) | Storage system comprising backup function | |
CN110471909B (zh) | 一种数据库管理方法、装置、服务器及存储介质 | |
CN108874441B (zh) | 一种板卡配置方法、装置、服务器和存储介质 | |
CN107765990A (zh) | 一种系统磁盘管理方法和装置 | |
CN102594591A (zh) | 一种日志采集方法及装置 | |
CN111694684A (zh) | 存储设备的异常构造方法、装置、电子设备及存储介质 | |
CN111506583A (zh) | 更新方法、更新装置、服务器、计算机设备和存储介质 | |
CN114741242A (zh) | 磁盘检测方法以及装置 | |
CN113836152B (zh) | 一种高效率数据一致性校验方法、装置及存储介质 | |
CN110554840A (zh) | 磁盘管理方法、装置、电子设备及存储介质 | |
US20080256313A1 (en) | System, Method And Computer Program Product For Remote Mirroring | |
CN116150111A (zh) | 内核崩溃日志的保存方法、装置、介质以及电子设备 | |
CN111124095B (zh) | 一种升级电源固件时电源运行状态检测方法及相关装置 | |
CN111324516A (zh) | 自动记录异常事件的方法及装置、存储介质、电子设备 | |
KR102221593B1 (ko) | 단말의 설치 환경 유지를 위한 시스템 | |
CN114490570A (zh) | 生产数据同步方法、装置、数据同步系统及服务器 | |
EP1349067A2 (en) | Document management system and method with fault recovery | |
CN108345510B (zh) | 一种自动巡检检测大规模离线归档系统可靠性的方法 | |
JP2022039508A (ja) | 情報処理装置および運用監視プログラム | |
CN116844627B (zh) | 硬盘掉电测试方法、系统及介质 | |
CN109086172B (zh) | 一种数据处理的方法以及相关装置 |
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 |