镜像部署方法、装置、设备及存储介质与流程

文档序号:23628408发布日期:2021-01-12 10:41阅读:77来源:国知局
镜像部署方法、装置、设备及存储介质与流程

本申请涉及计算机技术领域,尤其涉及一种镜像部署方法、装置、设备及存储介质。



背景技术:

随着计算机技术的不断发展,企业对计算机存储性能的要求越来越高,而传统的存储协议,例如,小型计算机系统接口(internetsmallcomputersysteminterface,iscsi)已经不能满足一些特定业务场景中的需求。

为了支持数据中心的网络存储,现有技术提出了非易失性存储器(non-volatilememoryexpress,nvme)融合结构(nvmeoverfabric,nvmeof)。通过nvmeof可以实现nvme标准在高速串行计算机扩展总线标准(peripheralcomponentinterconnectexpress,pcie)上的扩展。另外,通过nvmeof还可以将nvme映射到多个结构(fabrics)传输选项,fabrics传输选项可以包括光纤通道(fibrechannel,fc)、无线带宽(infiniband,ib)、远程直接数据存取(remotedirectmemoryaccess,rdma)融合以太网(rdmaoverconvergedethernet,roce)的第二版(v2)、因特网广域rdma协议(internetwideareardmaprotocol)、传输控制协议(transmissioncontrolprotocol,tcp)等。其中,将nvme映射到多个结构(fabrics)传输选项可以使得数据中心和存储系统之间通过网络进行通信,从而使得数据中心可以访问存储系统中的nvme固态硬盘(solidstatedisk,ssd)。其中,数据中心可以包括主机。从而使得主机和存储系统之间的访问速度更快。

因此,相比于iscsi,nvmeof拥有更低的延迟,但是在替代iscsi的同时,还需要保持业务所需的功能,而现有技术中缺乏基于nvmeof在主机中自动化部署镜像的方法。



技术实现要素:

本申请实施例提供一种镜像部署方法、装置、设备及存储介质,以解决相关技术存在的问题,技术方案如下:

第一方面,本申请实施例提供了一种镜像部署方法,包括:

第一设备向数据库发送查询请求,该查询请求用于查询镜像数量;

该第一设备从该数据库中接收该镜像数量;

该第一设备根据该镜像数量,从该数据库中获取第二设备的第一地址信息;

该第一设备根据该第一地址信息,将存储系统中的镜像挂载到该第二设备中,该第二设备用于将该镜像设置为第三设备的启动项。

在一种实施方式中,该第一设备根据该镜像数量,从该数据库中获取第二设备的第一地址信息,包括:

在该镜像数量大于或等于1的情况下,该第一设备从该数据库中获取该第二设备的第一地址信息。

在一种实施方式中,该第一设备根据该镜像数量,从该数据库中获取第二设备的第一地址信息,包括:

在该镜像数量等于0的情况下,该第一设备在该存储系统中创建镜像;

该第一设备将该创建的镜像的相关信息存储到该数据库中;

该第一设备从该数据库中获取该第二设备的第一地址信息。

在一种实施方式中,该第一设备在该存储系统中创建镜像,包括:

该第一设备在该存储系统中创建镜像、设置该镜像的服务质量、以及获取该镜像的标识信息。

在一种实施方式中,该第一设备将该创建的镜像的相关信息存储到该数据库中,包括:

该第一设备将该创建的该镜像的服务质量、该镜像的标识信息存储到该数据库中。

在一种实施方式中,该方法还包括:

该第一设备向第四设备发送第一配置信息,该第一配置信息用于配置该第四设备的端口,该第四设备的该端口用于该第三设备和第五设备之间进行通信,该第五设备用于配置该第三设备的第二地址信息。

在一种实施方式中,该方法还包括:

该第一设备向该第三设备发送重启控制指令,该重启控制指令用于控制该第三设备重启,在该第三设备重启后,该第三设备用于从该第五设备获取该第二地址信息。

在一种实施方式中,该方法还包括:

该第一设备根据本地存储的该第三设备的第三地址信息与该第五设备的第四地址信息的对应关系、以及该数据库中存储的该第三地址信息与公网的第五地址信息的对应关系,确定该第四地址信息和该第五地址信息之间的对应关系。

