CN115129365B - 基于ipsan实现应用程序可移植性的方法及应用 - Google Patents
基于ipsan实现应用程序可移植性的方法及应用 Download PDFInfo
- Publication number
- CN115129365B CN115129365B CN202210760223.2A CN202210760223A CN115129365B CN 115129365 B CN115129365 B CN 115129365B CN 202210760223 A CN202210760223 A CN 202210760223A CN 115129365 B CN115129365 B CN 115129365B
- Authority
- CN
- China
- Prior art keywords
- iscsi
- user
- component
- remote target
- mode
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 35
- 238000005538 encapsulation Methods 0.000 claims abstract description 14
- 230000006870 function Effects 0.000 claims description 27
- 238000004806 packaging method and process Methods 0.000 claims description 11
- 238000004891 communication Methods 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 9
- 238000013500 data storage Methods 0.000 claims description 7
- 238000002955 isolation Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 15
- 238000007726 management method Methods 0.000 description 10
- 238000012545 processing Methods 0.000 description 4
- 238000013507 mapping Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/76—Adapting program code to run in a different environment; Porting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/545—Interprogram communication where tasks reside in different layers, e.g. user- and kernel-space
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/547—Remote procedure calls [RPC]; Web services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1073—Registration or de-registration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Multimedia (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种基于IPSAN实现应用程序可移植性的方法及应用,该方法包括以下步骤:将应用程序和用户态ISCSI组件部署在容器中,以供所述用户态ISCSI组件通过socket协议与远程目标端进行通信,其中,所述用户态ISCSI组件包括:libISCSI封装函数、用户态开源库文件。该方法能够通过在容器中部署应用程序和用户态ISCSI组件,实现资源隔离、应用程序的高可移植性以及可持续部署。
Description
技术领域
本发明是关于通信领域,特别是关于一种基于IPSAN实现应用程序可移植性的方法及应用。
背景技术
现有技术是基于OPEN-ISCSI架构,由ISCSIadm工具通过本地ISCSID服务,使用ISCSI相关kernel模块,将远程的ISCSI目标端映射为本地磁盘,而后应用程序再与本地磁盘进行交互。但是在进行应用程序迁移部署时,由于应用程序对宿主机的内核版本的依赖,当迁移到底版本平台或同一架构下不同系统时,需要适配不同的系统版本,移植工作量较为复杂。
公开于该背景技术部分的信息仅仅旨在增加对本发明的总体背景的理解,而不应当被视为承认或以任何形式暗示该信息构成已为本领域一般技术人员所公知的现有技术。
发明内容
本发明的目的在于提供一种基于IPSAN实现应用程序可移植性的方法及应用,解决现有技术在应用部署时容易导致容器和宿主机的内核资源冲突,进而导致应用程序不易移植的问题。
为实现上述目的,本发明的实施例提供了一种基于IPSAN实现应用程序可移植性的方法。
在本发明的一个或多个实施方式中,所述方法包括:将应用程序和用户态ISCSI组件部署在容器中,以供所述用户态ISCSI组件通过socket协议与远程目标端进行通信,其中,所述用户态ISCSI组件包括:libISCSI封装函数、用户态开源库文件。
在本发明的一个或多个实施方式中,所述用户态ISCSI组件通过socket协议与远程目标端进行通信,包括:所述用户态ISCSI组件建立与所述远程目标端的会话,其中,所述远程目标端包括至少一个逻辑存储设备;所述用户态ISCSI组件基于所述会话将本地客户端信息发送至所述远程目标端进行注册,得到所述至少一个逻辑存储设备的信息;所述用户态ISCSI组件根据所述信息向所述逻辑存储设备发起读写请求,以完成所述应用程序的数据存储;以及所述用户态ISCSI组件注销所述至少一个逻辑存储设备,以释放存储资源。
在本发明的一个或多个实施方式中,所述方法还包括:在宿主机中部署OPEN-ISCSI服务,其中,所述OPEN-ISCSI服务查询所述远程目标端中的逻辑存储设备,并通过登录的方式与所述逻辑存储设备建立会话,以供所述OPEN-ISCSI服务与所述远程目标端进行通信。
在本发明的一个或多个实施方式中,所述方法还包括:从所述OPEN-ISCSI服务中剥离所述用户态开源库文件,并在所述用户态开源库文件中封装能读写所述远程目标端的接口;以及根据所述用户态开源库文件定义所述libISCSI封装函数,其中,所述libISCSI封装函数是可以模拟连接、登录所述远程目标端和读写数据的接口。
在本发明的另一个方面当中,提供了一种基于IPSAN实现应用程序可移植性的装置,其包括部署模块和通信模块。
部署模块,用于将应用程序和用户态ISCSI组件部署在容器中,以供所述用户态ISCSI组件通过socket协议与远程目标端进行通信,其中,所述用户态ISCSI组件包括:libISCSI封装函数、用户态开源库文件。
在本发明的一个或多个实施方式中,通信模块,用于所述用户态ISCSI组件建立与所述远程目标端的会话,其中,所述远程目标端包括至少一个逻辑存储设备;所述用户态ISCSI组件基于所述会话将本地客户端信息发送至所述远程目标端进行注册,得到所述至少一个逻辑存储设备的信息;所述用户态ISCSI组件根据所述信息向所述逻辑存储设备发起读写请求,以完成所述应用程序的数据存储;以及所述用户态ISCSI组件注销所述至少一个逻辑存储设备,以释放存储资源。
在本发明的一个或多个实施方式中,所述部署模块还用于:在宿主机中部署OPEN-ISCSI服务,其中,所述OPEN-ISCSI服务查询所述远程目标端中的逻辑存储设备,并通过登录的方式与所述逻辑存储设备建立会话,以供所述OPEN-ISCSI服务与所述远程目标端进行通信。
在本发明的一个或多个实施方式中,所述部署模块还用于:从OPEN-ISCSI中剥离所述用户态开源库文件,并在所述用户态开源库文件中封装能读写所述远程目标端的接口;以及根据所述用户态开源库文件定义所述libISCSI封装函数,其中,所述libISCSI封装函数是可以模拟连接、登录所述远程目标端和读写数据的接口。
在本发明的另一个方面当中,提供了一种电子设备,包括:至少一个处理器;以及存储器,所述存储器存储指令,当所述指令被所述至少一个处理器执行时,使得所述至少一个处理器执行如上所述的基于IPSAN实现应用程序可移植性的方法。
在本发明的另一个方面当中,提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如所述的基于IPSAN实现应用程序可移植性的方法的步骤。
与现有技术相比,根据本发明实施方式的基于IPSAN实现应用程序可移植性的方法及应用,其能够通过在容器中部署应用程序和用户态ISCSI组件,实现资源隔离、应用程序的高可移植性以及可持续部署。
附图说明
图1是根据本发明一实施方式的基于IPSAN实现应用程序可移植性的方法的流程图;
图2是根据本发明一实施方式的基于IPSAN实现应用程序可移植性的方法的结构示意图;
图3是根据本发明一实施方式的基于IPSAN实现应用程序可移植性的方法的用户态ISCSI组件通信示意图;
图4是根据本发明一实施方式的基于IPSAN实现应用程序可移植性的方法的用户态ISCSI组件建立会话示意图;
图5是根据本发明一实施方式的基于IPSAN实现应用程序可移植性的方法的用户态ISCSI组件注册设备示意图;
图6是根据本发明一实施方式的基于IPSAN实现应用程序可移植性的方法的用户态ISCSI组件数据读写示意图;
图7是根据本发明一实施方式的基于IPSAN实现应用程序可移植性的方法的用户态ISCSI组件注销设备示意图;
图8是根据本发明一实施方式的基于IPSAN实现应用程序可移植性的方法的具体流程图;
图9是根据本发明一实施方式的基于IPSAN实现应用程序可移植性的装置的结构图;
图10是根据本发明一实施方式的基于IPSAN实现应用程序可移植性的计算设备的硬件结构图。
具体实施方式
下面结合附图,对本发明的具体实施方式进行详细描述,但应当理解本发明的保护范围并不受具体实施方式的限制。
除非另有其它明确表示,否则在整个说明书和权利要求书中,术语“包括”或其变换如“包含”或“包括有”等等将被理解为包括所陈述的元件或组成部分,而并未排除其它元件或其它组成部分。
以下结合附图,详细说明本发明各实施例提供的技术方案。
实施例1
如图1至图7所示,介绍本发明的一个实施例中基于IPSAN实现应用程序可移植性的方法,该方法包括如下步骤。
在步骤S101中,将应用程序和用户态ISCSI组件部署在容器中,以供用户态ISCSI组件通过socket协议与远程目标端进行通信。
用户态ISCSI组件包括:libISCSI封装函数、用户态开源库文件。其中,用户态开源库文件是从OPEN-ISCSI套件中剥离出来的,基于c++库实现的用户态开源库文件。该用户态开源库文件封装了一套能够读写远端远程目标端设备的接口;libISCSI封装函数是基于用户态开源库文件实现一套模拟连接、登录远端设备并可以读写数据的接口,能够满足应用程序对于远端远程目标端的登录、读写需求。
如图3所示,本实施例为了提升应用程序的可移植性,降低应用程序对系统磁盘设备相关的内核驱动的依赖,提供了一套用户态的远程逻辑单元的管理套件,即用户态ISCSI组件。用户态ISCSI组件包括基于ipsan协议的远程逻辑存储设备的会话管理,远程逻辑存储设备的注册管理和注销管理以及远程逻辑存储设备的逻辑存储单元的读写管理,进而使得应用程序能够正常操作远程逻辑存储设备,不必依赖宿主机内核,直接通过socket协议与远程目标端进行通信。
具体的,用户态ISCSI组件向远程目标端(即远程逻辑存储单元阵列)发起会话后,建立与远程目标端的会话,其中,远程目标端包括至少一个逻辑存储设备,用户态ISCSI组件基于会话将本地客户端信息发送至远程目标端进行注册,得到至少一个逻辑存储设备的信息,用户态ISCSI组件根据信息向逻辑存储设备发起读写请求,以完成应用程序的数据存储,用户态ISCSI组件注销至少一个逻辑存储设备并断开用户态ISCSI组件与远程目标端的会话,以释放存储资源。
在本实施例中,用户态ISCSI组件通过socket协议直接连接到远程目标端进行数据读写,无需将远程目标端映射为本地块设备,从而避免了容器部署后应用程序对宿主机块设备管理的内核的依赖,同时降低了向容器开放全部系统权限的风险。
实施例2
如图8所示,介绍本发明的一个实施例中基于IPSAN实现应用程序可移植性的方法,该方法包括如下步骤。
在步骤S201中,在宿主机中部署OPEN-ISCSI服务。
OPEN-ISCSI是用于提供ISCSI协议映射为块设备的一组套件。现有的OPEN-ISCSI提供的功能是将远端的逻辑存储单元,映射为本地的磁盘设备。用户可以通过操作本地磁盘设备的模式读写远端逻辑单元。现有技术只有OPEN-ISCSI服务进行容器中的应用程序和远程目标端的通信,因此容器需要映射宿主机的/dev目录以及/usr/bin目录,同时需要开放全部的系统权限,来保证应用程序和ISCSIiadm交互时,涉及到的内核模块能够正常工作。
而本实施例中,将OPEN-ISCSI部署在宿主机中的同时,还需要在容器中部署用户态ISCSI组件,可以避免容器和宿主机的内核资源冲突。部署在宿主机中的OPEN-ISCSI服务查询远端存储设备,并使用登录的方式与远端存储设备建立会话进行通信,部署在宿主机中的OPEN-ISCSI服务不和容器内的应用程序进行交互,因此避免了容器和宿主机的内核资源冲突的问题。
在步骤S202中,将应用程序和用户态ISCSI组件部署在容器中,以供用户态ISCSI组件通过socket协议与远程目标端进行通信。
用户态ISCSI组件包括:libISCSI封装函数、用户态开源库文件。其中,用户态开源库文件是从OPEN-ISCSI套件中剥离出来的,基于c++库实现的用户态开源库文件。该用户态开源库文件封装了一套能够读写远端远程目标端设备的接口;libISCSI封装函数是基于用户态开源库文件实现一套模拟连接、登录远端设备并可以读写数据的接口,能够满足应用程序对于远端远程目标端的登录、读写需求。
本实施例为了提升应用程序的可移植性,降低应用程序对系统磁盘设备相关的内核驱动的依赖,提供了一套用户态的远程逻辑单元的管理套件,即用户态ISCSI组件。用户态ISCSI组件包括基于ipsan协议的远程逻辑存储设备的会话管理,远程逻辑存储设备的注册管理和注销管理以及远程逻辑存储设备的逻辑存储单元的读写管理,进而使得应用程序能够正常操作远程逻辑存储设备,不必依赖宿主机内核,直接通过socket协议与远程目标端进行通信。
具体的,用户态ISCSI组件向远程目标端(即远程逻辑存储单元阵列)发起会话后,建立与远程目标端的会话,其中,远程目标端包括至少一个逻辑存储设备,用户态ISCSI组件基于会话将本地客户端信息发送至远程目标端进行注册,得到至少一个逻辑存储设备的信息,用户态ISCSI组件根据信息向逻辑存储设备发起读写请求,以完成应用程序的数据存储,用户态ISCSI组件注销至少一个逻辑存储设备并断开用户态ISCSI组件与远程目标端的会话,以释放存储资源。
在本实施例中,用户态ISCSI组件通过socket协议直接连接到远程目标端进行数据读写,无需将远程目标端映射为本地块设备,从而避免了容器部署后应用程序对宿主机块设备管理的内核的依赖,同时降低了向容器开放全部系统权限的风险。
如图9所示,介绍根据本发明具体实施方式的基于IPSAN实现应用程序可移植性的装置。
在本发明的实施方式中,基于IPSAN实现应用程序可移植性的装置包括部署模块901和通信模块902。
部署模块901,用于将应用程序和用户态ISCSI组件部署在容器中,以供用户态ISCSI组件通过socket协议与远程目标端进行通信,其中,用户态ISCSI组件包括:libISCSI封装函数、用户态开源库文件。
通信模块902,用于用户态ISCSI组件建立与远程目标端的会话,其中,远程目标端包括至少一个逻辑存储设备;用户态ISCSI组件基于会话将本地客户端信息发送至远程目标端进行注册,得到至少一个逻辑存储设备的信息;用户态ISCSI组件根据信息向逻辑存储设备发起读写请求,以完成应用程序的数据存储;以及用户态ISCSI组件注销至少一个逻辑存储设备,以释放存储资源。
部署模块901还用于:在宿主机中部署OPEN-ISCSI服务,其中,OPEN-ISCSI服务查询远程目标端中的逻辑存储设备,并通过登录的方式与逻辑存储设备建立会话,以供OPEN-ISCSI服务与远程目标端进行通信。
部署模块901还用于:从OPEN-ISCSI中剥离用户态开源库文件,并在用户态开源库文件中封装能读写远程目标端的接口;以及根据用户态开源库文件定义libISCSI封装函数,其中,libISCSI封装函数是可以模拟连接、登录远程目标端和读写数据的接口。
图10示出了根据本说明书的实施例的用于基于IPSAN实现应用程序可移植性的计算设备100的硬件结构图。如图10所示,计算设备100可以包括至少一个处理器1001、存储器1002(例如非易失性存储器)、内存1003和通信接口1004,并且至少一个处理器1001、存储器1002、内存1003和通信接口1004经由总线1005连接在一起。至少一个处理器1001执行在存储器1002中存储或编码的至少一个计算机可读指令。
应该理解,在存储器1002中存储的计算机可执行指令当执行时使得至少一个处理器1001进行本说明书的各个实施例中以上结合图1-10描述的各种操作和功能。
在本说明书的实施例中,计算设备100可以包括但不限于:个人计算机、服务器计算机、工作站、桌面型计算机、膝上型计算机、笔记本计算机、移动计算设备、智能电话、平板计算机、蜂窝电话、个人数字助理(PDA)、手持装置、消息收发设备、可佩戴计算设备、消费电子设备等等。
根据一个实施例,提供了一种比如机器可读介质的程序产品。机器可读介质可以具有指令(即,上述以软件形式实现的元素),该指令当被机器执行时,使得机器执行本说明书的各个实施例中以上结合图1-10描述的各种操作和功能。具体地,可以提供配有可读存储介质的系统或者装置,在该可读存储介质上存储着实现上述实施例中任一实施例的功能的软件程序代码,且使该系统或者装置的计算机或处理器读出并执行存储在该可读存储介质中的指令。
根据本发明实施方式的基于IPSAN实现应用程序可移植性的方法及应用,其能够通过在容器中部署应用程序和用户态ISCSI组件,实现资源隔离、应用程序的高可移植性以及可持续部署。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
前述对本发明的具体示例性实施方案的描述是为了说明和例证的目的。这些描述并非想将本发明限定为所公开的精确形式,并且很显然,根据上述教导,可以进行很多改变和变化。对示例性实施例进行选择和描述的目的在于解释本发明的特定原理及其实际应用,从而使得本领域的技术人员能够实现并利用本发明的各种不同的示例性实施方案以及各种不同的选择和改变。本发明的范围意在由权利要求书及其等同形式所限定。
Claims (6)
1.一种基于IPSAN实现应用程序可移植性的方法,其特征在于,所述方法包括:
在宿主机中部署OPEN-ISCSI服务,其中,所述OPEN-ISCSI服务查询远程目标端中的逻辑存储设备,并通过登录的方式与所述逻辑存储设备建立会话,以供所述OPEN-ISCSI服务与所述远程目标端进行通信;
从所述OPEN-ISCSI服务中剥离用户态开源库文件,并在用户态开源库文件中封装能读写所述远程目标端的接口;以及
根据所述用户态开源库文件定义libISCSI封装函数,其中,所述libISCSI封装函数是可以模拟连接、登录所述远程目标端和读写数据的接口;
将应用程序和用户态ISCSI组件部署在容器中,以供所述用户态ISCSI组件通过socket协议与远程目标端进行通信,其中,所述用户态ISCSI组件包括:libISCSI封装函数、用户态开源库文件。
2.如权利要求1所述的基于IPSAN实现应用程序可移植性的方法,其特征在于,所述用户态ISCSI组件通过socket协议与远程目标端进行通信,包括:
所述用户态ISCSI组件建立与所述远程目标端的会话,其中,所述远程目标端包括至少一个逻辑存储设备;
所述用户态ISCSI组件基于所述会话将本地客户端信息发送至所述远程目标端进行注册,得到所述至少一个逻辑存储设备的信息;
所述用户态ISCSI组件根据所述信息向所述逻辑存储设备发起读写请求,以完成所述应用程序的数据存储;以及
所述用户态ISCSI组件注销所述至少一个逻辑存储设备,以释放存储资源。
3.一种基于IPSAN实现应用程序可移植性的装置,其特征在于,所述装置包括:
部署模块,用于在宿主机中部署OPEN-ISCSI服务,其中,所述OPEN-ISCSI服务查询远程目标端中的逻辑存储设备,并通过登录的方式与所述逻辑存储设备建立会话,以供所述OPEN-ISCSI服务与所述远程目标端进行通信;
从OPEN-ISCSI中剥离用户态开源库文件,并在所述用户态开源库文件中封装能读写所述远程目标端的接口;以及
根据所述用户态开源库文件定义libISCSI封装函数,其中,所述libISCSI封装函数是可以模拟连接、登录所述远程目标端和读写数据的接口;
将应用程序和用户态ISCSI组件部署在容器中,以供所述用户态ISCSI组件通过socket协议与远程目标端进行通信,其中,所述用户态ISCSI组件包括:libISCSI封装函数、用户态开源库文件。
4.如权利要求3所述的基于IPSAN实现应用程序可移植性的装置,其特征在于,所述装置还包括:
通信模块,用于所述用户态ISCSI组件建立与所述远程目标端的会话,其中,所述远程目标端包括至少一个逻辑存储设备;
所述用户态ISCSI组件基于所述会话将本地客户端信息发送至所述远程目标端进行注册,得到所述至少一个逻辑存储设备的信息;
所述用户态ISCSI组件根据所述信息向所述逻辑存储设备发起读写请求,以完成所述应用程序的数据存储;以及
所述用户态ISCSI组件注销所述至少一个逻辑存储设备,以释放存储资源。
5.一种电子设备,其特征在于,包括:
至少一个处理器;以及
存储器,所述存储器存储指令,当所述指令被所述至少一个处理器执行时,使得所述至少一个处理器执行如权利要求1至2中任一项所述的基于IPSAN实现应用程序可移植性的方法。
6.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至2任一项所述的基于IPSAN实现应用程序可移植性的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210760223.2A CN115129365B (zh) | 2022-06-29 | 2022-06-29 | 基于ipsan实现应用程序可移植性的方法及应用 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210760223.2A CN115129365B (zh) | 2022-06-29 | 2022-06-29 | 基于ipsan实现应用程序可移植性的方法及应用 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115129365A CN115129365A (zh) | 2022-09-30 |
CN115129365B true CN115129365B (zh) | 2024-02-06 |
Family
ID=83382406
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210760223.2A Active CN115129365B (zh) | 2022-06-29 | 2022-06-29 | 基于ipsan实现应用程序可移植性的方法及应用 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115129365B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111970249A (zh) * | 2020-07-22 | 2020-11-20 | 山西大学 | 一种基于DPDK的Modbus协议实现方法和装置 |
CN112558997A (zh) * | 2020-12-28 | 2021-03-26 | 航天信息股份有限公司 | 一种部署应用的方法及装置 |
CN113242175A (zh) * | 2021-04-29 | 2021-08-10 | 烽火通信科技股份有限公司 | 一种基于spdk的存储网关及其实现方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070198718A1 (en) * | 2006-01-27 | 2007-08-23 | Sbc Knowledge Ventures, L.P. | System and method for providing virtual access, storage and management services for IP devices via digital subscriber lines |
-
2022
- 2022-06-29 CN CN202210760223.2A patent/CN115129365B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111970249A (zh) * | 2020-07-22 | 2020-11-20 | 山西大学 | 一种基于DPDK的Modbus协议实现方法和装置 |
CN112558997A (zh) * | 2020-12-28 | 2021-03-26 | 航天信息股份有限公司 | 一种部署应用的方法及装置 |
CN113242175A (zh) * | 2021-04-29 | 2021-08-10 | 烽火通信科技股份有限公司 | 一种基于spdk的存储网关及其实现方法 |
Non-Patent Citations (4)
Title |
---|
TMN Liaison Officer.S5-99238 "Draft Standard. Framework for CORBA-Based TMN Interfaces".3GPP tsg_sa\WG5_TM.2001,(TSGS5_07),全文. * |
TMN Liaison Officer.S5-99238 "Draft Standard. Framework for CORBA-Based TMN Interfaces".3GPP tsg_sa\WG5_TM.2001,(第TSGS5_07期), * |
一种基于iSCSI的SAN的研究与实现;谢长生, 傅湘林, 韩德志, 任劲;计算机研究与发展(05);全文 * |
谢长生,傅湘林,韩德志,任劲.一种基于iSCSI的SAN的研究与实现.计算机研究与发展.2003,(05),全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN115129365A (zh) | 2022-09-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106471791B (zh) | 用于基于移动设备的集群计算架构的方法和装置 | |
US9086903B2 (en) | Managing virtual hard disk snapshots | |
CN106687975B (zh) | 可信执行环境可扩展计算装置接口 | |
US7055026B2 (en) | Method and system for a portable adaptable operating environment identity | |
US20130072260A1 (en) | Methods and apparatuses for facilitating sharing device connections | |
CN104965757A (zh) | 虚拟机热迁移的方法、虚拟机迁移管理装置及系统 | |
CN103412769A (zh) | 外接卡参数配置方法、设备以及系统 | |
TWI715762B (zh) | 虛擬機器創建方法和裝置 | |
US10949271B2 (en) | Enhanced copy-and-paste | |
US10754699B2 (en) | Remote provisioning of virtual appliances for access to virtualized storage | |
WO2020177699A1 (zh) | 小程序运行方法、计算机设备及存储介质 | |
CN109656844B (zh) | 一种AT24xx EEPROM驱动方法和装置 | |
US9672047B1 (en) | Systems and methods for accessing a bootable partition on a serial peripheral interface device | |
CN114691300A (zh) | 一种虚拟机实例的热迁移方法 | |
CN107423291B (zh) | 一种数据翻译方法以及客户端设备 | |
US9058239B2 (en) | Hypervisor subpartition as concurrent upgrade | |
WO2016176005A1 (en) | Translating operating system processes | |
US10684895B1 (en) | Systems and methods for managing containerized applications in a flexible appliance platform | |
US20210232383A1 (en) | Virtual machine update while keeping devices attached to the virtual machine | |
CN115129365B (zh) | 基于ipsan实现应用程序可移植性的方法及应用 | |
CN110427260B (zh) | 主机作业调度方法、装置及系统 | |
CN116841799A (zh) | 虚拟机备份方法、系统、设备及可读存储介质 | |
CN113986476A (zh) | 传感器设备虚拟化的方法、装置、电子设备和存储介质 | |
CN114564241A (zh) | 硬件设备的访问方法、装置、计算机设备和存储介质 | |
WO2020064000A1 (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |