WO2021128889A1 - 分布式块存储服务命令处理方法、装置、设备及介质 - Google Patents

分布式块存储服务命令处理方法、装置、设备及介质 Download PDF

Info

Publication number
WO2021128889A1
WO2021128889A1 PCT/CN2020/110412 CN2020110412W WO2021128889A1 WO 2021128889 A1 WO2021128889 A1 WO 2021128889A1 CN 2020110412 W CN2020110412 W CN 2020110412W WO 2021128889 A1 WO2021128889 A1 WO 2021128889A1
Authority
WO
WIPO (PCT)
Prior art keywords
tgtadm
real
iscsi
storage service
block storage
Prior art date
Application number
PCT/CN2020/110412
Other languages
English (en)
French (fr)
Inventor
李辉
白战豪
Original Assignee
浪潮电子信息产业股份有限公司
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 浪潮电子信息产业股份有限公司 filed Critical 浪潮电子信息产业股份有限公司
Priority to US17/774,351 priority Critical patent/US11656802B2/en
Publication of WO2021128889A1 publication Critical patent/WO2021128889A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0611Improving I/O performance in relation to response time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0634Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0653Monitoring storage devices or systems

Definitions

  • This application relates to the field of computer technology, in particular to a distributed block storage service command processing method, device, equipment and medium.
  • RBD block storage is the most widely used and most stable storage type among the three storage types provided by ceph. RBD blocks are similar to disks and can be mounted on physical or virtual machines.
  • ISCSI mainly uses TCP/IP technology to make the storage device (RBD) end through the iscsi target (iscsi target) function to make the server end that can provide disks, and then through the iscsi initiator (iscsi initialize user) function to do It is possible to mount the client that uses iscsi target, so that the disk application can be carried out through the iSCSI protocol.
  • the iSCSI architecture mainly divides the storage device and the used host into two parts, namely:
  • Iscsi target it is the storage device side, the device that stores disks or RAID.
  • Linux hosts can also be simulated as iSCSI targets, the purpose is to provide disks used by other hosts;
  • Iscsi initiator It is the client that can use the target, usually the server. In other words, if you want to connect to the server of the iscsi target, you must also install the related functions of the iscsi initiator before you can use the disk provided by the iscsi target.
  • the client can access the underlying librbd (the block storage library provided by Ceph, which implements the RBD interface) by establishing a connection with the tgt (Linux SCSI target framework, iscsi target implemented for the user mode) to achieve the Block storage operations.
  • librbd the block storage library provided by Ceph, which implements the RBD interface
  • tgt the tgt (Linux SCSI target framework, iscsi target implemented for the user mode) to achieve the Block storage operations.
  • Multiple block devices can be mapped to a target, and multiple targets can be created on a tgt at the same time.
  • Clients can connect to one or more targets on the tgt to access respectively.
  • Tgt can create LUNs (ie Logical Unit Number, logical unit number) To provide block services to clients, a LUN corresponds to a block storage volume.
  • RBD can manage volumes, snapshots, clones, etc. through the command line.
  • iscsi target that is, if the volume has been opened, if you use the rbd command line to manage the volume.
  • the snapshot is modified, the iscsi target business will not be able to use simultaneous snapshot rollback.
  • ceph does not support online rollback. If you want to perform a snapshot rollback, you must unmount the mapped volume layer by layer, then roll back, and finally remap Mounting, this process is quite cumbersome.
  • the purpose of this application is to provide a distributed block storage service command processing method, device, device, and medium, which can simplify the command processing process and reduce the cluster load, thereby improving the overall performance of the cluster.
  • the specific plan is as follows:
  • this application discloses an iscsi-based distributed block storage service command processing method, including:
  • tgt management tool that is, the Linux SCSI target framework management tool
  • parse the rbd command to obtain the corresponding task parameters, and then transmit the task parameters to iscsi target ;
  • tgtd tgt's daemon, that is, Linux SCSI target framework daemon
  • the real-time processing result is returned to the tgtadm through the iscsi target, so that the tgtadm displays the real-time processing result on a human-computer interaction interface.
  • transmitting the task parameters to the iscsi target via tgtadm includes:
  • the task parameters are transmitted to the iscsi target through tgtadm and based on the ipc communication mode.
  • the returning the real-time processing result to the tgtadm through the iscsi target includes:
  • the real-time processing result is returned to the tgtadm through the iscsi target and based on the ipc communication mode.
  • the dedicated thread for processing the task corresponding to the task parameter when started through tgtd, it further includes:
  • the process of monitoring the real-time processing result of the current task through tgtd includes:
  • a callback function is set through tgtd, and the real-time processing result of the current task is obtained through the callback function.
  • the setting a callback function through tgtd and obtaining the real-time processing result of the current task through the callback function includes:
  • the returning the real-time processing result to the tgtadm through the iscsi target, so that the tgtadm displays the real-time processing result on a human-computer interaction interface including:
  • said obtaining the real-time processing result of the current task through the callback function further includes:
  • this application discloses an iscsi-based distributed block storage service command processing device, including:
  • the command acquisition module is used to acquire the rbd command of the block storage service through tgtadm;
  • the command parsing module is configured to analyze the rbd command through the tgtadm to obtain the corresponding task parameters, and then transmit the task parameters to the iscsi target;
  • a thread start module configured to start a dedicated thread for processing tasks corresponding to the task parameters through tgtd;
  • the result monitoring module is used to monitor the real-time processing result of the current task through tgtd;
  • the result return module is configured to return the real-time processing result to the tgtadm through the iscsi target, so that the tgtadm displays the real-time processing result on a human-computer interaction interface.
  • this application discloses an electronic device, including:
  • Memory used to store computer programs
  • the processor is configured to execute the computer program to implement the aforementioned iscsi-based distributed block storage service command processing method.
  • this application discloses a computer-readable storage medium for storing computer programs to implement the aforementioned iscsi-based distributed block storage service command processing method.
  • tgtadm is used to obtain the rbd command of the block storage service, and the corresponding task parameters are moved up to iscsi target, and then the thread dedicated to processing the tasks corresponding to the above task parameters is opened through tgtd, and the real-time processing results are monitored. Then the real-time processing result is returned to tgtadm through iscsi target, so that the real-time processing result can be displayed on the human-computer interaction interface through tgtadm. It can be seen that this application moves the rbd command up to the target layer, which is equivalent to moving the operations on volumes, snapshots, and clones up to the target layer for processing.
  • FIG. 1 is a flowchart of an iscsi-based distributed block storage service command processing method disclosed in this application;
  • FIG. 3 is a flowchart of a specific iscsi-based distributed block storage service command processing method disclosed in this application;
  • FIG. 4 is a schematic structural diagram of an iscsi-based distributed block storage service command processing device disclosed in this application;
  • FIG. 5 is a structural diagram of an electronic device disclosed in this application.
  • RBD can manage volumes, snapshots, clones, etc. through the command line.
  • iscsi target that is, if the volume has been opened, if you use the rbd command line to manage the volume.
  • the snapshot is modified, the iscsi target business will not be able to use simultaneous snapshot rollback.
  • ceph does not support online rollback. If you want to perform a snapshot rollback, you must unmount the mapped volume layer by layer, then roll back, and finally remap Mounting, this process is quite cumbersome.
  • the present application provides a distributed block storage service command processing solution, which can simplify the command processing process and reduce the cluster load, thereby improving the overall performance of the cluster.
  • an embodiment of the present application discloses an iscsi-based distributed block storage service command processing method, including:
  • Step S11 Obtain the rbd command of the block storage service through tgtadm, parse the rbd command to obtain corresponding task parameters, and then transmit the task parameters to the iscsi target.
  • the tgtadm is a management tool, and its managed objects include targets.
  • rbd commands in this embodiment include but are not limited to related operation commands for volumes, snapshots, and clones.
  • the tgtadm and the iscsi target can communicate based on the ipc (ie, Inter-Process Communication) communication mode. That is, transmitting the task parameters to the iscsi target through tgtadm may specifically include transmitting the task parameters to the iscsi target through tgtadm and based on the ipc communication mode.
  • ipc Inter-Process Communication
  • Step S12 Start a dedicated thread for processing the task corresponding to the task parameter through tgtd, and monitor the current real-time processing result of the task.
  • a dedicated thread is opened through tgtd, which is specifically used to process tasks corresponding to the above-mentioned task parameters.
  • a dedicated thread for processing tasks corresponding to the task parameters when opened through tgtd, it may also include: monitoring from epoll Delete the fd file descriptor.
  • this embodiment can be implemented through a callback function. That is, in this embodiment, the process of monitoring the real-time processing result of the current task through tgtd may specifically include: setting a callback function through tgtd, and obtaining the real-time processing result of the current task through the callback function.
  • acquiring the real-time processing result of the current task through the callback function may specifically include acquiring the real-time processing progress of the current task through the callback function. Further, the obtaining the real-time processing result of the current task through the callback function may also include: obtaining the error code of the current task through the callback function. That is, the real-time processing result in this embodiment may specifically include the real-time processing progress or error code of the current task.
  • Step S13 Return the real-time processing result to the tgtadm through the iscsi target, so that the tgtadm displays the real-time processing result on a human-computer interaction interface.
  • the returning the real-time processing result to the tgtadm through the iscsi target may include: returning the real-time processing result to the tgtadm through the iscsi target and based on an ipc communication mode.
  • the rbd command of the block storage service is obtained through tgtadm, and the corresponding task parameters are moved up to iscsi target, and then the thread dedicated to processing the tasks corresponding to the above task parameters is started through tgtd, and the real-time processing results are monitored. , And then return the real-time processing result to tgtadm through iscsi target, so that the real-time processing result can be displayed on the human-computer interaction interface through tgtadm. It can be seen that the embodiment of this application moves the rbd command up to the target layer, which is equivalent to moving the operations on volumes, snapshots, and clones up to the target layer for processing.
  • volume adjustment Operations such as modification and snapshot rollback can be completed directly at the target layer. There is no need to uninstall and then mount. This process is imperceptible to users, which can save a lot of manpower and simplify the process. , Improve the user experience.
  • the distributed cluster reduces many processes and io flows that are not related to business, thereby greatly reducing the load of the cluster.
  • an embodiment of the present application discloses a specific iscsi-based distributed block storage service command processing method, including:
  • Step S21 Obtain the rbd command of the block storage service through tgtadm, parse the rbd command to obtain the corresponding task parameter, and then transmit the task parameter to the iscsi target based on the ipc communication mode.
  • Step S22 Start a dedicated thread for processing tasks corresponding to the task parameters through tgtd, and set a callback function, and transmit the callback function and the task parameters to the block storage service for the block storage
  • the service returns the corresponding real-time processing progress to the tgtd by calling the callback function.
  • tgtd will start the corresponding task processing dedicated thread, set the callback function, and then send the callback function and task parameters to the block storage service.
  • the above callback function can be directly called to return the corresponding real-time processing progress to tgtd, so as to realize the purpose of tgtd to monitor the real-time processing result of the current task.
  • Step S23 Analyze the real-time processing progress through the iscsi target and calculate the corresponding progress percentage, and then return the progress percentage to the tgtadm based on the ipc communication mode, so that the tgtadm can convert the progress percentage into The corresponding progress bar is displayed on the human-computer interaction interface.
  • the iscsi target will calculate the progress percentage corresponding to the above-mentioned real-time processing progress, and then send the progress percentage to tgtadm through ipc communication. After tgtadm obtains the above progress percentage, it can be converted into a corresponding visual progress bar, and the progress bar is sent to the human-computer interaction interface for display. In this way, the user can intuitively and timely learn the processing progress of the current task .
  • Figure 3 shows a specific iscsi-based distributed block storage service command processing method flow.
  • the command line parameters of the block storage service are redesigned at the iscsi target level, and are transferred from tgtadm to tgtd via ipc inter-process communication; to reduce the impact of block storage service interaction on other services, tgtd starts a separate thread Handle this type of task, and delete fd from the epoll monitor at the same time, to prevent the task from being triggered by mistake every time the progress is sent; whether the need_process flag needs to be printed on the progress bar, set this flag to true only for the command line that requires the progress bar; design progress_count in The mark at tgtadm is the number of replies.
  • the iscsi target uses tgtd to design a callback function and pass the function pointer to the block storage service.
  • the function is called when the block storage service processing task progresses.
  • the iscsi target will analyze the progress and calculate the percentage and send the message through ipc socket Send it to tgtadm, and then tgatdm will display the task progress to the console interface.
  • each rbd command is moved up to the target layer, and various processing logics are managed at the iscsi target layer.
  • Various operations can be performed on the volume without canceling the volume mapping.
  • the tgtd setting callback is responsible for receiving the progress of the block storage service and When sent to tgtadm, the progress will be displayed to the user through the algorithm, and the error code information will be returned by the iscsi command.
  • the rbd command is moved up to the iscsi target layer, and the target layer receives the upper-layer tasks as an intermediate layer between the rbd and the user;
  • the iscsi target indirectly designs callbacks to obtain the block storage service processing progress or error code, and passes through the ipc
  • the communication is passed to tgtadm, and tgtadm displays the progress to the user through an algorithm, and displays an error code.
  • an iscsi-based distributed block storage service command processing device including:
  • the command obtaining module 11 is used to obtain the rbd command of the block storage service through tgtadm;
  • the command parsing module 12 is configured to parse the rbd command through the tgtadm to obtain the corresponding task parameters, and then transmit the task parameters to the iscsi target;
  • the thread start module 13 is configured to start a dedicated thread for processing tasks corresponding to the task parameters through tgtd;
  • the result monitoring module 14 is used to monitor the real-time processing result of the current task through tgtd;
  • the result return module 15 is configured to return the real-time processing result to the tgtadm through the iscsi target, so that the tgtadm displays the real-time processing result on a human-computer interaction interface.
  • the rbd command of the block storage service is obtained through tgtadm, and the corresponding task parameters are moved up to iscsi target, and then the thread dedicated to processing the tasks corresponding to the above task parameters is started through tgtd, and the real-time processing results are monitored. , And then return the real-time processing result to tgtadm through iscsi target, so that the real-time processing result can be displayed on the human-computer interaction interface through tgtadm. It can be seen that the embodiment of this application moves the rbd command up to the target layer, which is equivalent to moving the operations on volumes, snapshots, and clones up to the target layer for processing.
  • volume adjustment Operations such as modification and snapshot rollback can be completed directly at the target layer. There is no need to uninstall and then mount. This process is imperceptible to users, which can save a lot of manpower and simplify the process. , Improve the user experience.
  • the distributed cluster reduces many processes and io flows that are not related to business, thereby greatly reducing the load of the cluster.
  • command parsing module 12 includes:
  • a command parsing unit configured to parse the rbd command through the tgtadm to obtain corresponding task parameters
  • the parameter transmission unit is configured to transmit the task parameters to the iscsi target through tgtadm and based on the ipc communication mode.
  • the result return module 15 is specifically configured to return the real-time processing result to the tgtadm through the iscsi target and based on the ipc communication mode, so that the tgtadm can send the real-time processing result to the tgtadm Displayed on the human-computer interaction interface.
  • the thread opening module 13 further includes:
  • the descriptor deletion unit is used to delete the fd file descriptor from the epoll monitoring when the dedicated thread for processing the task corresponding to the task parameter is started through tgtd.
  • the result monitoring module 14 includes:
  • the callback setting sub-module is used to set a callback function through tgtd, and obtain the real-time processing result of the current task through the callback function.
  • the callback setting submodule includes:
  • the callback setting unit is used to set the callback function through tgtd;
  • the information transmission unit is configured to transmit the callback function and the task parameters to the block storage service, so that the block storage service calls the callback function when the task progress status corresponding to the task parameters is updated Return the corresponding real-time processing progress to the tgtd.
  • the result return module 15 is specifically configured to analyze the real-time processing progress through the iscsi target and calculate the corresponding progress percentage, and then return the progress percentage to the tgtadm, So that the tgtadm converts the progress percentage into a corresponding progress bar and displays it on the human-computer interaction interface.
  • the callback setting submodule further includes:
  • the error code obtaining unit is used to obtain the error code of the current task through the callback function.
  • FIG. 5 is a structural diagram of an electronic device 20 according to an exemplary embodiment, and the content in the figure cannot be considered as any restriction on the scope of use of the present application.
  • FIG. 5 is a schematic structural diagram of an electronic device 20 according to an embodiment of the application.
  • the electronic device 20 may specifically include: at least one processor 21, at least one memory 22, a power supply 23, a communication interface 24, an input/output interface 25, and a communication bus 26.
  • the memory 22 is used to store a computer program, and the computer program is loaded and executed by the processor 21 to implement the relevant steps in the distributed block storage service command processing method disclosed in any of the foregoing embodiments.
  • the power supply 23 is used to provide operating voltages for various hardware devices on the electronic device 20;
  • the communication interface 24 can create a data transmission channel for the electronic device 20 with external devices, and the communication protocol it follows is applicable Any communication protocol in the technical solution of this application is not specifically limited here;
  • the input and output interface 25 is used to obtain input data from the outside or output data to the outside world, and the specific interface type can be selected according to specific application needs. There is no specific limitation.
  • the memory 22 as a resource storage carrier, can be a read-only memory, a random access memory, a magnetic disk or an optical disc, etc.
  • the resources stored on it include an operating system 221, a computer program 222, and data 223, etc.
  • the storage method can be short-term storage or Permanent storage.
  • the operating system 221 is used to manage and control various hardware devices and computer programs 222 on the electronic device 20 to realize the operation and processing of the massive data 223 in the memory 22 by the processor 21. It can be Windows Server, Netware, Unix, Linux etc.
  • the computer program 222 can also further include a computer program that can be used to complete other specific tasks.
  • the data 223 may include various data collected by the electronic device 20.
  • an embodiment of the present application also discloses a computer-readable storage medium for storing a computer program to implement the iscsi-based distributed block storage service command processing method disclosed in the foregoing embodiment.
  • the steps of the method or algorithm described in combination with the embodiments disclosed herein can be directly implemented by hardware, a software module executed by a processor, or a combination of the two.
  • the software module can be placed in random access memory (RAM), internal memory, read-only memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard disks, removable disks, CD-ROMs, or all areas in the technical field. Any other known storage media.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)
  • Computer And Data Communications (AREA)