在一种实施方式中,该方法还包括:

该第一设备向该第三设备发送第二配置信息,该第二配置信息用于将该第三设备中存储的该第四地址信息修改为该第五地址信息。

第二方面,本申请实施例提供了一种镜像部署方法,该方法包括:

第二设备接收第一设备发送的挂载指令;

该第二设备根据该挂载指令,将存储系统中的镜像挂载到该第二设备中;

该第二设备将该镜像设置为第三设备的启动项。

在一种实施方式中,该第二设备将该镜像设置为第三设备的启动项,包括:

该第二设备将该镜像映射为本地的块设备,并将该镜像设置为第三设备的启动项。

第三方面,本申请实施例提供了一种镜像部署装置,该装置包括:

发送模块,用于向数据库发送查询请求,该查询请求用于查询镜像数量;

接收模块,用于从该数据库中接收该镜像数量;

获取模块,用于根据该镜像数量,从该数据库中获取第二设备的第一地址信息;

挂载模块,用于根据该第一地址信息,将存储系统中的镜像挂载到该第二设备中,该第二设备用于将该镜像设置为第三设备的启动项。

在一种实施方式中,获取模块具体用于在该镜像数量大于或等于1的情况下,从该数据库中获取该第二设备的第一地址信息。

在一种实施方式中,该装置还包括:创建模块和存储模块;

创建模块,用于在该镜像数量等于0的情况下,在该存储系统中创建镜像;

存储模块,用于将该创建的镜像的相关信息存储到该数据库中;

获取模块具体用于从该数据库中获取该第二设备的第一地址信息。

在一种实施方式中,该装置还包括:设置模块,用于在创建模块创建镜像后设置该镜像的服务质量;获取模块还用于:获取该镜像的标识信息。

在一种实施方式中,存储模块具体用于:将该创建的该镜像的服务质量、该镜像的标识信息存储到该数据库中。

在一种实施方式中,发送模块还用于:向第四设备发送第一配置信息,该第一配置信息用于配置该第四设备的端口,该第四设备的该端口用于该第三设备和第五设备之间进行通信,该第五设备用于配置该第三设备的第二地址信息。

在一种实施方式中,发送模块还用于:向该第三设备发送重启控制指令,该重启控制指令用于控制该第三设备重启,在该第三设备重启后,该第三设备用于从该第五设备获取该第二地址信息。

在一种实施方式中,该装置还包括:确定模块,用于根据本地存储的该第三设备的第三地址信息与该第五设备的第四地址信息的对应关系、以及该数据库中存储的该第三地址信息与公网的第五地址信息的对应关系,确定该第四地址信息和该第五地址信息之间的对应关系。

在一种实施方式中,发送模块还用于:向该第三设备发送第二配置信息,该第二配置信息用于将该第三设备中存储的该第四地址信息修改为该第五地址信息。

第四方面,本申请实施例提供了一种镜像部署装置,该装置包括:

接收模块,用于接收第一设备发送的挂载指令;

挂载模块,用于根据该挂载指令,将存储系统中的镜像挂载到该第二设备中;

设置模块,用于将该镜像设置为第三设备的启动项。

在一种实施方式中,该装置还包括:映射模块,用于将该镜像映射为本地的块设备。

第五方面,本申请实施例提供了一种镜像部署设备,该设备包括:存储器和处理器。其中,该存储器和该处理器通过内部连接通路互相通信,该存储器用于存储指令,该处理器用于执行该存储器存储的指令,并且当该处理器执行该存储器存储的指令时,使得该处理器执行上述各方面任一种实施方式中的方法。

第六方面,本申请实施例提供了一种计算机可读存储介质,计算机可读存储介质存储计算机程序,当计算机程序在计算机上运行时,上述各方面任一种实施方式中的方法被执行。

上述技术方案中的优点或有益效果至少包括:通过第一设备向数据库发送查询请求,从数据库中查询镜像数量,并根据该镜像数量,从该数据库中获取第二设备的第一地址信息,进一步,根据该第二设备的第一地址信息将镜像挂载到第二设备上,第二设备可以将该镜像设置为第三设备的启动项,从而使得第一设备通过第二设备可以在第三设备中自动化的部署镜像。

