CN116881006A - 存储配置方法、装置、存储介质及电子装置 - Google Patents
存储配置方法、装置、存储介质及电子装置 Download PDFInfo
- Publication number
- CN116881006A CN116881006A CN202310871619.9A CN202310871619A CN116881006A CN 116881006 A CN116881006 A CN 116881006A CN 202310871619 A CN202310871619 A CN 202310871619A CN 116881006 A CN116881006 A CN 116881006A
- Authority
- CN
- China
- Prior art keywords
- target
- current
- service
- pvc
- configuration
- 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
- 238000000034 method Methods 0.000 title claims abstract description 53
- 230000002085 persistent effect Effects 0.000 claims abstract description 127
- 238000004590 computer program Methods 0.000 claims description 16
- 238000005516 engineering process Methods 0.000 abstract description 6
- 238000012545 processing Methods 0.000 description 14
- 230000000694 effects Effects 0.000 description 8
- 238000012217 deletion Methods 0.000 description 6
- 230000037430 deletion Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 238000012423 maintenance Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002688 persistence Effects 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
Classifications
-
- 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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5077—Logical partitioning of resources; Management or configuration of virtualized resources
-
- 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/0604—Improving or facilitating administration, e.g. storage management
-
- 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/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
-
- 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/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0662—Virtualisation aspects
- G06F3/0665—Virtualisation aspects at area level, e.g. provisioning of virtual or logical volumes
-
- 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
- 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/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
- G06F2009/4557—Distribution of virtual machine instances; Migration and load balancing
-
- 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
- G06F2009/45595—Network integration; Enabling network access in virtual machine instances
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例提供了一种存储配置方法、装置、存储介质及电子装置,其中,该方法包括:获取目标存储配置信息集合,其中,目标存储配置信息集合中包括为第一服务配置的目标持久卷信息;将目标持久卷信息与当前持久卷信息进行对比,得到对比结果,当前持久卷信息为第一服务的当前存储配置信息集合中包括的信息,当前存储配置信息集合是通过目标客户端访问目标集群内的***服务所获得,第一服务为运行于目标集群内的服务;在对比结果用于指示目标持久卷信息与当前持久卷信息不一致的情况下,基于目标持久卷信息调整第一服务的工作负载的存储配置。通过本发明,解决了相关技术中存在的存储配置的效率较低的技术问题。
Description
技术领域
本发明实施例涉及服务器技术领域,具体而言,涉及一种存储配置方法、装置、存储介质及电子装置。
背景技术
视频会议***包含了MCU(Multipoint Control Unit多点控制单元,即视频会议服务器)及软、硬终端、录播服务器等各类参与设备。终端采集图像声音并经过编码发送给MCU。MCU则根据会议要求将多个终端发送的图像进行融合或不进行融合,将声音混音或不混音后发送给各个参与终端,从而实现多方与会人的音视频通话。当下应用容器化、云化趋势明显,比较有代表性的容器编排开源生态软件包括:docker、kubernetes、rancher等。视频会议***应用也可以使用kubernetes(或简称为k8s)进行云化,进而获得更好的部署和日常运维体验。而相关技术中的kubernetes的工作负载的存储配置则非常繁琐。例如,出厂服务器一般默认使用Local存储,到达客户现场则一般可能会使用NFS共享存储,此时就需要现场技术人员调整工作负载的存储数据卷配置。而该配置调整过程要求用户先删除工作负载所有POD(kubernetes中的最小的资源管理组件或最小调度单元),后删除存储PVC(PersistenVolumeClaim,持久卷声明),再删除对应PV(PersistenVolume,持久卷),然后反之重新创建PV、PVC并重新启动对应工作负载的POD。该配置过程繁琐且容易出错。由此可见,相关技术中的存储配置的方法存在效率较低的问题。
针对相关技术中存在的存储配置的效率较低的技术问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种存储配置方法、装置、存储介质及电子装置,以至少解决相关技术中存在的存储配置的效率较低的技术问题。
根据本发明的一个实施例,提供了一种存储配置方法,包括:获取目标存储配置信息集合,其中,所述目标存储配置信息集合中包括为第一服务配置的目标持久卷信息;将所述目标持久卷信息与当前持久卷信息进行对比,得到对比结果,其中,所述当前持久卷信息为所述第一服务的当前存储配置信息集合中包括的信息,所述当前存储配置信息集合是通过目标客户端访问目标集群内的***服务所获得的,所述第一服务为运行于所述目标集群内的服务;在所述对比结果用于指示所述目标持久卷信息与所述当前持久卷信息不一致的情况下,基于所述目标持久卷信息调整所述第一服务的工作负载的存储配置。
在一个示例性实施例中,基于所述目标持久卷信息调整所述第一服务的工作负载的存储配置包括:执行配置操作,其中,所述配置操作包括将所述第一服务的工作负载的当前配置副本数置为零;在完成所述配置操作之后,删除当前持久卷声明PVC和当前持久卷PV,其中,所述当前PV用于表示所述目标集群在初始化中定义的所述第一服务所指向的存储空间,所述第一服务的工作负载通过挂载所述当前PVC将所述第一服务的工作负载的存储映射至所述当前PV上;基于所述目标持久卷信息配置目标PVC和目标PV,以及将所述第一服务的工作负载的当前配置副本数恢复为原始配置副本数,其中,所述原始配置副本数用于表示在执行所述配置操作之前的所述第一服务的工作负载的配置副本数。
在一个示例性实施例中,所述执行配置操作,包括:通过所述目标客户端访问所述目标集群内的***服务获取所述第一服务的工作负载的当前配置副本数;将所述当前配置副本数设置为零;在确定所述第一服务的工作负载的状态副本数为零的情况下,完成所述配置操作;在确定所述第一服务的工作负载的状态副本数不为零的情况下,重复执行将所述当前配置副本数设置为零的操作,直至确定出所述第一服务的工作负载的状态副本数为零为止。
在一个示例性实施例中,所述删除当前PVC和当前PV,包括:通过所述目标客户端删除所述当前PVC;在确定所述当前PVC已删除的情况下,通过所述目标客户端删除所述当前PV,在确定所述当前PVC未删除的情况下,重复执行通过所述目标客户端删除所述当前PVC的操作,直至删除所述当前PVC为止;在确定所述当前PV已删除的情况下,完成删除所述当前PVC和所述当前PV的操作,在确定所述当前PV未删除的情况下,重复执行通过所述目标客户端删除所述当前PV的操作,直至删除所述当前PV为止。
在一个示例性实施例中,所述基于所述目标持久卷信息配置目标PVC和目标PV,包括:基于所述目标持久卷信息生成目标配置参数;通过调用所述目标客户端的接口传入所述目标配置参数,以创建所述目标PV和所述目标PVC,并将所述目标PVC与所述目标PV进行绑定,其中,所述第一服务的工作负载通过挂载所述目标PVC将所述第一服务的工作负载的存储映射至所述目标PV,所述目标PV与所述当前PV的名称相同,所述目标PVC与所述当前PVC的名称相同。
在一个示例性实施例中,在所述获取目标存储配置信息集合之前,所述方法还包括:初始化所述目标集群,得到所述当前PVC和所述当前PV。
在一个示例性实施例中,所述初始化所述目标集群,得到所述当前PVC和所述当前PV,包括:设置所述目标集群对应的所述当前PV,其中,所述当前PV用于指示所述目标集群所指向的存储空间;在应用命名空间中设置所述当前PVC,并将所述当前PVC与所述当前PV进行绑定,其中,所述当前PVC用于指示所述第一服务的存储需求,所述第一服务的工作负载通过挂载所述当前PVC将所述第一服务的工作负载的存储映射至所述当前PV上。
在一个示例性实施例中,在所述获取目标存储配置信息集合之前,所述方法还包括:获取目标权限,其中,所述目标权限是在将第二服务的服务账号设置为目标账号的情况下所获得的,所述目标账号被配置为至少允许执行以下操作:为所述目标集群内的服务新增PV和新增PVC,查询所述当前PVC和所述当前PV,删除所述当前PVC和所述当前PV,查询所述第一服务的工作负载的信息,以及修改所述第一服务的工作负载的信息。
根据本发明的另一个实施例,还提供了一种存储配置装置,包括:第一获取模块,用于获取目标存储配置信息集合,其中,所述目标存储配置信息集合中包括为第一服务配置的目标持久卷信息;对比模块,用于将所述目标持久卷信息与当前持久卷信息进行对比,得到对比结果,其中,所述当前持久卷信息为所述第一服务的当前存储配置信息集合中包括的信息,所述当前存储配置信息集合是通过目标客户端访问目标集群内的***服务所获得,所述第一服务为运行于所述目标集群内的服务;调整模块,用于在所述对比结果用于指示所述目标持久卷信息与所述当前持久卷信息不一致的情况下,基于所述目标持久卷信息调整所述第一服务的工作负载的存储配置。
根据本发明的又一个实施例,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
根据本发明的又一个实施例,还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。
通过本发明,通过获取目标存储配置信息集合,其中,目标存储配置信息集合中包括为目标集群内的第一服务所配置的目标持久卷信息,再将目标持久卷信息与当前持久卷信息进行对比,得到对比结果,当对比结果表示目标持久卷信息与当前持久卷信息不一致的情况下,基于目标持久卷信息调整第一服务的工作负载的存储配置。可实现当目标持久卷信息与当前持久卷信息不一致时,根据目标持久卷信息对第一服务的工作负载的存储进行配置的目的,避免了相关技术中需要依靠人工先删除工作负载再重新创建工作负载导致配置过程繁琐的问题。因此,解决了相关技术中存在的存储配置的效率较低的技术问题,达到了提高存储配置的效率的效果。
附图说明
图1是本发明实施例的存储配置方法的移动终端硬件结构框图;
图2是根据本发明实施例的存储配置方法的流程图;
图3是根据本发明实施例的视频会议***的结构框图;
图4是根据本发明实施例的录播服务的存储配置流程图;
图5是根据本发明实施例的存储配置装置的结构框图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明的实施例。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
本申请实施例中所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。以运行在移动终端上为例,图1是本发明实施例的存储配置方法的移动终端硬件结构框图。如图1所示,移动终端可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器104,其中,上述移动终端还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述移动终端的结构造成限定。例如,移动终端还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本发明实施例中的存储配置方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至移动终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输设备106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括移动终端的通信供应商提供的无线网络。在一个实例中,传输设备106包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输设备106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
在本实施例中提供了一种存储配置方法,图2是根据本发明实施例的存储配置方法的流程图,如图2所示,该流程包括如下步骤:
步骤S202,获取目标存储配置信息集合,其中,所述目标存储配置信息集合中包括为第一服务配置的目标持久卷信息;
步骤S204,将所述目标持久卷信息与当前持久卷信息进行对比,得到对比结果,其中,所述当前持久卷信息为所述第一服务的当前存储配置信息集合中包括的信息,所述当前存储配置信息集合是通过目标客户端访问目标集群内的***服务所获得的,所述第一服务为运行于所述目标集群内的服务;
步骤S206,在所述对比结果用于指示所述目标持久卷信息与所述当前持久卷信息不一致的情况下,基于所述目标持久卷信息调整所述第一服务的工作负载的存储配置。
通过上述步骤,通过获取目标存储配置信息集合,其中,目标存储配置信息集合中包括为目标集群内的第一服务所配置的目标持久卷信息,再将目标持久卷信息与当前持久卷信息进行对比,得到对比结果,当对比结果表示目标持久卷信息与当前持久卷信息不一致的情况下,基于目标持久卷信息调整第一服务的工作负载的存储配置。可实现当目标持久卷信息与当前持久卷信息不一致时,根据目标持久卷信息对第一服务的工作负载的存储进行配置的目的,避免了相关技术中需要依靠人工先删除工作负载再重新创建工作负载导致配置过程繁琐的问题。因此,解决了相关技术中存在的存储配置的效率较低的技术问题,达到了提高存储配置的效率的效果。
其中,上述步骤的执行主体可以为服务器,如集群中的服务器或节点,或处理器,或设备端,或控制器,或设备中的应用控制程序,或者为配置在存储设备上的具备人机交互能力的处理器,或者为具备类似处理能力的处理设备或处理单元等,但不限于此。
在上述实施例中,获取目标存储配置信息集合,以视频会议***中kubernetes集群为例,如图3所示,该集群中包括多种服务器(或简称服务),例如,可包括信令服务器、媒体服务器、媒体加工任务服务器、录播服务器及录播控制服务器,根据实际视频会议***的需要,上述每种服务器可包括一个或多个,每个服务器相当于kubernetes集群中的一个节点,而以对录播服务(对应于上述第一服务)进行存储配置为例,例如,可通过读取configmap配置映射卷中的录播服务存储配置项,可获取目标存储配置信息集合,该目标存储配置信息集合中可包括持久卷PV类型(pvType)、nfsServer和nfsPath等,还可包括其他配置信息,即目标持久卷信息包括PV类型(pvType)、nfsServer和nfsPath等,这里仅以NFS的持久卷PV为例,也可以是其他类型的持久卷,例如Local;再将目标持久卷信息与当前持久卷信息进行对比,得到对比结果,其中,当前持久卷信息是第一服务(如上述录播服务)的工作负载的当前存储配置信息集合中包括的信息,当前持久卷信息是指对录播服务的存储配置进行调整前的持久卷信息,例如,当前持久卷信息可包括当前持久卷的PV类型、NFS地址、NFS路径等,当前存储配置信息集合可通过目标客户端访问目标集群内的***服务所获得;当对比结果表示目标持久卷信息与当前持久卷信息不一致时,可基于目标持久卷信息调整第一服务(如上述录播服务)的工作负载的存储配置,上述步骤的执行主体可以是视频会议***中其他服务的工作负载,目标集群中已经部署的kubernetes工作负载,如图3中的录播控制服务,本实施例中的工作负载可以理解为一种应用程序,或在硬件服务器上跑起来的应用程序,例如运行在第一服务中的应用程序。在上述步骤S206中,可以获取第一服务的工作负载信息,例如,可通过目标客户端获取第一服务的工作负载的当前配置副本数Spec.Replicas,假设第一服务的工作负载的当前配置副本数为3(或可称为原始配置副本数),可将该副本数3记录在origReplicas,以用于后续的恢复,并将当前配置副本数Spec.Replicas设置为零,再通过目标客户端删除第一服务所对应的当前PVC和当前PV,当前PVC是和当前PV绑定的,即第一服务当前的存储是指向当前PV所对应的存储设备的;在实际应用中,在对第一服务的工作负载的存储配置进行调整之前,是将当前PVC挂载到第一服务的工作负载的POD中的,在删除当前PVC和当前PV后,使用新的配置(即上述目标存储配置信息集合,或目标持久卷信息)生成新的PV的yaml配置,再利用该yaml配置通过目标客户端创建新的PV(如目标PV)和PVC(如目标PVC),再将目标PVC和目标PV进行绑定,然后,将第一服务的工作负载的配置副本数重新设置为原始配置副本数(如上述记录在origReplicas的副本数3),即将其配置副本数恢复,从而实现了基于目标持久卷信息对第一服务的工作负载的存储配置进行调整的目的。
需要说明的是,上述实施例中仅以视频会议***中kubernetes集群为例,本申请实施例也适用于其他kubernetes集群,针对需要进行存储配置的服务(如上述第一服务)的工作负载,可通过其他服务(如上述录播控制服务)获取目标持久卷信息,当目标持久卷信息与当前持久卷信息不一致时,根据目标持久卷信息对第一服务的工作负载的存储进行配置的目的。避免了相关技术中需要依靠人工先删除工作负载再重新创建工作负载导致配置过程繁琐的问题。因此,解决了相关技术中存在的存储配置的效率较低的技术问题,达到了提高存储配置的效率的效果。
在一个可选的实施例中,基于所述目标持久卷信息调整所述第一服务的工作负载的存储配置包括:执行配置操作,其中,所述配置操作包括将所述第一服务的工作负载的当前配置副本数置为零;在完成所述配置操作之后,删除当前持久卷声明PVC和当前持久卷PV,其中,所述当前PV用于表示所述目标集群在初始化中定义的所述第一服务所指向的存储空间,所述第一服务的工作负载通过挂载所述当前PVC将所述第一服务的工作负载的存储映射至所述当前PV上;基于所述目标持久卷信息配置目标PVC和目标PV,以及将所述第一服务的工作负载的当前配置副本数恢复为原始配置副本数,其中,所述原始配置副本数用于表示在执行所述配置操作之前的所述第一服务的工作负载的配置副本数。
在上述实施例中,基于目标持久卷信息调整第一服务的工作负载的存储配置包括:执行配置操作,该配置操作可包括将第一服务的工作负载的当前配置副本数置为零;再删除当前持久卷声明PVC和当前持久卷PV,然后基于目标持久卷信息配置目标PVC和目标PV,以及将第一服务的工作负载的当前配置副本数恢复为原始配置副本数,例如,原始配置副本数是指在执行配置操作之前的第一服务的工作负载的配置副本数,例如原始配置副本数为3,这样在基于目标持久卷信息配置目标PVC和目标PV后,将第一服务的工作负载的当前配置副本数恢复为3。上述目标PV用于表示对第一服务的工作负载的存储配置进行调整后的目标集群的所指向的存储空间,目标PVC用于表示目标集群中的服务(包括第一服务)的存储要求或存储声明,目标PVC与目标PV是进行绑定的。例如,当前PV对应的是Local存储,目标PV对应的是NFS存储,此处仅作为一种示例,本申请实施例对此不作限制。仍以上述录播控制服务执行本实施例的上述步骤为例,在实际应用中,目标集群在进行初始化时可为录播控制服务定义合适的RBAC权限,例如,可创建服务账号ServiceAccount,假设名为ssa,并对应配置ClusterRole和ClusterRoleBinding的RBAC权限,为其添加PV的增删改查,PVC的增删改查,apps的deployments、statefulset等的查改列等权限,再将录播控制服务的ServiceAccount设置为ssa。通过本实施例,可实现通过集群中已有工作负载(如上述录播控制服务)添加第一服务(如上述录播服务)的工作负载的存储配置逻辑的目的。
在一个可选的实施例中,所述执行配置操作,包括:通过所述目标客户端访问所述目标集群内的***服务获取所述第一服务的工作负载的当前配置副本数;将所述当前配置副本数设置为零;在确定所述第一服务的工作负载的状态副本数为零的情况下,完成所述配置操作;在确定所述第一服务的工作负载的状态副本数不为零的情况下,重复执行将所述当前配置副本数设置为零的操作,直至确定出所述第一服务的工作负载的状态副本数为零为止。
在上述实施例中,可通过目标客户端访问目标集群内的***服务以获取第一服务的工作负载的当前配置副本数,在实际应用中,目标集群在进行初始化时可为录播控制服务定义合适的RBAC权限,例如,可创建服务账号ServiceAccount,假设名为ssa,并对应配置ClusterRole和ClusterRoleBinding的RBAC权限,为其添加PV的增删改查,PVC的增删改查,apps的deployments、statefulset等的查改列等权限,再将录播控制服务的ServiceAccount设置为ssa,录播控制服务可通过服务账号ServiceAccount创建集群内kubernetes API客户端,以用于访问目标集群内的kube-apiserver,这样,可通过目标客户端获取第一服务的工作负载的当前配置副本数,例如当前配置副本数为3,该当前配置副本数可理解为目标集群中3个节点(或服务器)上都在跑同一个应用程序;再将当前配置副本数设置为0,然后确定第一服务的工作负载的状态副本数是否为0,当确定第一服务的工作负载的状态副本数为0时,完成配置操作,而当第一服务的工作负载的状态副本数不为0时,则等待配置副本数生效,例如等待若干秒继续执行将当前配置副本数设置为0的操作,直到第一服务的工作负载的状态副本数等于0为止。通过本实施例,实现了调整第一服务的工作负载的配置副本数并确定配置副本数生效的目的。
在一个可选的实施例中,所述删除当前PVC和当前PV,包括:通过所述目标客户端删除所述当前PVC;在确定所述当前PVC已删除的情况下,通过所述目标客户端删除所述当前PV,在确定所述当前PVC未删除的情况下,重复执行通过所述目标客户端删除所述当前PVC的操作,直至删除所述当前PVC为止;在确定所述当前PV已删除的情况下,完成删除所述当前PVC和所述当前PV的操作,在确定所述当前PV未删除的情况下,重复执行通过所述目标客户端删除所述当前PV的操作,直至删除所述当前PV为止。
在上述实施例中,可通过目标客户端删除当前PVC,在实际应用中,目标集群在进行初始化时可为录播控制服务定义合适的RBAC权限,例如,可创建服务账号ServiceAccount,假设名为ssa,并对应配置ClusterRole和ClusterRoleBinding的RBAC权限,为其添加PV的增删改查,PVC的增删改查,apps的deployments、statefulset等的查改列等权限,再将录播控制服务的ServiceAccount设置为ssa,录播控制服务可通过服务账号ServiceAccount创建集群内kubernetes API客户端,以用于访问目标集群内的kube-apiserver,这样,目标客户端可删除当前PVC,以及在确定当前PVC已删除的情况下,通过目标客户端删除当前PV,例如,可通过目标客户端获取当前PVC状态,若当前PVC依然存在则等待当前PVC删除生效,等待若干秒继续执行删除当前PVC的操作,直至确定当前PVC已删除,在确定当前PVC已删除的情况下,通过目标客户端删除当前PV,同样可通过目标客户端获取当前PV状态,若当前PV依然存在则等待当前PV删除生效,等待若干秒继续执行删除当前PV的操作,直至确定当前PV已删除为止。通过本实施例,实现了通过目标客户端自动删除当前PVC和当前PV的目的,避免了相关技术中需要通过人工删除工作负载所有POD、删除当前PVC以及删除对应的当前PV等造成的配置过程繁琐的问题。
在一个可选的实施例中,所述基于所述目标持久卷信息配置目标PVC和目标PV,包括:基于所述目标持久卷信息生成目标配置参数;通过调用所述目标客户端的接口传入所述目标配置参数,以创建所述目标PV和所述目标PVC,并将所述目标PVC与所述目标PV进行绑定,其中,所述第一服务的工作负载通过挂载所述目标PVC将所述第一服务的工作负载的存储映射至所述目标PV,所述目标PV与所述当前PV的名称相同,所述目标PVC与所述当前PVC的名称相同。
在上述实施例中,可基于目标持久卷信息生成目标配置参数,例如,目标持久卷信息可包括前述PV类型(pvType)、nfsServer和nfsPath等,这里仅以NFS的持久卷PV为例,也可以是其他类型的持久卷,例如Local;可使用目标持久卷信息PV类型(pvType)、nfsServer和nfsPath生成新的PV的目标配置参数,再通过调用目标客户端的接口传入目标配置参数,并依次创建目标PV和目标PVC,目标PV的名称(例如record)与当前PV的名称(例如record)相同,目标PVC的名称(例如record)与当前PVC的名称(例如record)相同,因为第一服务的工作负载的存储配置在调整之前,第一服务的工作负载是将名为record的PVC(对应当前PVC)挂载到第一服务的工作负载的POD中的。通过本实施例,实现了基于目标持久卷信息创建目标PV和目标PVC以及将目标PVC和目标PV进行绑定的目的。
在一个可选的实施例中,在所述获取目标存储配置信息集合之前,所述方法还包括:初始化所述目标集群,得到所述当前PVC和所述当前PV。
在上述实施例中,在获取目标存储配置信息集合之前,可初始化目标集群,得到当前PVC和当前PV,例如,在对第一服务的工作负载的存储配置进行调整之前,先对目标集群进行初始化,初始化可包括定义当前PV,以及在应用命名空间中定义当前PVC,并将当前PVC和当前PV进行绑定。
在一个可选的实施例中,所述初始化所述目标集群,得到所述当前PVC和所述当前PV,包括:设置所述目标集群对应的所述当前PV,其中,所述当前PV用于指示所述目标集群所指向的存储空间;在应用命名空间中设置所述当前PVC,并将所述当前PVC与所述当前PV进行绑定,其中,所述当前PVC用于指示所述第一服务的存储需求,所述第一服务的工作负载通过挂载所述当前PVC将所述第一服务的工作负载的存储映射至所述当前PV上。
在上述实施例中,对目标集群进行初始化可包括设置当前PV,当前PV用于表示目标集群所指向的存储空间,例如NFS存储,或Local存储,以及在应用命名空间中定义当前PVC,当前PVC用于表示目标集群中的第一服务的存储需求或存储声明,通常目标集群中包括多个服务,不同的服务可能使用不同的存储空间区域或存储设备,因此,不同的服务也可能使用不同的PVC,上述当前PVC至少包含第一服务的存储要求,并将当前PVC和当前PV进行绑定,目标集群中包括上述第一服务,且第一服务的工作负载通过挂载当前PVC将第一服务的工作负载的存储映射至当前PV上。
在一个可选的实施例中,在所述获取目标存储配置信息集合之前,所述方法还包括:获取目标权限,其中,所述目标权限是在将第二服务的服务账号设置为目标账号的情况下所获得的,所述目标账号被配置为至少允许执行以下操作:为所述目标集群内的服务新增PV和新增PVC,查询所述当前PVC和所述当前PV,删除所述当前PVC和所述当前PV,查询所述第一服务的工作负载的信息,以及修改所述第一服务的工作负载的信息。
在上述实施例中,在获取目标存储配置信息集合之前,获取目标权限,本实施例中的第二服务可以是前述实施例中的录播控制服务,即录播控制服务先获取目标权限,例如,目标集群在初始化时,还可创建服务账号ServiceAccount,假设名为ssa,并对应配置ClusterRole和ClusterRoleBinding的RBAC权限,为其添加PV的增删改查,PVC的增删改查,apps的deployments、statefulset等的查改列等权限,再将录播控制服务的ServiceAccount设置为ssa,这样录播控制服务(即上述第二服务)获得目标权限。本实施例中,目标账号被配置为至少具备以下权限:为目标集群内的服务新增PV和新增PVC,查询当前PVC和当前PV,删除当前PVC和当前PV,查询第一服务的工作负载的信息,以及修改第一服务的工作负载的信息,例如查询和修改第一服务的工作负载的当前副本数。通过本实施例,通过为集群内的既有工作负载(如上述第二服务)定义合适的权限,即可实现对第一服务的工作负载的存储进行配置的目的。
显然,上述所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。下面结合实施例对本发明进行具体说明。
下面以视频会议***的Kubernetes集群的工作负载的存储配置为例进行说明,图3是根据本发明实施例的视频会议***的结构框图,如图3所示,视频会议***包括信令服务、媒体服务、媒体加工任务、录播服务、录播控制服务等,终端可以是参加视频会议的终端设备,例如,该终端具备采集声音、图像的能力,录播服务可对正在进行的视频会议进行录播,而存储设备(例如NFS存储设备,或其它存储设备)可对视频会议的录播提供存储服务。
本发明实施例提供了一种存储配置方法,例如,对录播服务的存储进行配置。
1、首先对Kubernetes集群的初始化进行说明,Kubernetes集群初始化逻辑包括以下几方面:
(1)Kubernetes存储定义持久卷PV,名称为record;
(2)应用命名空间中定义持久卷声明PVC,名称为record,并绑定名为record持久卷PV;
(3)应用命名空间中的录播服务工作负载名称为ss,并添加现有数据卷,将名为record的PVC挂载到ss的POD中,该工作负载类型可以是deployment、statefulset、daemonset等不做限制;
(4)创建ServiceAccount,名为ssa,并对应配置ClusterRole和ClusterRoleBinding的RBAC权限,为其添加PV的增删改查,PVC的增删改查,apps的deployments、statefulset等的查改列等权限。
(5)将既有的工作负载录播控制服务的ServiceAccount设置为ssa,该工作负载类型可以是deployment、statefulset、daemonset等不做限制。
需要说明的是,上述持久卷PV的名称、持久卷声明PVC的名称、录播服务工作负载名称仅为一种示例,以及ServiceAccount的名称也仅为一种示例。
2、本发明实施例中可通过录播控制服务对录播服务的存储进行配置,图4是根据本发明实施例的录播服务的存储配置流程图,现结合图4对录播控制服务添加录播服务存储配置逻辑说明如下:
S402,读取configmap配置映射卷中的录播存储配置项,包括PV类型pvType、nfsServer和nfsPath等;
S404,使用ServiceAccount创建集群内kubernetes API客户端kc,用于访问集群内的kube-apiserver;
S406,使用kc获取当前名为record的持久卷PV信息,包括PV类型、NFS地址、NFS路径等,与最新存储配置项pvType、nfsServer、nfsPath进行比较,若无差异,则跳转到15;
S408,使用kc获取当前名为ss的录播服务的工作负载信息,若ss不存在,则跳转15;
S410,从ss工作负载信息中获取并记录名为ss的工作负载的当前配置副本数Spec.Replicas到origReplicas;
S412,使用kc将名为ss的工作负载的配置副本数Spec.Replicas设置为0;
S414,使用kc获取ss工作负载的状态副本数Status.Replicas,若不为0,则等待配置副本数生效,等待若干秒跳转6,若为0则继续;
S416,使用kc删除名为record的PVC;
S418,使用kc获取名为record的PVC状态,若PVC依然存在则等待PVC删除生效,等待若干秒跳转8,否则继续;
S420,使用kc删除名为record的PV;
S422,使用kc获取名为record的PV状态,若PV依然存在则等待PV删除生效,等待若干秒跳转10,否则继续;
S424,使用新的配置pvType,nfsServer和nfsPath生成新的PV的yaml配置,并使用该yaml配置通过kc创建名为record的PV;
S426,使用kc创建名为record的PVC,并绑定名为record的PV;
S428,使用kc更新名为ss(即录播服务)的工作负载,将其配置副本数恢复,即将ss工作负载的Spec.Replicas设置为origReplicas中保存的值;
S430,存储配置更新结束。
在上述实施例中,通过为集群内的既有工作负载A(如上述录播控制服务)定义合适的RBAC权限,添加工作负载B(如上述录播服务)的存储配置逻辑,包括调整工作负载B的配置副本数并检测B状态副本数,实现了集群内工作负载B的存储配置的自动调整,简化了***部署工作复杂度。
需要说明的是,1)本发明实施例提供的存储配置的方法不仅仅适用于类型为NFS的持久卷PV配置调整,其他类型的持久卷如Local等也可以套用其中,也可通过如上逻辑变更持久卷类型。2)录播控制服务的录播服务存储配置逻辑可在录播控制服务重新部署时一次性触发,也可通过API WATCH configmap方式、或集群内消息通讯方式来动态触发。3)录播存储配置信息pvType,nfsServer和nfsPath可存放在kubernetes自带的configmap中,也可以存放在redis、mysql等其他数据库中,或磁盘配置文件中,对此不做限定。
与相关技术相比,本发明实施例具有以下优势:1)无需人工删除并重建工作负载,无需人工删除其POD,无需人工删除PV及PVC,用户只需通过修改几个存储配置项,即可实现已部署的kubernetes工作负载存储配置的调整。大大简化了kubernetes集群部署及日常运维的复杂度;2)无需额外的集群管理单元节点,达到减少额外部署成本和硬件成本的效果;3)无需开放集群访问控制权限到kubernetes集群外,可有效避免集群权限泄露的风险。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明每个实施例所述的方法。
在本实施例中还提供了一种存储配置装置,图5是根据本发明实施例的存储配置装置的结构框图,如图5所示,该装置包括:
第一获取模块502,用于获取目标存储配置信息集合,其中,所述目标存储配置信息集合中包括为第一服务配置的目标持久卷信息;
对比模块504,用于将所述目标持久卷信息与当前持久卷信息进行对比,得到对比结果,其中,所述当前持久卷信息为所述第一服务的当前存储配置信息集合中包括的信息,所述当前存储配置信息集合是通过目标客户端访问目标集群内的***服务所获得的,所述第一服务为运行于所述目标集群内的服务;
调整模块506,用于在所述对比结果用于指示所述目标持久卷信息与所述当前持久卷信息不一致的情况下,基于所述目标持久卷信息调整所述第一服务的工作负载的存储配置。
在一个可选的实施例中,上述调整模块506包括:执行单元,用于执行配置操作,其中,所述配置操作包括将所述第一服务的工作负载的当前配置副本数置为零;删除单元,用于在完成所述配置操作之后,删除当前持久卷声明PVC和当前持久卷PV,其中,所述当前PV用于表示所述目标集群在初始化中定义的所述第一服务所指向的存储空间,所述第一服务的工作负载通过挂载所述当前PVC将所述第一服务的工作负载的存储映射至所述当前PV上;第一处理单元,用于基于所述目标持久卷信息配置目标PVC和目标PV,以及将所述第一服务的工作负载的当前配置副本数恢复为原始配置副本数,其中,所述原始配置副本数用于表示在执行所述配置操作之前的所述第一服务的工作负载的配置副本数。
在一个可选的实施例中,上述执行单元包括:获取子单元,用于通过所述目标客户端访问所述目标集群内的***服务获取所述第一服务的工作负载的当前配置副本数;设置子单元,用于将所述当前配置副本数设置为零;第一处理子单元,用于在确定所述第一服务的工作负载的状态副本数为零的情况下,完成所述配置操作;第二处理子单元,用于在确定所述第一服务的工作负载的状态副本数不为零的情况下,重复执行将所述当前配置副本数设置为零的操作,直至确定出所述第一服务的工作负载的状态副本数为零为止。
在一个可选的实施例中,上述删除单元包括:第一删除子单元,用于通过所述目标客户端删除所述当前PVC;第二删除子单元,用于在确定所述当前PVC已删除的情况下,通过所述目标客户端删除所述当前PV,在确定所述当前PVC未删除的情况下,重复执行通过所述目标客户端删除所述当前PVC的操作,直至删除所述当前PVC为止;第三处理子单元,用于在确定所述当前PV已删除的情况下,完成删除所述当前PVC和所述当前PV的操作,在确定所述当前PV未删除的情况下,重复执行通过所述目标客户端删除所述当前PV的操作,直至删除所述当前PV为止。
在一个可选的实施例中,上述第一处理单元包括:生成子单元,用于基于所述目标持久卷信息生成目标配置参数;第四处理子单元,用于通过调用所述目标客户端的接口传入所述目标配置参数,以创建所述目标PV和所述目标PVC,并将所述目标PVC与所述目标PV进行绑定,其中,所述第一服务的工作负载通过挂载所述目标PVC将所述第一服务的工作负载的存储映射至所述目标PV,所述目标PV与所述当前PV的名称相同,所述目标PVC与所述当前PVC的名称相同。
在一个可选的实施例中,上述装置还包括:初始化模块,用于在所述获取目标存储配置信息集合之前,初始化所述目标集群,得到所述当前PVC和所述当前PV。
在一个可选的实施例中,上述初始化模块包括:设置单元,用于设置所述目标集群对应的所述当前PV,其中,所述当前PV用于指示所述目标集群所指向的存储空间;第二处理单元,用于在应用命名空间中设置所述当前PVC,并将所述当前PVC与所述当前PV进行绑定,其中,所述当前PVC用于指示所述第一服务的存储需求,所述第一服务的工作负载通过挂载所述当前PVC将所述第一服务的工作负载的存储映射至所述当前PV上。
在一个可选的实施例中,上述装置还包括:第二获取模块,用于在所述获取目标存储配置信息集合之前,获取目标权限,其中,所述目标权限是在将第二服务的服务账号设置为目标账号的情况下所获得的,所述目标账号被配置为至少允许执行以下操作:为所述目标集群内的服务新增PV和新增PVC,查询所述当前PVC和所述当前PV,删除所述当前PVC和所述当前PV,查询所述第一服务的工作负载的信息,以及修改所述第一服务的工作负载的信息。
需要说明的是,上述每个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述每个模块以任意组合的形式分别位于不同的处理器中。
本发明的实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
在一个示例性实施例中,上述计算机可读存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
本发明的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
在一个示例性实施例中,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
本实施例中的具体示例可以参考上述实施例及示例性实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成每个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (11)
1.一种存储配置方法,其特征在于,包括:
获取目标存储配置信息集合,其中,所述目标存储配置信息集合中包括为第一服务配置的目标持久卷信息;
将所述目标持久卷信息与当前持久卷信息进行对比,得到对比结果,其中,所述当前持久卷信息为所述第一服务的当前存储配置信息集合中包括的信息,所述当前存储配置信息集合是通过目标客户端访问目标集群内的***服务所获得的,所述第一服务为运行于所述目标集群内的服务;
在所述对比结果用于指示所述目标持久卷信息与所述当前持久卷信息不一致的情况下,基于所述目标持久卷信息调整所述第一服务的工作负载的存储配置。
2.根据权利要求1所述的方法,其特征在于,基于所述目标持久卷信息调整所述第一服务的工作负载的存储配置包括:
执行配置操作,其中,所述配置操作包括将所述第一服务的工作负载的当前配置副本数置为零;
在完成所述配置操作之后,删除当前持久卷声明PVC和当前持久卷PV,其中,所述当前PV用于表示所述目标集群在初始化中定义的所述第一服务所指向的存储空间,所述第一服务的工作负载通过挂载所述当前PVC将所述第一服务的工作负载的存储映射至所述当前PV上;
基于所述目标持久卷信息配置目标PVC和目标PV,以及将所述第一服务的工作负载的当前配置副本数恢复为原始配置副本数,其中,所述原始配置副本数用于表示在执行所述配置操作之前的所述第一服务的工作负载的配置副本数。
3.根据权利要求2所述的方法,其特征在于,所述执行配置操作,包括:
通过所述目标客户端访问所述目标集群内的***服务获取所述第一服务的工作负载的当前配置副本数;
将所述当前配置副本数设置为零;
在确定所述第一服务的工作负载的状态副本数为零的情况下,完成所述配置操作;
在确定所述第一服务的工作负载的状态副本数不为零的情况下,重复执行将所述当前配置副本数设置为零的操作,直至确定出所述第一服务的工作负载的状态副本数为零为止。
4.根据权利要求2所述的方法,其特征在于,所述删除当前PVC和当前PV,包括:
通过所述目标客户端删除所述当前PVC;
在确定所述当前PVC已删除的情况下,通过所述目标客户端删除所述当前PV,在确定所述当前PVC未删除的情况下,重复执行通过所述目标客户端删除所述当前PVC的操作,直至删除所述当前PVC为止;
在确定所述当前PV已删除的情况下,完成删除所述当前PVC和所述当前PV的操作,在确定所述当前PV未删除的情况下,重复执行通过所述目标客户端删除所述当前PV的操作,直至删除所述当前PV为止。
5.根据权利要求2所述的方法,其特征在于,所述基于所述目标持久卷信息配置目标PVC和目标PV,包括:
基于所述目标持久卷信息生成目标配置参数;
通过调用所述目标客户端的接口传入所述目标配置参数,以创建所述目标PV和所述目标PVC,并将所述目标PVC与所述目标PV进行绑定,其中,所述第一服务的工作负载通过挂载所述目标PVC将所述第一服务的工作负载的存储映射至所述目标PV,所述目标PV与所述当前PV的名称相同,所述目标PVC与所述当前PVC的名称相同。
6.根据权利要求2至5中任一项所述的方法,其特征在于,在所述获取目标存储配置信息集合之前,所述方法还包括:
初始化所述目标集群,得到所述当前PVC和所述当前PV。
7.根据权利要求6所述的方法,其特征在于,所述初始化所述目标集群,得到所述当前PVC和所述当前PV,包括:
设置所述目标集群对应的所述当前PV,其中,所述当前PV用于指示所述目标集群所指向的存储空间;
在应用命名空间中设置所述当前PVC,并将所述当前PVC与所述当前PV进行绑定,其中,所述当前PVC用于指示所述第一服务的存储需求,所述第一服务的工作负载通过挂载所述当前PVC将所述第一服务的工作负载的存储映射至所述当前PV上。
8.根据权利要求2至5中任一项所述的方法,其特征在于,在所述获取目标存储配置信息集合之前,所述方法还包括:
获取目标权限,其中,所述目标权限是在将第二服务的服务账号设置为目标账号的情况下所获得的,所述目标账号被配置为至少允许执行以下操作:为所述目标集群内的服务新增PV和新增PVC,查询所述当前PVC和所述当前PV,删除所述当前PVC和所述当前PV,查询所述第一服务的工作负载的信息,以及修改所述第一服务的工作负载的信息。
9.一种存储配置装置,其特征在于,包括:
第一获取模块,用于获取目标存储配置信息集合,其中,所述目标存储配置信息集合中包括为第一服务配置的目标持久卷信息;
对比模块,用于将所述目标持久卷信息与当前持久卷信息进行对比,得到对比结果,其中,所述当前持久卷信息为所述第一服务的当前存储配置信息集合中包括的信息,所述当前存储配置信息集合是通过目标客户端访问目标集群内的***服务所获得的,所述第一服务为运行于所述目标集群内的服务;
调整模块,用于在所述对比结果用于指示所述目标持久卷信息与所述当前持久卷信息不一致的情况下,基于所述目标持久卷信息调整所述第一服务的工作负载的存储配置。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被处理器执行时实现所述权利要求1至8任一项中所述的方法的步骤。
11.一种电子装置,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现所述权利要求1至8任一项中所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310871619.9A CN116881006A (zh) | 2023-07-14 | 2023-07-14 | 存储配置方法、装置、存储介质及电子装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310871619.9A CN116881006A (zh) | 2023-07-14 | 2023-07-14 | 存储配置方法、装置、存储介质及电子装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116881006A true CN116881006A (zh) | 2023-10-13 |
Family
ID=88271096
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310871619.9A Pending CN116881006A (zh) | 2023-07-14 | 2023-07-14 | 存储配置方法、装置、存储介质及电子装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116881006A (zh) |
-
2023
- 2023-07-14 CN CN202310871619.9A patent/CN116881006A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107819828B (zh) | 数据传输方法、装置、计算机设备和存储介质 | |
CN111343698B (zh) | 投屏控制方法、装置、无线控制器及存储介质 | |
CN109618176B (zh) | 一种直播业务的处理方法、设备和存储介质 | |
CN109408132A (zh) | 一种配置文件处理方法及服务器、用户终端、存储介质 | |
KR20170073605A (ko) | 합성 파티션 함수 제공 기법 | |
CN109344006A (zh) | 一种镜像管理方法及镜像管理模块 | |
WO2014116527A1 (en) | Method and system for using a recursive event listener on a node in hierarchical data structure | |
CN104168309A (zh) | 基于云服务的数据备份与操作方法 | |
CN102722428A (zh) | 一种备份和恢复通讯录的方法、装置 | |
CN106850720A (zh) | 软件升级方法、装置及*** | |
CN116204438A (zh) | 测试用例生成方法、自动化测试方法和相关装置 | |
CN110865981A (zh) | 用于移动终端的文件访问方法及其移动终端 | |
CN103237074A (zh) | 一种智能终端之间的数据交互方法及*** | |
CN116881006A (zh) | 存储配置方法、装置、存储介质及电子装置 | |
CN105307130A (zh) | 一种资源分配方法及*** | |
CN112988879A (zh) | 访问数据库的方法、***、装置、存储介质及处理器 | |
CN116150273A (zh) | 数据处理方法、装置、计算机设备及存储介质 | |
CN113268272B (zh) | 基于私有云的应用交付方法、装置及*** | |
CN111711639B (zh) | 终端、数据传输方法、***、和计算机可读存储介质 | |
CN111767345B (zh) | 建模数据同步方法、装置、计算机设备及可读存储介质 | |
CN114415960A (zh) | 盘组的确定方法、装置、存储介质及电子装置 | |
CN110971923B (zh) | 一种弹幕连接方法、存储介质、***及客户端 | |
CN113852919B (zh) | 预警消息的生成方法和装置、存储介质及电子装置 | |
CN113934552A (zh) | 功能代码的确定方法及装置、存储介质、电子装置 | |
CN113127292A (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 |