Abstract

一种分布式块存储服务命令处理方法、装置、设备及介质,该方法包括:通过tgtadm获取块存储服务的rbd命令,并对rbd命令进行解析,以得到相应的任务参数,然后将任务参数传送至iscsi target(S11);通过tgtd开启用于处理与任务参数对应的任务的专用线程,并监视当前任务的实时处理结果(S12);通过iscsi target将实时处理结果返回给tgtadm,以便tgtadm将实时处理结果显示在人机交互界面(S13)。上述方法将rbd命令上移至了target层,这种情况下,如果需要进行对卷修改、快照回滚等操作,便可以直接在target层完成相关调度即可,无需做卸载再挂载的操作,这样可以节省大量的人力,简化了流程,同时大量的查询命令上移至target层之后,分布式集群减少了许多与业务无关的进程和io流,减轻了集群负载。

Description

分布式块存储服务命令处理方法、装置、设备及介质
本申请要求于2019年12月28日提交中国专利局、申请号为201911384349.9、发明名称为“分布式块存储服务命令处理方法、装置、设备及介质”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及计算机技术领域,特别涉及一种分布式块存储服务命令处理方法、装置、设备及介质。
背景技术
RBD块存储是ceph提供的3种存储类型中使用最广泛,最稳定的存储类型。RBD块类似于磁盘,可以挂载到物理机或虚拟机中。而iSCSI主要是通过TCP/IP的技术,将储存设备(RBD)端透过iscsi target(iscsi目标)功能,做成可以提供磁盘的服务器端,再透过iscsi initiator(iscsi初始化用户)功能,做成能够挂载使用iscsi target的客户端,如此便能透过iSCSI协议来进行磁盘的应用了。也就是说,iSCSI这个架构主要将储存装置与使用的主机分为两个部分,分别是:
1、iscsi target:就是储存设备端,存放磁盘或RAID的设备,目前也能够将Linux主机仿真成iSCSI target,目的在提供其他主机使用的磁盘;
2、iscsi initiator:就是能够使用target的客户端,通常是服务器。也就是说,想要连接到iscsi target的服务器,也必须要安装iscsi initiator的相关功能后才能够使用iscsi target提供的磁盘。
在实际应用中,客户机可通过与tgt(即Linux SCSI目标框架,为用户态实现的iscsi target)建立连接访问底层的librbd(即Ceph提供的块存储库,其实现了RBD接口),实现对块存储的操作。一个target上可以映射多个块设备,同时一个tgt上可以创建多个target,客户机可以连接tgt上其中一个或多个target分别进行访问,tgt可创建LUN(即Logical Unit Number,逻辑单元号)为客户端提供块服务,一个LUN对应于一个块存储卷。
现有技术中,RBD可通过命令行实现对卷、快照、克隆等的管理,但是若卷正在被iscsi target挂载使用,也即若卷已经被打开,此时如果通过rbd命令行对卷、快照进行修改、那么iscsi target业务将无法使用同时快照回滚,目前ceph不支持在线回滚,若要进行快照回滚,那么必须将映射卷一层一层卸载,然后回滚,最后再重新映射挂载,这样的流程是相当繁琐的。同时如果rbd是一个进程,若命令调用的很频繁,那么将开启大量的进程,这样集群的会出现大量的无关业务影响整体性能,在对性能要求非常高的分布式部署场景下,这样势必会影响用户体验。
发明内容
有鉴于此,本申请的目的在于提供一种分布式块存储服务命令处理方法、装置、设备及介质,能够简化命令处理流程,并减轻集群负载,从而改善了集群的整体性能。其具体方案如下:
第一方面,本申请公开了一种基于iscsi的分布式块存储服务命令处理方法,包括:
通过tgtadm(tgt的管理工具,即Linux SCSI目标框架管理工具)获取块存储服务的rbd命令,并对所述rbd命令进行解析,以得到相应的任务参数,然后将所述任务参数传送至iscsi target;
通过tgtd(tgt的daemon,即Linux SCSI目标框架守护进程)开启用于处理与所述任务参数对应的任务的专用线程,并监视当前所述任务的实时处理结果;
通过所述iscsi target将所述实时处理结果返回给所述tgtadm,以便所述tgtadm将所述实时处理结果显示在人机交互界面。
可选的,通过tgtadm将所述任务参数传送至iscsi target,包括:
通过tgtadm并基于ipc通信方式将所述任务参数传送至iscsi target。
相应的,所述通过所述iscsi target将所述实时处理结果返回给所述tgtadm,包括:
通过所述iscsi target并基于ipc通信方式将所述实时处理结果返回给所述tgtadm。
可选的,在通过tgtd开启用于处理与所述任务参数对应的任务的专用线程的时候,还包括:
从epoll监听中删除fd文件描述符。
可选的,通过tgtd监视当前所述任务的实时处理结果的过程,包括:
通过tgtd设置回调函数,通过所述回调函数获取当前任务的实时处理结果。
可选的,所述通过tgtd设置回调函数,通过所述回调函数获取当前任务的实时处理结果,包括:
通过tgtd设置回调函数,并将所述回调函数和所述任务参数传送至所述块存储服务,以便所述块存储服务在与所述任务参数对应的任务进度状态有更新时通过调用所述回调函数向所述tgtd返回相应的实时处理进度。
可选的,所述通过所述iscsi target将所述实时处理结果返回给所述tgtadm,以便所述tgtadm将所述实时处理结果显示在人机交互界面,包括:
通过所述iscsi target对所述实时处理进度进行解析并计算相应的进度百分比,然后将所述进度百分比返回给所述tgtadm,以便所述tgtadm将所述进度百分比转换成相应的进度条并显示在人机交互界面。
可选的,所述通过所述回调函数获取当前任务的实时处理结果,还包括:
通过所述回调函数获取当前任务的错误码。
第二方面,本申请公开了一种基于iscsi的分布式块存储服务命令处理装置,包括:
命令获取模块,用于通过tgtadm获取块存储服务的rbd命令;
命令解析模块,用于通过所述tgtadm对所述rbd命令进行解析,以得到相应的任务参数,然后将所述任务参数传送至iscsi target;
线程开启模块,用于通过tgtd开启用于处理与所述任务参数对应的任务的专用线程;
结果监视模块,用于通过tgtd监视当前所述任务的实时处理结果;
结果返回模块,用于通过所述iscsi target将所述实时处理结果返回给所述tgtadm,以便所述tgtadm将所述实时处理结果显示在人机交互界面。
第三方面,本申请公开了一种电子设备,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序,以实现前述的基于iscsi的分布式块存储服务命令处理方法。
第四方面,本申请公开了一种计算机可读存储介质,用于保存计算机程序,以实现前述的基于iscsi的分布式块存储服务命令处理方法。
本申请中,通过tgtadm来获取块存储服务的rbd命令,并将相应的任务参数上移至iscsi target,然后通过tgtd开启专门用于处理上述任务参数对应的任务的线程,并监视实时处理结果,接着通过iscsi target将实时处理结果返回给tgtadm,以便通过tgtadm将实时处理结果显示在人机交互界面上。由此可见,本申请是将rbd命令上移至了target层,这样相当于将对卷、快照、克隆的操作上移至target层来进行处理,这种情况下,如果需要进行对卷修改、快照回滚等操作,便可以直接在target层完成相关调度即可,无需做卸载再挂载的操作,这个过程对于用户来说是无感知的,这样可以节省大量的人力,简化了流程,改善了用户体验,与此同时,大量的查询命令上移至target层之后,分布式集群减少了许多与业务无关的进程和io流,从而大幅减轻了集群负载。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请公开的一种基于iscsi的分布式块存储服务命令处理方法流程图;
图2为本申请公开的一种具体的基于iscsi的分布式块存储服务命令处理方法流程图;
图3为本申请公开的一种具体的基于iscsi的分布式块存储服务命令处理方法流程图;
图4为本申请公开的一种基于iscsi的分布式块存储服务命令处理装置结构示意图;
图5为本申请公开的一种电子设备结构图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
现有技术中,RBD可通过命令行实现对卷、快照、克隆等的管理,但是若卷正在被iscsi target挂载使用,也即若卷已经被打开,此时如果通过rbd命令行对卷、快照进行修改、那么iscsi target业务将无法使用同时快照回滚,目前ceph不支持在线回滚,若要进行快照回滚,那么必须将映射卷一层一层卸载,然后回滚,最后再重新映射挂载,这样的流程是相当繁琐的。同时如果rbd是一个进程,若命令调用的很频繁,那么将开启大量的进程,这样集群的会出现大量的无关业务影响整体性能,在对性能要求非常高的分布式部署场景下,这样势必会影响用户体验。为此,本申请提供了一种分布式块存储服务命令处理方案,能够简化命令处理流程,并减轻集群负载,从而改善了集群的整体性能。
参见图1所示,本申请实施例公开了一种基于iscsi的分布式块存储服务命令处理方法,包括:
步骤S11:通过tgtadm获取块存储服务的rbd命令,并对所述rbd命令进行解析,以得到相应的任务参数,然后将所述任务参数传送至iscsi target。
本实施例中,所述tgtadm是一种管理工具,其所管理的对象包括target。
需要指出的是,本实施例中的rbd命令包括但不限于对卷、快照、克隆的相关操作命令。
本实施例,tgtadm与iscsi target之间可以基于ipc(即Inter-Process Communication,进程间通信)通信方式来进行通信。也即,通过tgtadm 将所述任务参数传送至iscsi target,具体可以包括通过tgtadm并基于ipc通信方式将所述任务参数传送至iscsi target。
步骤S12:通过tgtd开启用于处理与所述任务参数对应的任务的专用线程,并监视当前所述任务的实时处理结果。
本实施例中,为了减少块存储服务对其他业务的影响,通过tgtd开启了专用线程,专门用于处理与上述任务参数对应的任务。
进一步的,为了防止后续在发送进度信息等实时处理结果时错误触发任务,本实施例在通过tgtd开启用于处理与所述任务参数对应的任务的专用线程的时候,还可以包括:从epoll监听中删除fd文件描述符。
另外,为了实现对当前任务的实时处理结果的监视,本实施例可以通过回调函数来实现。也即,本实施例中,通过tgtd监视当前所述任务的实时处理结果的过程,具体可以包括:通过tgtd设置回调函数,通过所述回调函数获取当前任务的实时处理结果。
本实施例中,所述通过所述回调函数获取当前任务的实时处理结果,具体可以包括通过所述回调函数获取当前任务的实时处理进度。进一步的,所述通过所述回调函数获取当前任务的实时处理结果,还可以包括:通过所述回调函数获取当前任务的错误码。也即,本实施例中的实时处理结果具体可以包括当前任务的实时处理进度或错误码。
步骤S13:通过所述iscsi target将所述实时处理结果返回给所述tgtadm,以便所述tgtadm将所述实时处理结果显示在人机交互界面。
具体的,所述通过所述iscsi target将所述实时处理结果返回给所述tgtadm,可以包括:通过所述iscsi target并基于ipc通信方式将所述实时处理结果返回给所述tgtadm。
本申请实施例,通过tgtadm来获取块存储服务的rbd命令,并将相应的任务参数上移至iscsi target,然后通过tgtd开启专门用于处理上述任务参数对应的任务的线程,并监视实时处理结果,接着通过iscsi target将实时处理结果返回给tgtadm,以便通过tgtadm将实时处理结果显示在人机交互界面上。由此可见,本申请实施例是将rbd命令上移至了target层,这样相当于将对卷、快照、克隆的操作上移至target层来进行处理,这种情况下,如果 需要进行对卷修改、快照回滚等操作,便可以直接在target层完成相关调度即可,无需做卸载再挂载的操作,这个过程对于用户来说是无感知的,这样可以节省大量的人力,简化了流程,改善了用户体验,与此同时,大量的查询命令上移至target层之后,分布式集群减少了许多与业务无关的进程和io流,从而大幅减轻了集群负载。
参见图2所示,本申请实施例公开了一种具体的基于iscsi的分布式块存储服务命令处理方法,包括:
步骤S21:通过tgtadm获取块存储服务的rbd命令,并对所述rbd命令进行解析,以得到相应的任务参数,然后基于ipc通信方式将所述任务参数传送至iscsi target。
步骤S22:通过tgtd开启用于处理与所述任务参数对应的任务的专用线程,以及设置回调函数,并将所述回调函数和所述任务参数传送至所述块存储服务,以便所述块存储服务在与所述任务参数对应的任务进度状态有更新时通过调用所述回调函数向所述tgtd返回相应的实时处理进度。
本实施例中,iscsi target接收到任务参数后,tgtd会开启相应的任务处理专用线程,并设置回调函数,然后将回调函数和任务参数发送至块存储服务,这样一来,当块存储服务在任务参数对应的任务进度状态更新时便可以直接主动调用上述回调函数,以向tgtd返回相应的实时处理进度,实现tgtd监视当前任务的实时处理结果的目的。
步骤S23:通过所述iscsi target对所述实时处理进度进行解析并计算相应的进度百分比,然后基于ipc通信方式将所述进度百分比返回给所述tgtadm,以便所述tgtadm将所述进度百分比转换成相应的进度条并显示在人机交互界面。
本实施例中,iscsi target会对计算出与上述实时处理进度对应的进度百分比,然后通过ipc通信的方式将进度百分比发送给tgtadm。tgtadm获取到上述进度百分比之后可以转换成相应的可视化的进度条,并该进度条发送到人机交互界面上进行显示,如此一来,用户便可以非常直观、及时地获悉当前任务的处理进度情况。
图3示出了一种具体的基于iscsi的分布式块存储服务命令处理方法流程。图3中,将块存储服务的命令行参数转移在iscsi target层面重新设计,并且由tgtadm经过ipc进程间通信的方式传送至tgtd;为减少块存储服务交互对其他业务的影响,tgtd开启线程单独处理该类任务,同时将fd从epoll监听中删除,防止每次发送进度时错误触发任务;设计need_process标志是否需要进度条打印,仅有进度条需求的命令行将此标志置为true;设计progress_count在tgtadm处标记是第几次回复,tgtd每次回复时即进行progress_count++,tgtadm第一次收到时判断progress为1,即为该进度打印加上标签即为哪种命令;设计progress标记当前进度百分比,设计complete标记是否完成;tgtadm控制每次更新百分比进度,当progress_count不为1且progress不为0时,则执行以下代码:
fprintf(stdout,”%.s”,4,backspace),完成命令行显示退格;当complete标志不为true时,则执行以下代码:
fprintf(stdout,“%*u%%”,3,progress),完成进度条的打印。
图3中,iscsi target处通过tgtd设计回调函数并将该函数指针传至块存储服务,块存储服务处理任务有进度更新时调用该函数,iscsi target将解析进度并计算百分比并通过ipc socket将消息发送给tgtadm,然后tgatdm将任务进度显示至控制台的界面上。
可见,本实施例中将各个rbd命令上移至target层,在iscsi target层管理各种处理逻辑,不用取消卷映射即可对卷进行各种操作,tgtd设置回调负责接收块存储服务的进度并发送至tgtadm将通过算法将进度展示给用户,由iscsi命令返回错误码信息。也即,本实施例中,将rbd命令上移至iscsi target层,target层接收上层任务,作为rbd和用户的中间层;iscsi target间接设计回调,获取块存储服务处理进度或错误码,经过ipc通信传递给tgtadm,tgtadm通过算法将进度展示给用户,显示错误码,通过上述方案可以不用取消卷映射即可进行卷更名、卷删除等操作。
参见图4所示,本申请实施例还相应公开了一种基于iscsi的分布式块存储服务命令处理装置,包括:
命令获取模块11,用于通过tgtadm获取块存储服务的rbd命令;
命令解析模块12,用于通过所述tgtadm对所述rbd命令进行解析,以得到相应的任务参数,然后将所述任务参数传送至iscsi target;
线程开启模块13,用于通过tgtd开启用于处理与所述任务参数对应的任务的专用线程;
结果监视模块14,用于通过tgtd监视当前所述任务的实时处理结果;
结果返回模块15,用于通过所述iscsi target将所述实时处理结果返回给所述tgtadm,以便所述tgtadm将所述实时处理结果显示在人机交互界面。
本申请实施例,通过tgtadm来获取块存储服务的rbd命令,并将相应的任务参数上移至iscsi target,然后通过tgtd开启专门用于处理上述任务参数对应的任务的线程,并监视实时处理结果,接着通过iscsi target将实时处理结果返回给tgtadm,以便通过tgtadm将实时处理结果显示在人机交互界面上。由此可见,本申请实施例是将rbd命令上移至了target层,这样相当于将对卷、快照、克隆的操作上移至target层来进行处理,这种情况下,如果需要进行对卷修改、快照回滚等操作,便可以直接在target层完成相关调度即可,无需做卸载再挂载的操作,这个过程对于用户来说是无感知的,这样可以节省大量的人力,简化了流程,改善了用户体验,与此同时,大量的查询命令上移至target层之后,分布式集群减少了许多与业务无关的进程和io流,从而大幅减轻了集群负载。
在一种具体实施例中,所述命令解析模块12,包括:
命令解析单元,用于通过所述tgtadm对所述rbd命令进行解析,以得到相应的任务参数;
参数传送单元,用于通过tgtadm并基于ipc通信方式将所述任务参数传送至iscsi target。
在一种具体实施例中,所述结果返回模块15,具体用于通过所述iscsi target并基于ipc通信方式将所述实时处理结果返回给所述tgtadm,以便所述tgtadm将所述实时处理结果显示在人机交互界面。
在一种具体实施例中,所述线程开启模块13,还包括:
描述符删除单元,用于在通过tgtd开启用于处理与所述任务参数对应的任务的专用线程的时候,从epoll监听中删除fd文件描述符。
在一种具体实施例中,所述结果监视模块14,包括:
回调设置子模块,用于通过tgtd设置回调函数,通过所述回调函数获取当前任务的实时处理结果。
在一种具体实施例中,所述回调设置子模块,包括:
回调设置单元,用于通过tgtd设置回调函数;
信息传送单元,用于将所述回调函数和所述任务参数传送至所述块存储服务,以便所述块存储服务在与所述任务参数对应的任务进度状态有更新时通过调用所述回调函数向所述tgtd返回相应的实时处理进度。
在一种具体实施例中,所述结果返回模块15,具体用于通过所述iscsi target对所述实时处理进度进行解析并计算相应的进度百分比,然后将所述进度百分比返回给所述tgtadm,以便所述tgtadm将所述进度百分比转换成相应的进度条并显示在人机交互界面。
在一种具体实施例中,所述回调设置子模块,还包括:
错误码获取单元,用于通过所述回调函数获取当前任务的错误码。
进一步的,本申请实施例还提供了一种电子设备。图5是根据一示例性实施例示出的电子设备20结构图,图中的内容不能被认为是对本申请的使用范围的任何限制。
图5为本申请实施例提供的一种电子设备20的结构示意图。该电子设备20,具体可以包括:至少一个处理器21、至少一个存储器22、电源23、通信接口24、输入输出接口25和通信总线26。其中,所述存储器22用于存储计算机程序,所述计算机程序由所述处理器21加载并执行,以实现前述任一实施例公开的分布式块存储服务命令处理方法中的相关步骤。
本实施例中,电源23用于为电子设备20上的各硬件设备提供工作电压;通信接口24能够为电子设备20创建与外界设备之间的数据传输通道,其所遵循的通信协议是能够适用于本申请技术方案的任意通信协议,在此不对 其进行具体限定;输入输出接口25,用于获取外界输入数据或向外界输出数据,其具体的接口类型可以根据具体应用需要进行选取,在此不进行具体限定。
另外,存储器22作为资源存储的载体,可以是只读存储器、随机存储器、磁盘或者光盘等,其上所存储的资源包括操作系统221、计算机程序222及数据223等,存储方式可以是短暂存储或者永久存储。
其中,操作系统221用于管理与控制电子设备20上的各硬件设备以及计算机程序222,以实现处理器21对存储器22中海量数据223的运算与处理,其可以是Windows Server、Netware、Unix、Linux等。计算机程序222除了包括能够用于完成前述任一实施例公开的由电子设备20执行的分布式块存储服务命令处理方法的计算机程序之外,还可以进一步包括能够用于完成其他特定工作的计算机程序。数据223可以包括电子设备20收集到的各种数据。
进一步的,本申请实施例还公开了一种计算机可读存储介质,用于保存计算机程序,以实现前述实施例公开的基于iscsi的分布式块存储服务命令处理方法。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本申请所提供的一种分布式块存储服务命令处理方法、装置、设备及介质进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在 具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (10)

  1. 一种基于iscsi的分布式块存储服务命令处理方法,其特征在于,包括:
    通过tgtadm获取块存储服务的rbd命令,并对所述rbd命令进行解析,以得到相应的任务参数,然后将所述任务参数传送至iscsi target;
    通过tgtd开启用于处理与所述任务参数对应的任务的专用线程,并监视当前所述任务的实时处理结果;
    通过所述iscsi target将所述实时处理结果返回给所述tgtadm,以便所述tgtadm将所述实时处理结果显示在人机交互界面。
  2. 根据权利要求1所述的基于iscsi的分布式块存储服务命令处理方法,其特征在于,通过tgtadm将所述任务参数传送至iscsi target,包括:
    通过tgtadm并基于ipc通信方式将所述任务参数传送至iscsi target。
    相应的,所述通过所述iscsi target将所述实时处理结果返回给所述tgtadm,包括:
    通过所述iscsi target并基于ipc通信方式将所述实时处理结果返回给所述tgtadm。
  3. 根据权利要求1所述的基于iscsi的分布式块存储服务命令处理方法,其特征在于,在通过tgtd开启用于处理与所述任务参数对应的任务的专用线程的时候,还包括:
    从epoll监听中删除fd文件描述符。
  4. 根据权利要求1所述的基于iscsi的分布式块存储服务命令处理方法,其特征在于,通过tgtd监视当前所述任务的实时处理结果的过程,包括:
    通过tgtd设置回调函数,通过所述回调函数获取当前任务的实时处理结果。
  5. 根据权利要求4所述的基于iscsi的分布式块存储服务命令处理方法,其特征在于,所述通过tgtd设置回调函数,通过所述回调函数获取当前任务的实时处理结果,包括:
    通过tgtd设置回调函数,并将所述回调函数和所述任务参数传送至所述块存储服务,以便所述块存储服务在与所述任务参数对应的任务进度状态有更新时通过调用所述回调函数向所述tgtd返回相应的实时处理进度。
  6. 根据权利要求5所述的基于iscsi的分布式块存储服务命令处理方法,其特征在于,所述通过所述iscsi target将所述实时处理结果返回给所述tgtadm,以便所述tgtadm将所述实时处理结果显示在人机交互界面,包括:
    通过所述iscsi target对所述实时处理进度进行解析并计算相应的进度百分比,然后将所述进度百分比返回给所述tgtadm,以便所述tgtadm将所述进度百分比转换成相应的进度条并显示在人机交互界面。
  7. 根据权利要求5所述的基于iscsi的分布式块存储服务命令处理方法,其特征在于,所述通过所述回调函数获取当前任务的实时处理结果,还包括:
    通过所述回调函数获取当前任务的错误码。
  8. 一种基于iscsi的分布式块存储服务命令处理装置,其特征在于,包括:
    命令获取模块,用于通过tgtadm获取块存储服务的rbd命令;
    命令解析模块,用于通过所述tgtadm对所述rbd命令进行解析,以得到相应的任务参数,然后将所述任务参数传送至iscsi target;
    线程开启模块,用于通过tgtd开启用于处理与所述任务参数对应的任务的专用线程;
    结果监视模块,用于通过tgtd监视当前所述任务的实时处理结果;
    结果返回模块,用于通过所述iscsi target将所述实时处理结果返回给所述tgtadm,以便所述tgtadm将所述实时处理结果显示在人机交互界面。
  9. 一种电子设备,其特征在于,包括:
    存储器,用于保存计算机程序;
    处理器,用于执行所述计算机程序,以实现如权利要求1至7任一项所述的基于iscsi的分布式块存储服务命令处理方法。
  10. 一种计算机可读存储介质,其特征在于,用于保存计算机程序,以实现如权利要求1至7任一项所述的基于iscsi的分布式块存储服务命令处理方法。