上述概述仅仅是为了说明书的目的,并不意图以任何方式进行限制。除上述描述的示意性的方面、实施方式和特征之外,通过参考附图和以下的详细描述,本申请进一步的方面、实施方式和特征将会是容易明白的。

附图说明

在附图中,除非另外规定,否则贯穿多个附图相同的附图标记表示相同或相似的部件或元素。这些附图不一定是按照比例绘制的。应该理解,这些附图仅描绘了根据本申请公开的一些实施方式,而不应将其视为是对本申请范围的限制。

图1为本申请一实施例的镜像部署方法的流程图;

图2为本申请一实施例的应用场景的示意图;

图3为本申请另一实施例的镜像部署的流程图;

图4为本申请另一实施例的应用场景的示意图;

图5为本申请另一实施例的镜像部署的流程图;

图6为本申请一实施例的镜像部署装置的结构框图;

图7为本申请另一实施例的镜像部署装置的结构框图;

图8为本申请一实施例的镜像部署设备的结构框图。

具体实施方式

在下文中,仅简单地描述了某些示例性实施例。正如本领域技术人员可认识到的那样,在不脱离本申请的精神或范围的情况下,可通过各种不同方式修改所描述的实施例。因此,附图和描述被认为本质上是示例性的而非限制性的。

相比于iscsi,nvmeof拥有更低的延迟,但是在替代iscsi的同时,还需要保持业务所需的功能,而现有技术中缺乏基于nvmeof在主机中自动化部署镜像的方法。为了解决该问题,本申请实施例提供了一种镜像部署方法,具体的,可以基于nvmeof在主机中自动化的部署镜像。下面结合具体的实施例对本申请实施例提供的一种镜像部署方法进行详细介绍。

图1示出根据本申请一实施例的镜像部署方法的流程图。如图1所示,该方法可以包括:

s101、第一设备向数据库发送查询请求,该查询请求用于查询镜像数量。

本实施例所述的镜像部署方法可以适用于图2所示的应用场景。如图2所示,该应用场景中包括第一设备21、数据库22、交换机23、第二设备24、第三设备25、存储系统26。其中,第二设备24的个数不限于是一个,例如,可以是多个,此处以两个第二设备24为例进行示意性说明。同理,第三设备25的个数不限于是一个,例如,可以是多个,此处以两个第三设备25为例进行示意性说明。其中,第一设备21可以分别与数据库22和交换机23进行通信,数据库22可以集成在第一设备21中,或者第一设备21和数据库22可以相互独立。交换机23可以分别与第二设备24和存储系统26进行通信。第二设备24可以与第三设备25进行通信。

具体的,存储系统26中可包括镜像,该镜像可以是磁盘卷,该磁盘卷可以理解为存储系统26中的一个存储单元或存储空间。另外,磁盘卷还可以记为模板克隆卷。其中,数据库22中可存储有镜像数量和每个镜像的通用唯一识别码(universallyuniqueidentifier,uuid)。第一设备21具体可以是裸金属服务器(baremetalserver,bms)。第一设备21可以向数据库22发送查询请求,该查询请求用于查询镜像数量。或者,在一些实施例中,该查询请求用于查询镜像数量和每个镜像的uuid。其中,镜像数量具体可以是模板克隆卷库存数量。

s102、该第一设备从该数据库中接收该镜像数量。

在数据库22接收到该查询请求的情况下,数据库22可以将该镜像数量发送给第一设备21,相应的,第一设备21从该数据库22中接收该镜像数量。

s103、该第一设备根据该镜像数量,从该数据库中获取第二设备的第一地址信息。

如图2所示,第二设备24具体可以是roce网络接口控制器(networkinterfacecontroller,nic),网络接口控制器又可以称为网络适配器(networkadapter)、网卡(networkinterfacecard)、或局域网接收器(localareanetworkadapter),是一块被设计用来允许计算机在计算机网络上进行通讯的计算机硬件。其中,roce可以作为一种允许通过以太网进行rdma的网络协议,该网络协议的帧头部即网络头可以是以太网头,该网络协议的帧格式中的数据部分可以包括infiniband头,从而允许在标准以太网基础架构(交换机)上使用rdma,nic可以是特殊的,例如,可以是减少延迟和cpu使用率的适配器或接口卡。该适配器可以注册直接存储区,该直接存储区可以供应用程序使用,以便第三设备25可以将要传输的数据直接传递给存储系统。

例如,数据库22还可以存储有第二设备24的地址信息。第二设备24可以根据该镜像数量,从数据库22中获取第二设备24的地址信息,该地址信息具体可以是网际互连协议(internetprotocol,ip)地址,第二设备24的ip地址可以记为第一地址信息。

s104、该第一设备根据该第一地址信息,将存储系统中的镜像挂载到该第二设备中,该第二设备用于将该镜像设置为第三设备的启动项。

第一设备21可以根据第二设备24的ip地址,将存储系统中的镜像挂载到该第二设备24中,进一步,第二设备24可以将该镜像映射为本地的块设备,并将该镜像设置为第三设备25的特殊启动项。其中,第三设备25具体可以是物理服务器(physicalserver)。第二设备24例如rocenic可以是第三设备25的网卡,在这种情况下,rocenic可以设置在第三设备25中。或者,在一些实施例中,第二设备24和第三设备25可以是相互独立的设备。另外,第三设备25还可以称为主机。

本申请实施例通过第一设备向数据库发送查询请求,从数据库中查询镜像数量,并根据该镜像数量,从该数据库中获取第二设备的第一地址信息,进一步,根据该第二设备的第一地址信息将镜像挂载到第二设备上,第二设备可以将该镜像设置为第三设备的启动项,从而使得第一设备通过第二设备可以在第三设备中自动化的部署镜像。例如,在第二设备为rocenic、第一地址信息为ip地址、第三设备为主机的情况下,通过第一设备向数据库发送查询请求,从数据库中查询镜像数量,并根据该镜像数量,从该数据库中获取rocenic的ip地址,进一步,根据该rocenic的ip地址将镜像挂载到rocenic上,rocenic将该镜像设置为主机的启动项,从而使得第一设备通过rocenic可以在主机中自动化的部署镜像。

图3示出根据本申请另一实施例的镜像部署方法的流程图。如图3所示,该方法可以包括:

s301、第一设备向数据库发送查询请求,该查询请求用于查询镜像数量。

第一设备21可以向数据库22发送查询请求,该查询请求用于查询镜像数量。

s302、该第一设备从该数据库中接收该镜像数量。

在数据库22接收到该查询请求的情况下,数据库22可以将该镜像数量发送给第一设备21,相应的,第一设备21从该数据库22中接收该镜像数量。

s303、在该镜像数量大于或等于1的情况下,该第一设备从该数据库中获取该第二设备的第一地址信息。在s303之后可以执行s307。

例如,在该镜像数量大于或等于1的情况下,第一设备21可以直接从数据库22中获取该第二设备24的第一地址信息,例如,rocenic的ip地址。可以理解的是,第一设备21直接从数据库22中获取该第二设备24的第一地址信息并不限于在该镜像数量大于或等于1的情况下进行,例如,还可以在该镜像数量大于或等于2、3或其他正整数的情况下进行。本实施例中所述的该镜像数量大于或等于1只是示意性说明存储系统中有库存的镜像。另外,在第一设备21获取到该第二设备24的第一地址信息的情况下,第一设备21可以进一步执行如下所述的s307。

s304、在该镜像数量等于0的情况下,该第一设备在该存储系统中创建镜像。

例如,在该镜像数量等于0的情况下,第一设备21可以在存储系统26中创建镜像。如图2所示,第一设备21可以通过交换机23与存储系统26通信。例如,第一设备21可以通过bms应用程序接口(applicationprogramminginterface,api)与交换机23通信,存储系统26具体可以是存储区域网络(storageareanetwork,san),交换机23可以通过sanapi与san通信。从而使得第一设备21可以通过bmsapi调用sanapi,并通过sanapi在存储系统26中创建镜像。例如,第一设备21通过调用sanapi获取存储系统26中的克隆模板,进一步,第一设备21根据该克隆模板克隆新的模板克隆卷,该新的模板克隆卷为第一设备21在存储系统26中创建的镜像。其中,sanapi还可以记为存储api。其中,bmsapi可以进行磁盘卷生命周期管理、磁盘卷qos管理、roce网卡控制、nvme目标(target)控制等。