PCT/CN2020/110412 2019-12-28 2020-08-21 分布式块存储服务命令处理方法、装置、设备及介质 WO2021128889A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US17/774,351 US11656802B2 (en) 2019-12-28 2020-08-21 Distributed block storage service command processing method, apparatus, device and medium

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201911384349.9A CN111176577B (zh) 2019-12-28 2019-12-28 分布式块存储服务命令处理方法、装置、设备及介质
CN201911384349.9 2019-12-28

Publications (1)

Publication Number Publication Date
WO2021128889A1 true WO2021128889A1 (zh) 2021-07-01

Family

ID=70649051

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/110412 WO2021128889A1 (zh) 2019-12-28 2020-08-21 分布式块存储服务命令处理方法、装置、设备及介质

Country Status (3)

Country Link
US (1) US11656802B2 (zh)
CN (1) CN111176577B (zh)
WO (1) WO2021128889A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111176577B (zh) * 2019-12-28 2021-11-19 浪潮电子信息产业股份有限公司 分布式块存储服务命令处理方法、装置、设备及介质
CN111866508A (zh) * 2020-07-13 2020-10-30 腾讯科技(深圳)有限公司 视频处理方法、装置、介质及电子设备
CN113542412B (zh) * 2021-07-16 2024-01-05 天翼云科技有限公司 数据传输方法、装置、电子设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106527985A (zh) * 2016-11-02 2017-03-22 郑州云海信息技术有限公司 一种基于ceph的存储交互装置及存储系统
CN108196788A (zh) * 2017-12-28 2018-06-22 新华三技术有限公司 QoS指标监测方法、装置、存储介质
CN109324927A (zh) * 2018-09-06 2019-02-12 郑州云海信息技术有限公司 一种基于分布式存储系统的虚拟机备份方法及系统
US20190354386A1 (en) * 2018-05-21 2019-11-21 International Business Machines Corporation System and method for executing virtualization software objects with dynamic storage
CN111176577A (zh) * 2019-12-28 2020-05-19 浪潮电子信息产业股份有限公司 分布式块存储服务命令处理方法、装置、设备及介质

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7870492B2 (en) * 2001-10-02 2011-01-11 Siebel Systems, Inc. Method, apparatus, and system for managing commands in a client server environment
US9384071B2 (en) * 2011-03-31 2016-07-05 Solarflare Communications, Inc. Epoll optimisations
US10102374B1 (en) * 2014-08-11 2018-10-16 Sentinel Labs Israel Ltd. Method of remediating a program and system thereof by undoing operations
US10248174B2 (en) * 2016-05-24 2019-04-02 Hedvig, Inc. Persistent reservations for virtual disk using multiple targets
CN106293522A (zh) * 2016-08-03 2017-01-04 浪潮(北京)电子信息产业有限公司 一种基于tgt的存储性能优化方法和装置
EP3693856A1 (de) * 2019-02-11 2020-08-12 Siemens Aktiengesellschaft Verfahren zum übertragen einer nachricht in einem rechensystem sowie rechensystem
WO2020186081A1 (en) * 2019-03-12 2020-09-17 Intel Corporation Computational data storage systems
CN109992433B (zh) * 2019-04-11 2021-06-29 苏州浪潮智能科技有限公司 一种分布式tgt通信优化方法、装置、设备及存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106527985A (zh) * 2016-11-02 2017-03-22 郑州云海信息技术有限公司 一种基于ceph的存储交互装置及存储系统
CN108196788A (zh) * 2017-12-28 2018-06-22 新华三技术有限公司 QoS指标监测方法、装置、存储介质
US20190354386A1 (en) * 2018-05-21 2019-11-21 International Business Machines Corporation System and method for executing virtualization software objects with dynamic storage
CN109324927A (zh) * 2018-09-06 2019-02-12 郑州云海信息技术有限公司 一种基于分布式存储系统的虚拟机备份方法及系统
CN111176577A (zh) * 2019-12-28 2020-05-19 浪潮电子信息产业股份有限公司 分布式块存储服务命令处理方法、装置、设备及介质