可选的,该第一设备在该存储系统中创建镜像,包括:该第一设备在该存储系统中创建镜像、设置该镜像的服务质量、以及获取该镜像的标识信息。

例如,第一设备21在存储系统26中创建镜像的情况下,第一设备21还可以设置该镜像的服务质量(qualityofservice,qos)、以及获取该镜像的标识信息,例如uuid。

s305、该第一设备将该创建的镜像的相关信息存储到该数据库中。

例如,第一设备21在存储系统26中创建镜像后,第一设备21还可以进一步将该创建的镜像的相关信息存储到该数据库22中。

可选的,该第一设备将该创建的镜像的相关信息存储到该数据库中,包括:该第一设备将该创建的该镜像的服务质量、该镜像的标识信息存储到该数据库中。

例如,第一设备21可以将其创建的镜像的qos和uuid存储到该数据库22中。在一些实施例中,第一设备21还可以更新该数据库22中的镜像(image)表,该镜像表可包括每个镜像的标识信息、以及每个镜像的标识字段,该标识字段用于标识该镜像是否被配置为服务器镜像。例如,第一设备21可以在该镜像表中将镜像配置为服务器镜像。其中,服务器镜像具体可以是物理服务器中的镜像。

s306、该第一设备从该数据库中获取该第二设备的第一地址信息。

例如,第二设备24可以从数据库22中获取第二设备24的ip地址。

s307、该第一设备根据该第一地址信息,将存储系统中的镜像挂载到该第二设备中,该第二设备用于将该镜像设置为第三设备的启动项。

例如,在该镜像数量大于或等于1的情况下,第一设备21可以根据第二设备24的ip地址,将存储系统中已有的镜像作为target挂载到该第二设备24中,其中,该存储系统可以包括多个镜像,第一设备21挂载到该第二设备24中的镜像可以是该多个镜像中的任意一个。

在该镜像数量等于0的情况下,第一设备21可以根据第二设备24的ip地址,将第一设备21在存储系统中创建的镜像作为target挂载到该第二设备24中。

本申请实施例通过在该镜像数量等于0的情况下,该第一设备在该存储系统中创建镜像,将该创建的镜像的相关信息存储到该数据库中,从该数据库中获取该第二设备的第一地址信息,根据该第一地址信息,将该创建的镜像挂载到该第二设备中,第二设备进一步将该镜像设置为第三设备的启动项,从而保证在镜像的库存数量为0的情况下还可以给第三设备例如主机正常的部署镜像,提高了镜像部署的可靠性。

例如,在一些实施例中,在图2的基础上,该应用场景中还可以包括第五设备,该第五设备具体可以是动态主机配置协议(dynamichostconfigurationprotocol,dhcp)服务器。如图4所示,第二设备24例如rocenic集成在第三设备25中,第三设备25可以通过交换机23与第五设备27进行通信。

在上述实施例的基础上,镜像部署方法还包括:该第一设备向第四设备发送第一配置信息,该第一配置信息用于配置该第四设备的端口,该第四设备的该端口用于该第三设备和第五设备之间进行通信,该第五设备用于配置该第三设备的第二地址信息。

例如,第四设备具体可以是如上所述的交换机23。例如,第一设备21还可以向交换机23发送第一配置信息,该第一配置信息配置该交换机23的端口的虚拟局域网(virtuallocalareanetwork,vlan),从而使得第三设备25和第五设备27可以通过该端口进行通信。其中,第五设备27可以给第三设备25配置第三设备25的第二地址信息,该第二地址信息可以是第三设备25的ip地址。

可选的,镜像部署方法还包括:该第一设备向该第三设备发送重启控制指令,该重启控制指令用于控制该第三设备重启,在该第三设备重启后,该第三设备用于从该第五设备获取该第二地址信息。

例如,第一设备21可以向第三设备25发送重启控制指令,在第三设备25接收到该重启控制指令的情况下,第三设备25可以根据该重启控制指令进行重启,在第三设备25重启之后,第三设备25可以通过该交换机23的端口从第五设备27获取第三设备25的ip地址。在其他一些实施例中,第一设备21还可以重新设置服务器例如第三设备25的启动项。

可选的,镜像部署方法还包括:该第一设备根据本地存储的该第三设备的第三地址信息与该第五设备的第四地址信息的对应关系、以及该数据库中存储的该第三地址信息与公网的第五地址信息的对应关系,确定该第四地址信息和该第五地址信息之间的对应关系。

例如,第一设备21的本地可以存储有第三设备25的第三地址信息与第五设备27的第四地址信息之间的对应关系或绑定关系,其中,第三设备25的第三地址信息具体可以是第三设备25的媒体存取控制(mediaaccesscontrol,mac)地址,第五设备27的第四地址信息具体可以是第五设备27的ip地址。此外,数据库22中还存储有第三设备25的mac地址与公网ip地址之间的对应关系,其中,公网ip地址可以记为公网的第五地址信息。第一设备21还可以从数据库22中获取第三设备25的mac地址与公网ip地址之间的对应关系。进一步,第一设备21可以根据其本地存储的第三设备25的mac地址与第五设备27的ip地址的对应关系、以及从数据库22中获取的第三设备25的mac地址与公网ip地址之间的对应关系,确定第五设备27的ip地址与公网ip地址之间的对应关系。

可选的,镜像部署方法还包括:该第一设备向该第三设备发送第二配置信息,该第二配置信息用于将该第三设备中存储的该第四地址信息修改为该第五地址信息。

例如,第一设备21还可以通过交换机23向第三设备25发送第二配置信息,该第二配置信息用于将第三设备25中存储的第五设备27的ip地址修改为公网ip地址,从而使得第三设备25可以与公网进行通信。具体的,第一设备21可以调用第三设备25中的bms代理(agent),并通过bms-agent配置业务ip地址,其中,配置业务ip地址的过程可以是将第三设备25中存储的第五设备27的ip地址修改为公网ip地址的过程,从而完成第三设备25的系统初始化等操作。

本申请实施例通过第一设备配置交换机的端口,使得物理服务器可以与dhcp服务器通过该端口进行通信,提高了物理服务器和dhcp服务器之间通信的可靠性,使得物理服务器可以从dhcp服务器中正常获取到物理服务器的ip地址。另外,通过第一设备对物理服务器进行重启操作,使得物理服务器在重启后可以成功获取到物理服务器的ip地址。此外,第一设备根据其本地存储的物理服务器的mac地址与dhcp服务器的ip地址之间的对应关系、以及数据库中物理服务器的mac地址与公网ip地址之间的对应关系,可以获取到dhcp服务器的ip地址与公网ip地址之间的对应关系,进一步,通过第一设备将物理服务器中存储的dhcp服务器的ip地址修改为公网ip地址,还可以使得物理服务器与公网正常通信。

图5示出根据本申请另一实施例的镜像部署方法的流程图。如图5所示,该方法可以包括:

s501、第二设备接收第一设备发送的挂载指令。

例如,第一设备21可以向数据库22发送查询请求,该查询请求用于查询镜像数量。在数据库22接收到该查询请求的情况下,数据库22可以将该镜像数量发送给第一设备21,相应的,第一设备21从该数据库22中接收该镜像数量。在该镜像数量大于或等于1的情况下,第一设备21可以直接从数据库22中获取该第二设备24的第一地址信息,例如,rocenic的ip地址。在该镜像数量等于0的情况下,第一设备21可以在存储系统26中创建镜像、设置该镜像的服务质量(qualityofservice,qos)、以及获取该镜像的标识信息,例如uuid。第一设备21在存储系统26中创建镜像后,第一设备21还可以进一步将该创建的镜像的相关信息存储到该数据库22中,以及从数据库22中获取第二设备24的ip地址。另外,在该镜像数量大于或等于1的情况下,第一设备21可以根据第二设备24的ip地址,将存储系统中已有的镜像作为target挂载到该第二设备24中,其中,该存储系统可以包括多个镜像,第一设备21挂载到该第二设备24中的镜像可以是该多个镜像中的任意一个。在该镜像数量等于0的情况下,第一设备21可以根据第二设备24的ip地址,将第一设备21在存储系统中创建的镜像作为target挂载到该第二设备24中。在具体的过载过程中,第一设备21可以向第二设备24发送挂载指令,相应的,第二设备24可以接收第一设备21发送的挂载指令,该挂载指令用于指示第二设备24将镜像挂载到该第二设备24中。