Also Published As

Publication number Publication date
CN111176577A (zh) 2020-05-19
US11656802B2 (en) 2023-05-23
US20220300209A1 (en) 2022-09-22
CN111176577B (zh) 2021-11-19

Similar Documents

Publication Publication Date Title
WO2021128889A1 (zh) 分布式块存储服务命令处理方法、装置、设备及介质
US11811619B2 (en) Emulating a local interface to a remotely managed storage system
US11709799B2 (en) Content or file based application virtualization using a cache
US7124139B2 (en) Method and apparatus for managing faults in storage system having job management function
US7428584B2 (en) Method for managing a network including a storage system
US11249788B2 (en) Cloud management platform, and virtual machine management method and system
US20230015095A1 (en) Database information backup method and recovery method, electronic device, and computer readable storage medium
US8412901B2 (en) Making automated use of data volume copy service targets
CN113590146B (zh) 服务器及容器升级方法
CN106557288B (zh) 一种获取打印数据的方法及装置
US20070282964A1 (en) Method and apparatus for processing remote shell commands
US20120233628A1 (en) Out-of-band host management via a management controller
KR20110083084A (ko) 가상화를 이용한 서버 운영 장치 및 방법
US10587680B2 (en) Efficient transaction level workload management across multi-tier heterogeneous middleware clusters
US20200089587A1 (en) Disaster recovery specific configurations, management, and application
US9317355B2 (en) Dynamically determining an external systems management application to report system errors
US11055079B2 (en) Systems and methods for just-in-time application implementation
US11971849B2 (en) Managing fleet of multi-tenant logical databases in relational database management system servers
JP7461318B2 (ja) データマイニングシステム、方法、装置、電子機器及び記憶媒体
US9501528B2 (en) Efficient response of common information model (CIM) server
US20240232106A1 (en) Merged input/output for accelerating directory listing phase in client drive redirection
US20230052758A1 (en) Optimized directory enumeration and data copy for client drive redirection in virtual desktops
US20200249956A1 (en) Systems and methods for just-in-time application implementation

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20907206

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20907206

Country of ref document: EP

Kind code of ref document: A1