s502、该第二设备根据该挂载指令,将存储系统中的镜像挂载到该第二设备中。

例如,第二设备24可以根据该挂载指令,将存储系统中的镜像挂载到该第二设备24中。

s503、该第二设备将该镜像设置为第三设备的启动项。

进一步,第二设备24还可以将该镜像设置为第三设备25的启动项。

可选的,该第二设备将该镜像设置为第三设备的启动项,包括:该第二设备将该镜像映射为本地的块设备,并将该镜像设置为第三设备的启动项。

例如,第二设备24例如rocenic集成在第三设备25中,在第五设备27通过交换机23向第三设备25发送数据流的情况下,rocenic可以对该数据流中的数据报文进行tcprdma解封装,将镜像映射为本地的块设备,并将该镜像设置为第三设备25的特殊启动项。其中,rocenic对该数据流中的数据报文进行tcprdma解封装具体可以是rocenic进行内核旁路(kernel-bypass)的过程,即rocenic将tcp承载的数据与rdma协议进行剥离。另外,rdma作为一种主机卸载(host-offload)、主机剥离(host-bypass)技术,可以实现低延迟、高带宽的直接的内存到内存的数据通信,rdma融合以太网(roce)即rdmaoverethernet,允许通过以太网执行rdma的网络协议。这允许在标准以太网基础架构(交换机)上使用rdma,其中,网卡可以是支持roce的特殊的nic。

本申请实施例通过第一设备向数据库发送查询请求,从数据库中查询镜像数量,并根据该镜像数量,从该数据库中获取rocenic的ip地址,进一步,根据该rocenic的ip地址将镜像挂载到rocenic上,rocenic将该镜像设置为主机的启动项,从而使得第一设备通过rocenic可以在主机中自动化的部署镜像。

图6示出根据本申请一实施例的镜像部署装置的结构框图。在本申请实施例中,该镜像部署装置具体可以是如上该的第一设备或第一设备中的部件。如图6所示,该装置60可以包括:

发送模块61,用于向数据库发送查询请求,该查询请求用于查询镜像数量;

接收模块62,用于从该数据库中接收该镜像数量;

获取模块63,用于根据该镜像数量,从该数据库中获取第二设备的第一地址信息;

挂载模块64,用于根据该第一地址信息,将存储系统中的镜像挂载到该第二设备中,该第二设备用于将该镜像设置为第三设备的启动项。

可选的,获取模块63具体用于在该镜像数量大于或等于1的情况下,从该数据库中获取该第二设备的第一地址信息。

可选的,该装置60还包括:创建模块65和存储模块66;

创建模块65,用于在该镜像数量等于0的情况下,在该存储系统中创建镜像;

存储模块66,用于将该创建的镜像的相关信息存储到该数据库中;

获取模块63具体用于从该数据库中获取该第二设备的第一地址信息。

可选的,该装置60还包括:设置模块67,用于在创建模块65创建镜像后设置该镜像的服务质量;获取模块63还用于:获取该镜像的标识信息。

可选的,存储模块66具体用于:将该创建的该镜像的服务质量、该镜像的标识信息存储到该数据库中。

可选的,发送模块61还用于:向第四设备发送第一配置信息,该第一配置信息用于配置该第四设备的端口,该第四设备的该端口用于该第三设备和第五设备之间进行通信,该第五设备用于配置该第三设备的第二地址信息。

可选的,发送模块61还用于:向该第三设备发送重启控制指令,该重启控制指令用于控制该第三设备重启,在该第三设备重启后,该第三设备用于从该第五设备获取该第二地址信息。

可选的,该装置60还包括:确定模块68,用于根据本地存储的该第三设备的第三地址信息与该第五设备的第四地址信息的对应关系、以及该数据库中存储的该第三地址信息与公网的第五地址信息的对应关系,确定该第四地址信息和该第五地址信息之间的对应关系。

可选的,发送模块61还用于:向该第三设备发送第二配置信息,该第二配置信息用于将该第三设备中存储的该第四地址信息修改为该第五地址信息。

本申请实施例各装置中的各模块的功能可以参见上述方法中的对应描述,在此不再赘述。

图7示出根据本申请一实施例的镜像部署装置的结构框图。在本申请实施例中,该镜像部署装置具体可以是如上该的第二设备或第二设备中的部件。如图7所示,该装置70可以包括:

接收模块71,用于接收第一设备发送的挂载指令;

挂载模块72,用于根据该挂载指令,将存储系统中的镜像挂载到该第二设备中;

设置模块73,用于将该镜像设置为第三设备的启动项。

可选的,该装置70还包括:映射模块74,用于将该镜像映射为本地的块设备。

本申请实施例各装置中的各模块的功能可以参见上述方法中的对应描述,在此不再赘述。

图8示出根据本申请一实施例的镜像部署设备的结构框图。在本申请实施例中,该镜像部署设备具体可以是如上实施例中的第一设备或第二设备。如图8所示,该设备包括:存储器810和处理器820,存储器810内存储有可在处理器820上运行的计算机程序。处理器820执行该计算机程序时实现上述实施例中的镜像部署的方法。存储器810和处理器820的数量可以为一个或多个。

该应用程序现场还原设备还包括:

通信接口830,用于与外界设备进行通信,进行数据交互传输。

如果存储器810、处理器820和通信接口830独立实现,则存储器810、处理器820和通信接口830可以通过总线相互连接并完成相互间的通信。该总线可以是工业标准体系结构(industrystandardarchitecture,isa)总线、外部设备互连(peripheralcomponentinterconnect,pci)总线或扩展工业标准体系结构(extendedindustrystandardarchitecture,eisa)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图8中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

可选的,在具体实现上,如果存储器810、处理器820及通信接口830集成在一块芯片上,则存储器810、处理器820及通信接口830可以通过内部接口完成相互间的通信。

本申请实施例提供了一种计算机可读存储介质,其存储有计算机程序,该程序被处理器执行时实现本申请实施例中提供的方法。

本申请实施例还提供了一种芯片,该芯片包括,包括处理器,用于从存储器中调用并运行存储器中存储的指令,使得安装有芯片的通信设备执行本申请实施例提供的方法。

本申请实施例还提供了一种芯片,包括:输入接口、输出接口、处理器和存储器,输入接口、输出接口、处理器以及存储器之间通过内部连接通路相连,处理器用于执行存储器中的代码,当代码被执行时,处理器用于执行申请实施例提供的方法。

应理解的是,上述处理器可以是中央处理器(centralprocessingunit,cpu),还可以是其他通用处理器、数字信号处理器(digitalsignalprocessing,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现场可编程门阵列(fieldprogrammablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者是任何常规的处理器等。值得说明的是,处理器可以是支持进阶精简指令集机器(advancedriscmachines,arm)架构的处理器。

进一步地,可选的,上述存储器可以包括只读存储器和随机存取存储器,还可以包括非易失性随机存取存储器。该存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以包括只读存储器(read-onlymemory,rom)、可编程只读存储器(programmablerom,prom)、可擦除可编程只读存储器(erasableprom,eprom)、电可擦除可编程只读存储器(electricallyeprom,eeprom)或闪存。易失性存储器可以包括随机存取存储器(randomaccessmemory,ram),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用。例如,静态随机存取存储器(staticram,sram)、动态随机存取存储器(dynamicrandomaccessmemory,dram)、同步动态随机存取存储器(synchronousdram,sdram)、双倍数据速率同步动态随机存取存储器(doubledatadatesdram,ddrsdram)、增强型同步动态随机存取存储器(enhancedsdram,esdram)、同步连接动态随机存取存储器(synchlinkdram,sldram)和直接内存总线随机存取存储器(directrambusram,drram)。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本申请的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输。

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包括于本申请的至少一个实施例或示例中。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。

此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或隐含地包括至少一个该特征。在本申请的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。

流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分。并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能。

在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。

应理解的是,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。上述实施例方法的全部或部分步骤是可以通过程序来指令相关的硬件完成,该程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。

此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。上述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读存储介质中。该存储介质可以是只读存储器,磁盘或光盘等。

以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到其各种变化或替换,这些都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。

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