CN111045854B - 用于管理服务容器的方法、设备和计算机可读介质 - Google Patents

用于管理服务容器的方法、设备和计算机可读介质 Download PDF

Info

Publication number
CN111045854B
CN111045854B CN201811191506.XA CN201811191506A CN111045854B CN 111045854 B CN111045854 B CN 111045854B CN 201811191506 A CN201811191506 A CN 201811191506A CN 111045854 B CN111045854 B CN 111045854B
Authority
CN
China
Prior art keywords
service
backup
containers
configuration file
service containers
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
Application number
CN201811191506.XA
Other languages
English (en)
Other versions
CN111045854A (zh
Inventor
李勃
胥剑旭
代文豪
蒋毅
周忠毅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
EMC Corp
Original Assignee
EMC IP Holding Co LLC
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 EMC IP Holding Co LLC filed Critical EMC IP Holding Co LLC
Priority to CN201811191506.XA priority Critical patent/CN111045854B/zh
Priority to US16/285,150 priority patent/US11314524B2/en
Publication of CN111045854A publication Critical patent/CN111045854A/zh
Application granted granted Critical
Publication of CN111045854B publication Critical patent/CN111045854B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1469Backup restoration techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1461Backup scheduling policy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/82Solving problems relating to consistency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/84Using snapshots, i.e. a logical point-in-time copy of the data

Abstract

本公开涉及用于管理服务容器的方法、设备和计算机程序产品。根据本公开的示例性实现,提供了一种用于管理一组服务容器的方法。在该方法中,响应于接收到针对待生成的一组服务容器的备份需求,基于备份需求建立用于生成一组服务容器的配置文件,配置文件包括用于安装针对一组服务容器执行备份操作的备份代理的脚本;向服务容器管理系统中的至少一个节点加载用于初始化一组服务容器的映像文件以创建一组基本运行环境;以及向一组基本运行环境部署配置文件以生成一组服务容器,以使得生成的一组服务容器中的相应服务容器包括的相应备份代理针对生成的一组服务容器执行备份操作。进一步,提供了一种用于管理一组服务容器的设备和计算机程序产品。

Description

用于管理服务容器的方法、设备和计算机可读介质
技术领域
本公开的各实现方式涉及数据管理,更具体地,涉及用于管理服务容器的方法、设备和计算机程序产品。
背景技术
随着计算机技术的发展,数据备份技术已经被广泛地用于管理各种类型的应用程序。目前,越来越多的应用是基于“容器”技术来开发的。在此的容器是一种用于封装服务的技术,该技术允许开发者可以将应用相关联的各种服务进行封装。为简单起见,在下文中可以将服务容器简称为容器。进一步,各种类型的容器可以作为后续开发的模块,例如,应用程序可以基于一个或多个容器来开发。
在各种应用系统运行期间,经常会需要针对应用程序中的数据执行备份操作,以便当应用程序中出现故障或者其他情况时可以基于备份数据来恢复应用程序。由于服务容器是应用程序的基础,如何以更为安全并且可靠的方式来管理服务容器成为一个研究热点。
发明内容
因而,期望能够开发并实现一种以更为有效的方式来管理服务容器的技术方案。期望该技术方案能够与现有的应用环境相兼容,并且通过改造现有应用环境的各种配置,来以更为有效的方式管理服务容器。
根据本公开的第一方面,提供了一种用于管理服务容器的方法。在该方法中,响应于接收到针对待生成的一组服务容器的备份需求,基于备份需求建立用于生成一组服务容器的配置文件,配置文件包括用于安装针对一组服务容器执行备份操作的备份代理的脚本;向服务容器管理系统中的至少一个节点加载用于初始化一组服务容器的映像文件以创建一组基本运行环境;以及向一组基本运行环境部署配置文件以生成一组服务容器,以使得生成的一组服务容器中的相应服务容器包括的相应备份代理针对生成的一组服务容器执行备份操作。
根据本公开的第二方面,提供了一种用于管理服务容器的方法。在该方法中,在服务容器管理系统处加载用于初始化待生成的一组服务容器的映像文件以形成一组基本运行环境;响应于接收到用于生成一组服务容器的配置文件,向一组基本运行环境部署配置文件以生成一组服务容器,以使得生成的一组服务容器中的相应服务容器包括的相应备份代理针对生成的一组服务容器执行备份操作,其中配置文件包括用于安装针对一组服务容器执行备份操作的备份代理的脚本,以及配置文件是基于针对待生成的一组服务容器的备份需求而建立的。
根据本公开的第三方面,提供了一种用于管理服务容器的设备,包括:至少一个处理器;易失性存储器;以及与至少一个处理器耦合的存储器,存储器具有存储于其中的指令,指令在被至少一个处理器执行时使得设备执行动作。该动作包括:响应于接收到针对待生成的一组服务容器的备份需求,基于备份需求建立用于生成一组服务容器的配置文件,配置文件包括用于安装针对一组服务容器执行备份操作的备份代理的脚本;向服务容器管理系统中的至少一个节点加载用于初始化一组服务容器的映像文件以创建一组基本运行环境;以及向一组基本运行环境部署配置文件以生成一组服务容器,以使得生成的一组服务容器中的相应服务容器包括的相应备份代理针对生成的一组服务容器执行备份操作。
根据本公开的第四方面,提供了一种用于管理服务容器的设备,包括:至少一个处理器;易失性存储器;以及与至少一个处理器耦合的存储器,存储器具有存储于其中的指令,指令在被至少一个处理器执行时使得设备执行动作,动作包括:在服务容器管理系统处加载用于初始化待生成的一组服务容器的映像文件以形成一组基本运行环境;响应于接收到用于生成一组服务容器的配置文件,向一组基本运行环境部署配置文件以生成一组服务容器,以使得生成的一组服务容器中的相应服务容器包括的相应备份代理针对生成的一组服务容器执行备份操作,其中配置文件包括用于安装针对一组服务容器执行备份操作的备份代理的脚本,以及配置文件是基于针对待生成的一组服务容器的备份需求而建立的。
根据本公开的第五方面,提供了一种计算机程序产品,计算机程序产品被有形地存储在非瞬态计算机可读介质上并且包括机器可执行指令,机器可执行指令用于执行根据本公开的第一方面的方法。
根据本公开的第六方面,提供了一种计算机程序产品,计算机程序产品被有形地存储在非瞬态计算机可读介质上并且包括机器可执行指令,机器可执行指令用于执行根据本公开的第二方面的方法。
附图说明
结合附图并参考以下详细说明,本公开各实现方式的特征、优点及其他方面将变得更加明显,在此以示例性而非限制性的方式示出了本公开的若干实现方式。在附图中:
图1示意性示出了本公开的实现方式可以被应用于其中的应用环境的框图;
图2示意性示出了根据本公开的一个实现方式的用于管理一个服务容器的框图;
图3示意性示出了根据本公开的一个实现方式的用于管理一组服务容器的方法的流程图;
图4示意性示出了根据本公开的一个实现方式的配置文件的框图;
图5示意性示出了根据本公开的一个实现方式的用于管理一组服务容器的框图;
图6示意性示出了根据本公开的一个实现方式的用于管理一组服务容器的框图;
图7示意性示出了根据本公开的一个实现方式的用于管理一组服务容器的方法的流程图;
图8示意性示出了根据本公开的一个实现方式的在与管理一组服务容器相关联的多个组件之间的交互的框图;以及
图9示意性示出了根据本公开的示例性实现的用于管理服务容器的设备的框图。
具体实施方式
下面将参照附图更详细地描述本公开的优选实现。虽然附图中显示了本公开的优选实现,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实现所限制。相反,提供这些实现是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
在本文中使用的术语“包括”及其变形表示开放性包括,即“包括但不限于”。除非特别申明,术语“或”表示“和/或”。术语“基于”表示“至少部分地基于”。术语“一个示例实现”和“一个实现”表示“至少一个示例实现”。术语“另一实现”表示“至少一个另外的实现”。术语“第一”、“第二”等等可以指代不同的或相同的对象。下文还可能包括其他明确的和隐含的定义。
随着云技术的发展,越来越多的应用程序是基于“容器”技术来开发的。具体地,对于互联网上的用于在线销售的应用而言,该应用可以涉及用于控制显示界面的界面服务以及用于控制后台有关库存等统计数据的数据库服务。开发人员可以将界面服务封装至界面容器中,而将数据库服务封装至数据库容器中。此时,可以分别调用界面容器和数据库容器,以便创建在线销售应用。
随着容器的种类和数量的逐渐增加,目前的服务容器管理系统110和部署器(deployer)150已经可以以集中式方式来管理多个容器。图1示意性示出了本公开的实现方式可以被应用于其中的应用环境100的框图。如图1所示,服务容器管理系统110可以包括节点120,在节点120可以包括分组130、…、140。如图1所示,分组130可以包括容器132,备选地,该分组130还可以包括一个或多个其他容器。分组140可以包括容器142,备选地,该分组140还可以包括一个或多个其他容器。将会理解,图1仅仅示意性示出了应用环境100的示例。在其他示例中,服务容器管理系统110可以包括一个或多个节点120,每个节点可以包括一个或多个分组,并且每个分组可以包括一个或多个容器。
部署器150可以用于向服务容器管理系统110部署容器。具体地,部署器150可以基于映像(image)文件(例如,用于创建容器的基本运行环境的docker映像)以及Docker文件(例如,用于安装与待生成容器相关联的服务的脚本文件)来生成相应的容器132和142等(如箭头162和160所示)。
在应用的运行过程中,应用所涉及的一个或多个容器可能会出现故障,此时通常的做法是将容器恢复到出现故障之前的最近的正常状态。然而,目前仅能向每个容器中逐一安装备份程序,并且由所安装的备份程序来独立地备份容器的状态。通常而言,服务容器管理系统110中可以包括数千甚至上万的容器,此时逐一向每个容器安装备份程序并执行备份,将会造成极大的时间和计算资源开销。随着容器的种类和数量的日益增加,如何以更为可靠并且有效的方式来管理服务容器管理系统110中的各个容器,成为一个研究热点。
为了至少部分地解决现有技术方案中的问题,根据本公开的示例性实现方式,提出了一种用于管理服务容器的方法、装置和计算机程序产品。在下文中将参见图2概括描述本公开的示例性实施方式。图2示意性示出了根据本公开的一个实现方式的用于管理一个服务容器的框图200。如图2所示,根据本公开的示例性实现,可以建立用于生成容器132的配置文件220,在此的配置文件220包括用于安装针对待生成的容器132执行备份操作的备份代理(backup agency)230的脚本。以此方式,备份代理230即可针对容器132中的各种数据执行备份操作。继而,如箭头242所示,备份数据可以从备份代理230发送至备份服务器210;备选地,备份代理230还可以从备份服务器210接收备份数据,以用于将容器132恢复至相应的状态。
将会理解,尽管在图2中仅示意性示出了一个容器132,上述方法还可以被用于管理一组待生成的容器。此时,可以建立用于生成一组容器的配置文件,在此的配置文件包括用于安装针对待生成的一组容器执行备份操作的备份代理的脚本。例如,继续上文的界面容器和数据库容器的示例,可以分别建立用于界面容器以及用于数据库容器的配置文件。利用上述配置文件,可以生成一组界面容器和一组数据库容器,此时所生成的每个容器中均包括用于针对该容器执行备份操作的备份代理。
利用上述示例性实现,在生成一组服务容器的过程期间,可以将用于针对服务容器执行备份操作的备份代理嵌入到所生成的服务容器中。因而,在该组服务容器被生成之后,这些服务容器即具有备份功能。因而,不必针对一组服务容器中的每个服务容器逐一安装备份代理,进而可以以更为高效并且可靠的方式来管理多个服务容器。通常而言,服务容器管理系统110中的服务容器的数量将会达到数千,此时可以以统一方式管理各个服务容器,进而大大降低用于针对每个容器单独执行备份操作的时间开销。
在下文中,将参见图3详细描述用于管理服务容器的方法的更多细节。图3示意性示出了根据本公开的一个实现方式的用于管理一组服务容器的方法300的流程图。在框310处,确定是否接收到针对待生成的一组服务容器的备份需求。在此的备份需求可以包括多方面的内容,例如,可以包括有关备份代理的各方面信息,又例如还可以包括有关备份服务器相关联的信息。如果确定接收到备份需求,则该方法300前进至框320。
在框320处,可以基于备份需求建立用于生成一组服务容器的配置文件220。将会理解,在此的配置文件220包括用于安装针对一组服务容器执行备份操作的备份代理230的脚本。在下文中,将参见图4描述有关脚本的更多细节。图4示意性示出了根据本公开的一个实现方式的配置文件的示意图400。如图4所示,在配置文件220的开始处,脚本片段410用于启动与安装备份代理230相关联的基本功能。脚本片段420用于将备份代理230的安装程序“Avamar”拷贝至临时路径中以便用于安装。如图4中所示,在此的安装程序的名称为AvamarClient-linux-sles11-x86_64-7.5.101-101.rpm,并且该安装程序被拷贝至\tmp目录中以形成临时文件AvamarClient-linux-x86_64-7.5.101-101.rpm。接着,脚本片段430用于运行tmp目录中的安装程序,以便生成容器132的过程中安装备份代理230。
将会理解,由于备份代理230需要与外部的备份服务器210通信,以便在备份服务器210和容器132之间传输备份数据。因而,在配置文件中还需要定义用于在备份代理230和备份服务器230之间传输数据的端口。具体地,参见配置文件220中的后续脚本片段,其中脚本片段440用于开启安全外壳(SSH)协议的端口,脚本片段450用于开启输入端口(inbondport),脚本片段450用于开启输出端口(outbond port)。进一步,脚本片段470用于启动与备份代理230相关联的各种服务。利用上述示例性实现,可以逐步向配置文件220中添加有关安装备份代理230的各方面的设置,进而确保备份代理230的正确安装和运行。
将会理解,图4仅仅示意性示出了配置文件220的一个简单示例,在其他实现方式中,配置文件220还可以包括不同的脚本。例如,基于备份代理230的安装程序的不同,脚本片段420和430中可以包括不同的内容。例如,假设安装程序名称为“Avamar-v1.0”,则此时脚本片段420可以包括“ADD Avamar-v1.0.rpm\/tmp/Avamar-v1.0.rpm”,并且脚本片段430可以包括“RUN rpm-ivh/tmp/ADD Avamar-v1.0.rpm”。进一步,基于备份代理230与备份服务器210的网络配置,在配置文件220中还可以定义其他的端口来用于传输数据。
根据本公开的示例性实现,在此的配置文件220还可以包括安装与容器相关联的操作的脚本。继续上文的示例,对于界面容器而言,配置文件220可以包括安装与界面服务相关联的操作的脚本、以及安装针对该界面容器执行备份操作的备份代理的脚本。对于数据库容器而言,配置文件220可以包括安装与数据库服务相关联的操作的脚本、以及安装针对该数据库容器执行备份操作的备份代理的脚本。
返回图3,在框330处,还可以向服务容器管理系统110中的至少一个节点加载用于初始化一组服务容器的映像文件154以创建一组基本运行环境。在此的映像文件154例如用于建立基本的Linux运行环境。在服务容器管理系统110的节点处,在已经接收到映像文件154的情况下,可以运行映像文件154以便在服务容器管理系统110的节点中创建相应的基本运行环境。将会理解,在此的基本运行环境可以提供Linux的最基本的功能,并且可以为后续运行配置文件220中的脚本提供支持。
继而在框340处,向一组基本运行环境部署配置文件220以生成一组服务容器。在此所生成的一组服务容器中的相应服务容器包括的相应备份代理针对生成的一组服务容器执行备份操作。
根据本公开的示例性实现,可以首先向至少一个节点发送指示,以使得在一组基本运行环境中运行配置文件中包括的脚本以生成一组服务容器。将会理解,在此的基本运行环境仅包括用于实现服务容器的最基本的功能。继而,通过在基本运行环境中运行用于安装备份代理的脚本,可以逐步完成备份代理的多方面的配置,进而获得可以用于执行备份操作的备份代理230。
在下文中,将参见图5描述有关生成容器的更多细节。图5示意性示出了根据本公开的一个实现方式的用于管理一组服务容器的框图500。如图5所示,在部署器150中可以包括分别用于生成界面容器510的配置文件530以及用于生成数据库容器520的配置文件532。此时,配置文件530和532是分别基于不同的备份需求而生成的。
为了生成界面容器510和数据库容器520,部署器150首先将映像文件154传输至服务容器管理系统110中的节点120,以用于在节点120中建立基本运行环境。继而,如箭头526和516所示,部署器150还可以分别将配置文件530和532传输至节点120,以便在已经建立的基本运行环境中运行配置文件530和532中包括的脚本。具体地,在一个基本运行环境中运行配置文件532中包括的脚本,可以生成包括备份代理512的界面容器510;在另一基本运行环境中运行配置文件530中包括的脚本,可以生成包括备份代理522的数据库容器520。
以此方式,当在线销售应用是基于界面容器510和数据库容器520开发时,则可以基于界面容器510和数据库容器520的备份来备份该在线销售应用的状态。例如,经由箭头514和524所示,界面容器510和数据库容器520可以分别经由备份代理512和522来与备份服务器210进行通信,以便传输与备份相关的数据。
根据本公开的示例性实现,还可以用户对于容器可能会存在不同的备份需求。例如,对于界面容器510而言,可以使用不同安装程序以便在生成的界面容器中安装不同的备份代理。此时,可以按照不同的备份需求来针对相同类型的容器生成不同的配置文件。在下文中,将参见图6描述更多细节。
图6示意性示出了根据本公开的一个实现方式的用于管理一组服务容器的框图600。图6中左侧部分的内容类似于图5中相对应的部分,而右侧部分示出了用于生成界面容器610和数据库容器620的过程。如图6所示,部署器150可以包括分别用于生成界面容器510和数据库容器520的配置文件530和532,另外,部署器150可以包括分别用于生成界面容器610和数据库容器620的配置文件630和632。
为了生成界面容器610和数据库容器620,部署器150首先将映像文件154传输至服务容器管理系统110中的节点120,以用于在节点120中建立基本运行环境。继而,如箭头626和616所示,部署器150还可以分别将配置文件630和632传输至节点120,以便在已经建立的基本运行环境中运行配置文件630和632中包括的脚本。
具体地,在一个基本运行环境中运行配置文件632中包括的脚本,可以生成包括备份代理612的界面容器610;在另一基本运行环境中运行配置文件630中包括的脚本,可以生成包括备份代理622的数据库容器620。将会理解,尽管上述示例示出了界面容器510和610、数据库容器520和620处于相同节点120的情况,根据本公开的示例性实现,上述容器可以位于一个或多个节点。
根据本公开的示例性实现,配置文件220进一步包括与备份操作相关联的备份策略。假设已经在节点120处生成了一组界面容器,此时每个界面容器可以具有定制的备份策略。在此的备份策略例如可以指定用于执行备份操作的触发条件以及备份服务器210的有关配置等。例如,一个界面容器的备份策略可以定义在每天夜间执行备份,而另一界面容器的备份策略可以定义在每天白天执行备份。可以向一组服务容器中的至少一部分服务容器所在的节点发送指示,以使得一组服务容器中的至少一部分服务容器基于备份策略执行备份操作。
将会理解,一组服务容器中的各个服务容器可以具有相同的备份策略。备选地,各个服务容器还可以具有不同的备份策略。根据本公开的示例性实现,备份策略例如可以包括执行备份的时间。例如,为了避免在备份服务器处210出现过高的工作负载,备份策略可以定义在夜间针对一部分服务容器执行备份操作,而在日间对另一部分服务容器执行备份操作。此时,通过向各个服务容器发送相应的备份策略,可以使得各个服务容器按照预定义的备份策略来执行备份操作。以此方式,可以按照定制的方式来针对各个服务容器执行备份操作。例如,可以基于各个服务容器的属性来将各个服务容器进行分组,并且针对每个分组执行相应的备份操作。
根据本公开的示例性实现,当检测到一组服务容器中的给定服务容器中出现故障,还可以执行相应的故障处理操作。将会理解,在一组服务容器的运行期间,部署器150可以监视一组服务容器的操作状态。备选地和/或附加地,部署器150可以接收来自监视器的监视结果。此时,除了基于备份服务器中的备份数据恢复容器以外,还可以由部署器150来重新生成服务容器来替换出现故障的服务容器。具体地,向故障服务器所在的节点加载映像文件154以形成基本运行环境。继而,可以向基本运行环境部署配置文件以生成新的服务容器,以使得生成的新的服务容器包括的备份代理针对生成的新的服务容器执行备份操作。
继续参见图6,假设现有的在线销售应用是基于界面容器510和数据库容器520实现的,并且在界面容器510中出现故障。此时,部署器150可以重新向故障的服务容器所在的节点120加载映像文件154以形成基本运行环境。继而,可以向基本运行环境部署配置文件530以生成新的服务容器。在此生成的新的服务容器包括的备份代理针对生成的新的服务容器执行备份操作,并且新的服务容器可以替换故障的界面容器510。根据本公开的示例性实现,可以回收界面容器510所占用的各种资源。
利用上述示例性实现,可以在发现一组服务容器中出现故障时,通过重新在出现故障的节点处加载映像文件并部署配置文件,来生成新的服务容器。进而,可以确保服务容器服务器中的各个节点处的服务容器的正常运行。
在上文中已经参见图2至图6描述了在部署器150处执行的方法的细节,在下文中将参见图7描述在服务容器管理系统110处执行的方法。图7示意性示出了根据本公开的一个实现方式的用于管理一组服务容器的方法700的流程图。在框710处,可以在服务容器管理系统110处加载用于初始化待生成的一组服务容器的映像文件154以形成一组基本运行环境。在框720处,可以确定是否接收到用于生成一组服务容器的配置文件220。如果确定接收到配置文件220,则方法700前进至框730处。
在框730处,向一组基本运行环境部署配置文件220以生成一组服务容器,以使得生成的一组服务容器中的相应服务容器包括的相应备份代理针对生成的一组服务容器执行备份操作。将会理解,在此的配置文件220包括用于安装针对一组服务容器执行备份操作的备份代理230的脚本,以及配置文件220是基于针对待生成的一组服务容器的备份需求而建立的。
将会理解,图7所示出的在服务容器管理系统110中执行的方法700可以与如图3所示的在部署器150处执行的方法协调操作,以便生成包括备份代理230的容器132。利用上述示例性实现,可以并行地在服务容器管理系统110中的一个或多个节点上生成一组服务容器,并且此时所生成的一组服务容器中已经被嵌入了用于备份生成的一组服务容器的功能。因而,不必针对一组服务容器中的每个服务容器逐一安装备份代理,进而可以以更为高效并且可靠的方式来管理多个服务容器。通常而言,服务容器管理系统110中的服务容器的数量将会达到数百甚至上千,此时可以以统一方式管理各个服务容器,进而大大降低用于执行备份操作的时间开销。
根据本公开的示例性实现,配置文件220可以包括多方面的内容。例如,配置文件220可以包括:用于设置备份代理230的环境的配置脚本;用于安装备份代理230的安装脚本;以及用于设置备份代理230的通信端口的设置脚本。在上文中已经参见图4描述了配置文件220中的各个脚本片段的细节,在此将不再赘述。
根据本公开的示例性实现,可以在一组基本运行环境中运行配置文件中包括的脚本以生成一组服务容器。在此示例性实现中,在服务容器管理系统110中可以包括多个基本运行环境,并且可以并行地在多个基本运行环境中运行用于生成界面容器510和数据库容器520的脚本,以便生成相应的容器。
根据本公开的示例性实现,配置文件220进一步包括与备份操作相关联的备份策略。在一组服务容器中的各个服务容器处,可以利用服务容器中的备份代理,基于备份策略来针对服务容器执行备份操作。例如,界面容器510中的备份代理512可以基于界面备份策略来对界面容器510执行备份操作。继续上文在线销售应用的示例,由于界面对于在线销售应用的数据安全性影响较小,用于界面的备份策略可以定义每天执行一次备份。又例如,数据库容器520中的备份代理522可以基于数据库备份策略来对数据库容器520执行备份操作。由于数据库对于在线销售应用的数据安全性影响较大,用于数据库的备份策略可以指定每小时执行一次备份。
根据本公开的示例性实现,可以利用备份代理230遍历容器132的目录,在此的目录即文件系统中的目录。继而,可以向与备份代理230相关联的备份服务器310来传输各个目录下的数据,以便实现备份。根据本公开的示例性实现,当在容器132中出现故障并且期望执行恢复操作时,容器132可以向备份服务器210请求指定版本的备份数据,并用于恢复操作。
在下文中,将参见图8描述用于管理一组服务容器的详细交互过程。图8示意性示出了根据本公开的一个实现方式的在与管理一组服务容器相关联的多个组件之间的交互的框图800。如图8所示,如箭头810所示,部署器150可以接收到的备份需求,并基于备份需求来建立配置文件220(如箭头812所示)。如箭头814所示,部署器150可以向节点120发送映像文件154和配置文件220。当节点120接收到映像文件154后,可以基于映像文件154来创建基本运行环境。如箭头818所示,通过在基本运行环境上运行配置文件220,可以生成服务容器132。
继而,如箭头820所示,所生成的服务容器132可以基于其内部的备份代理230来获取备份数据。如箭头822所示,可以从节点120处的备份代理230向备份服务器210发送备份数据。如箭头824所示,备份服务器210可以存储备份数据,并且在需要时(例如,接收到来自节点120处的备份代理的请求),而向节点120发送备份数据(如箭头826所示)。
在上文中已经参见图2至图8详细描述了根据本公开的方法的示例,在下文中将描述相应的设备的实现。根据本公开的示例性实现,提供了一种用于管理服务容器的装置。该装置包括:建立模块,配置用于响应于接收到针对待生成的一组服务容器的备份需求,基于备份需求建立用于生成一组服务容器的配置文件,配置文件包括用于安装针对一组服务容器执行备份操作的备份代理的脚本;加载模块,配置用于向服务容器管理系统中的至少一个节点加载用于初始化一组服务容器的映像文件以创建一组基本运行环境;以及部署模块,配置用于向一组基本运行环境部署配置文件以生成一组服务容器,以使得生成的一组服务容器中的相应服务容器包括的相应备份代理针对生成的一组服务容器执行备份操作。
根据本公开的示例性实现,建立模块配置用于:向配置文件加入用于设置备份代理的环境的配置脚本;向配置文件加入用于安装备份代理的安装脚本;以及向配置文件加入用于设置备份代理的通信端口的设置脚本。
根据本公开的示例性实现,部署模块配置用于向至少一个节点发送指示,以使得在一组基本运行环境中运行配置文件中包括的脚本以生成一组服务容器。
根据本公开的示例性实现,配置文件进一步包括与备份操作相关联的备份策略。
根据本公开的示例性实现,装置进一步包括指示模块,配置用于向一组服务容器中的至少一部分服务容器所在的节点发送指示,以使得至少一部分服务容器基于备份策略执行备份操作。
根据本公开的示例性实现,装置进一步包括故障处理模块,配置用于:响应于检测到一组服务容器中的给定服务容器中出现故障,向给定服务容器所在的节点加载映像文件以形成基本运行环境;以及向基本运行环境部署配置文件以生成新的服务容器,以使得生成的新的服务容器包括的备份代理针对生成的新的服务容器执行备份操作。
根据本公开的示例性实现,提供了一种用于管理服务容器的装置。该装置包括:加载模块,配置用于模块,配置用于在服务容器管理系统处加载用于初始化待生成的一组服务容器的映像文件以形成一组基本运行环境;部署模块,配置用于响应于接收到用于生成一组服务容器的配置文件,向一组基本运行环境部署配置文件以生成一组服务容器,以使得生成的一组服务容器中的相应服务容器包括的相应备份代理针对生成的一组服务容器执行备份操作,其中配置文件包括用于安装针对一组服务容器执行备份操作的备份代理的脚本,以及配置文件是基于针对待生成的一组服务容器的备份需求而建立的。
根据本公开的示例性实现,配置文件包括:用于设置备份代理的环境的配置脚本;用于安装备份代理的安装脚本;以及用于设置备份代理的通信端口的设置脚本。
根据本公开的示例性实现,装置进一步包括运行模块,配置用于在一组基本运行环境中运行配置文件中包括的脚本以生成一组服务容器。
根据本公开的示例性实现,配置文件进一步包括与备份操作相关联的备份策略。
根据本公开的示例性实现,装置进一步包括:备份模块,配置用于在一组服务容器中的服务容器处,利用服务容器中的备份代理,基于备份策略来针对服务容器执行备份操作。
根据本公开的示例性实现,备份模块进一步配置用于利用备份代理遍历服务容器的目录;以及向与备份代理相关联的备份服务器来传输目录下的数据。
图9示意性示出了根据本公开的示例性实现的用于管理存储系统的设备900的框图。如图所示,设备900包括中央处理单元(CPU)901,其可以根据存储在只读存储器(ROM)902中的计算机程序指令或者从存储单元908加载到随机访问存储器(RAM)903中的计算机程序指令,来执行各种适当的动作和处理。在RAM 903中,还可存储设备900操作所需的各种程序和数据。CPU 901、ROM 902以及RAM 903通过总线904彼此相连。输入/输出(I/O)接口905也连接至总线904。
设备900中的多个部件连接至I/O接口905,包括:输入单元906,例如键盘、鼠标等;输出单元907,例如各种类型的显示器、扬声器等;存储单元908,例如磁盘、光盘等;以及通信单元909,例如网卡、调制解调器、无线通信收发机等。通信单元909允许设备900通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
上文所描述的各个过程和处理,例如方法300和700,可由处理单元901执行。例如,在一些实现中,方法300和700可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元908。在一些实现中,计算机程序的部分或者全部可以经由ROM 902和/或通信单元909而被载入和/或安装到设备900上。当计算机程序被加载到RAM 903并由CPU901执行时,可以执行上文描述的方法300和700的一个或多个步骤。备选地,在其他实现中,CPU 901也可以以其他任何适当的方式被配置以实现上述过程/方法。
根据本公开的示例性实现,提供了一种用于管理服务容器的设备,包括:至少一个处理器;易失性存储器;以及与至少一个处理器耦合的存储器,存储器具有存储于其中的指令,指令在被至少一个处理器执行时使得设备执行动作。该动作包括:响应于接收到针对待生成的一组服务容器的备份需求,基于备份需求建立用于生成一组服务容器的配置文件,配置文件包括用于安装针对一组服务容器执行备份操作的备份代理的脚本;向服务容器管理系统中的至少一个节点加载用于初始化一组服务容器的映像文件以创建一组基本运行环境;以及向一组基本运行环境部署配置文件以生成一组服务容器,以使得生成的一组服务容器中的相应服务容器包括的相应备份代理针对生成的一组服务容器执行备份操作。
根据本公开的示例性实现,建立配置文件包括:向配置文件加入用于设置备份代理的环境的配置脚本;向配置文件加入用于安装备份代理的安装脚本;以及向配置文件加入用于设置备份代理的通信端口的设置脚本。
根据本公开的示例性实现,向一组基本运行环境部署配置文件以生成一组服务容器包括:向至少一个节点发送指示,以使得在一组基本运行环境中运行配置文件中包括的脚本以生成一组服务容器。
根据本公开的示例性实现,配置文件进一步包括与备份操作相关联的备份策略,动作进一步包括:向一组服务容器中的至少一部分服务容器所在的节点发送指示,以使得至少一部分服务容器基于备份策略执行备份操作。
根据本公开的示例性实现,动作进一步包括:响应于检测到一组服务容器中的给定服务容器中出现故障,向给定服务容器所在的节点加载映像文件以形成基本运行环境;以及向基本运行环境部署配置文件以生成新的服务容器,以使得生成的新的服务容器包括的备份代理针对生成的新的服务容器执行备份操作。
根据本公开的示例性实现,提供了一种用于管理服务容器的设备,包括:至少一个处理器;易失性存储器;以及与至少一个处理器耦合的存储器,存储器具有存储于其中的指令,指令在被至少一个处理器执行时使得设备执行动作,动作包括:在服务容器管理系统处加载用于初始化待生成的一组服务容器的映像文件以形成一组基本运行环境;响应于接收到用于生成一组服务容器的配置文件,向一组基本运行环境部署配置文件以生成一组服务容器,以使得生成的一组服务容器中的相应服务容器包括的相应备份代理针对生成的一组服务容器执行备份操作,其中配置文件包括用于安装针对一组服务容器执行备份操作的备份代理的脚本,以及配置文件是基于针对待生成的一组服务容器的备份需求而建立的。
根据本公开的示例性实现,配置文件包括:用于设置备份代理的环境的配置脚本;用于安装备份代理的安装脚本;以及
用于设置备份代理的通信端口的设置脚本。
根据本公开的示例性实现,动作进一步包括:在一组基本运行环境中运行配置文件中包括的脚本以生成一组服务容器。
根据本公开的示例性实现,配置文件进一步包括与备份操作相关联的备份策略,动作进一步包括:在一组服务容器中的服务容器处,利用服务容器中的备份代理,基于备份策略来针对服务容器执行备份操作。
根据本公开的示例性实现,执行备份操作包括:利用备份代理遍历服务容器的目录;以及向与备份代理相关联的备份服务器来传输目录下的数据。
根据本公开的示例性实现,提供了一种计算机程序产品,计算机程序产品被有形地存储在非瞬态计算机可读介质上并且包括机器可执行指令,机器可执行指令用于执行根据本公开的方法。
根据本公开的示例性实现,提供了一种计算机可读介质。计算机可读介质上存储有机器可执行指令,当机器可执行指令在被至少一个处理器执行时,使得至少一个处理器实现根据本公开方法。
本公开可以是方法、设备、系统和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于执行本公开的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本公开操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实现中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本公开的各个方面。
这里参照根据本公开实现的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理单元,从而生产出一种机器,使得这些指令在通过计算机或其他可编程数据处理装置的处理单元执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其他可编程数据处理装置、或其他设备上,使得在计算机、其他可编程数据处理装置或其他设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其他可编程数据处理装置、或其他设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本公开的多个实现的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本公开的各实现,上述说明是示例性的,并非穷尽性的,并且也不限于所公开的各实现。在不偏离所说明的各实现的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实现的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其他普通技术人员能理解本文公开的各实现。

Claims (19)

1.一种用于管理服务容器的方法,包括:
响应于接收到针对待生成的一组服务容器的备份需求,基于所述备份需求建立用于生成所述一组服务容器的配置文件,所述配置文件包括用于在所述服务容器中的每个服务容器中安装针对所述一组服务容器执行备份操作的备份代理的脚本;
向服务容器管理系统中的至少一个节点加载用于初始化所述一组服务容器的映像文件以创建一组基本运行环境;以及
向所述一组基本运行环境部署所述配置文件以生成所述一组服务容器,其中所述服务容器中的每个服务容器包括嵌入备份代理,以使得生成的所述一组服务容器中的相应服务容器包括的相应备份代理针对生成的所述一组服务容器执行所述备份操作;
在检测到所述一组服务容器中的给定服务容器出现故障,通过以下操作生成新的服务容器以替换出现故障的所述给定服务容器:
向所述给定服务容器所在的节点重新加载所述映像文件以形成新的基本运行环境;以及
向所述新的基本运行环境重新部署所述配置文件以生成所述新的服务容器,以使得生成的所述新的服务容器包括的备份代理针对生成的所述新的服务容器执行所述备份操作。
2.根据权利要求1所述的方法,其中建立所述配置文件包括:
向所述配置文件加入用于设置所述备份代理的环境的配置脚本;
向所述配置文件加入用于安装所述备份代理的安装脚本;以及
向所述配置文件加入用于设置所述备份代理的通信端口的设置脚本。
3.根据权利要求2所述的方法,其中向所述一组基本运行环境部署所述配置文件以生成所述一组服务容器包括:
向所述至少一个节点发送指示,以使得在所述一组基本运行环境中运行所述配置文件中包括的脚本以生成所述一组服务容器。
4.根据权利要求3所述的方法,其中所述配置文件进一步包括与所述备份操作相关联的备份策略,所述方法进一步包括:
向所述一组服务容器中的至少一部分服务容器所在的节点发送指示,以使得所述至少一部分服务容器基于所述备份策略执行所述备份操作。
5.一种用于管理服务容器的方法,包括:
在服务容器管理系统处加载用于初始化待生成的一组服务容器的映像文件以形成一组基本运行环境;
响应于接收到用于生成所述一组服务容器的配置文件,向所述一组基本运行环境部署所述配置文件以生成所述一组服务容器,其中所述服务容器中的每个服务容器包括嵌入备份代理,以使得生成的所述一组服务容器中的相应服务容器包括的相应备份代理针对生成的所述一组服务容器执行所述备份操作;
其中所述配置文件包括用于在所述服务容器中的每个服务容器中安装针对所述一组服务容器执行备份操作的备份代理的脚本,以及所述配置文件是基于针对待生成的一组服务容器的备份需求而建立的;
在检测到所述一组服务容器中的给定服务容器出现故障,通过以下操作生成新的服务容器以替换出现故障的所述给定服务容器:
向所述给定服务容器所在的节点重新加载所述映像文件以形成新的基本运行环境;以及
向所述新的基本运行环境重新部署所述配置文件以生成所述新的服务容器,以使得生成的所述新的服务容器包括的备份代理针对生成的所述新的服务容器执行所述备份操作。
6.根据权利要求5所述的方法,其中所述配置文件包括:
用于设置所述备份代理的环境的配置脚本;
用于安装所述备份代理的安装脚本;以及
用于设置所述备份代理的通信端口的设置脚本。
7.根据权利要求6所述的方法,进一步包括:
在所述一组基本运行环境中运行所述配置文件中包括的脚本以生成所述一组服务容器。
8.根据权利要求7所述的方法,其中所述配置文件进一步包括与所述备份操作相关联的备份策略,所述方法进一步包括:
在所述一组服务容器中的服务容器处,利用所述服务容器中的备份代理,基于所述备份策略来针对所述服务容器执行备份操作。
9.根据权利要求7所述的方法,其中执行所述备份操作包括:
利用所述备份代理遍历所述服务容器的目录;以及
向与所述备份代理相关联的备份服务器来传输所述目录下的数据。
10.一种用于管理服务容器的设备,包括:
至少一个处理器;
易失性存储器;以及
与所述至少一个处理器耦合的存储器,所述存储器具有存储于其中的指令,所述指令在被所述至少一个处理器执行时使得所述至少一个处理器执行操作,所述操作包括:
响应于接收到针对待生成的一组服务容器的备份需求,基于所述备份需求建立用于生成所述一组服务容器的配置文件,所述配置文件包括用于在所述服务容器中的每个服务容器中安装针对所述一组服务容器执行备份操作的备份代理的脚本;
向服务容器管理系统中的至少一个节点加载用于初始化所述一组服务容器的映像文件以创建一组基本运行环境;以及
向所述一组基本运行环境部署所述配置文件以生成所述一组服务容器,其中所述服务容器中的每个服务容器包括嵌入备份代理,以使得生成的所述一组服务容器中的相应服务容器包括的相应备份代理针对生成的所述一组服务容器执行所述备份操作;
在检测到所述一组服务容器中的给定服务容器出现故障,通过以下操作生成新的服务容器以替换出现故障的所述给定服务容器:
向所述给定服务容器所在的节点重新加载所述映像文件以形成新的基本运行环境;以及
向所述新的基本运行环境重新部署所述配置文件以生成所述新的服务容器,以使得生成的所述新的服务容器包括的备份代理针对生成的所述新的服务容器执行所述备份操作。
11.根据权利要求10所述的设备,其中建立所述配置文件包括:
向所述配置文件加入用于设置所述备份代理的环境的配置脚本;
向所述配置文件加入用于安装所述备份代理的安装脚本;以及
向所述配置文件加入用于设置所述备份代理的通信端口的设置脚本。
12.根据权利要求11所述的设备,其中向所述一组基本运行环境部署所述配置文件以生成所述一组服务容器包括:
向所述至少一个节点发送指示,以使得在所述一组基本运行环境中运行所述配置文件中包括的脚本以生成所述一组服务容器。
13.根据权利要求12所述的设备,其中所述配置文件进一步包括与所述备份操作相关联的备份策略,其中所述操作进一步包括:
向所述一组服务容器中的至少一部分服务容器所在的节点发送指示,以使得所述至少一部分服务容器基于所述备份策略执行所述备份操作。
14.一种用于管理服务容器的设备,包括:
至少一个处理器;
易失性存储器;以及
与所述至少一个处理器耦合的存储器,所述存储器具有存储于其中的指令,所述指令在被所述至少一个处理器执行时使得所述至少一个处理器执行操作,所述操作包括:
在服务容器管理系统处加载用于初始化待生成的一组服务容器的映像文件以形成一组基本运行环境;
响应于接收到用于生成所述一组服务容器的配置文件,向所述一组基本运行环境部署所述配置文件以生成所述一组服务容器,其中所述服务容器中的每个服务容器包括嵌入备份代理,以使得生成的所述一组服务容器中的相应服务容器包括的相应备份代理针对生成的所述一组服务容器执行所述备份操作;
其中所述配置文件包括用于在所述服务容器中的每个服务容器中安装针对所述一组服务容器执行备份操作的备份代理的脚本,以及所述配置文件是基于针对待生成的一组服务容器的备份需求而建立的;
在检测到所述一组服务容器中的给定服务容器出现故障,通过以下操作生成新的服务容器以替换出现故障的所述给定服务容器:
向所述给定服务容器所在的节点重新加载所述映像文件以形成新的基本运行环境;以及
向所述新的基本运行环境重新部署所述配置文件以生成所述新的服务容器,以使得生成的所述新的服务容器包括的备份代理针对生成的所述新的服务容器执行所述备份操作。
15.根据权利要求14所述的设备,其中所述配置文件包括:
用于设置所述备份代理的环境的配置脚本;
用于安装所述备份代理的安装脚本;以及
用于设置所述备份代理的通信端口的设置脚本。
16.根据权利要求15所述的设备,其中所述操作进一步包括:
在所述一组基本运行环境中运行所述配置文件中包括的脚本以生成所述一组服务容器。
17.根据权利要求16所述的设备,其中所述配置文件进一步包括与所述备份操作相关联的备份策略,其中所述操作进一步包括:
在所述一组服务容器中的服务容器处,利用所述服务容器中的备份代理,基于所述备份策略来针对所述服务容器执行备份操作。
18.根据权利要求16所述的设备,其中执行所述备份操作包括:
利用所述备份代理遍历所述服务容器的目录;以及
向与所述备份代理相关联的备份服务器来传输所述目录下的数据。
19.一种非瞬态计算机可读介质,所述非瞬态计算机可读介质有形地存储计算机程序,所述计算机程序包括机器可执行指令,所述机器可执行指令用于执行根据权利要求1-9中的任一项所述的方法。
CN201811191506.XA 2018-10-12 2018-10-12 用于管理服务容器的方法、设备和计算机可读介质 Active CN111045854B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201811191506.XA CN111045854B (zh) 2018-10-12 2018-10-12 用于管理服务容器的方法、设备和计算机可读介质
US16/285,150 US11314524B2 (en) 2018-10-12 2019-02-25 Method, apparatus, and computer program product for managing service container

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811191506.XA CN111045854B (zh) 2018-10-12 2018-10-12 用于管理服务容器的方法、设备和计算机可读介质

Publications (2)

Publication Number Publication Date
CN111045854A CN111045854A (zh) 2020-04-21
CN111045854B true CN111045854B (zh) 2023-09-01

Family

ID=70161970

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811191506.XA Active CN111045854B (zh) 2018-10-12 2018-10-12 用于管理服务容器的方法、设备和计算机可读介质

Country Status (2)

Country Link
US (1) US11314524B2 (zh)
CN (1) CN111045854B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111522627B (zh) * 2020-04-26 2023-11-28 杭州威佩网络科技有限公司 一种Docker镜像管理方法、装置、设备及介质
CN113722146A (zh) * 2020-05-25 2021-11-30 伊姆西Ip控股有限责任公司 创建快照备份的方法、电子设备和计算机可读存储介质
CN111796906A (zh) * 2020-06-03 2020-10-20 科东(广州)软件科技有限公司 一种容器管理方法、装置、设备及存储介质
US11379320B2 (en) * 2020-07-08 2022-07-05 International Business Machines Corporation Container recovery
CN111901343B (zh) * 2020-07-28 2022-07-12 北京明朝万达科技股份有限公司 数据访问、发送方法及装置,数据访问系统,电子设备,可读存储介质
CN112559256B (zh) * 2020-12-30 2024-04-05 国网四川省电力公司泸州供电公司 一种ssh telnet设备的自动备份方法
CN112732410B (zh) * 2021-01-21 2023-03-28 青岛海尔科技有限公司 服务节点的管理方法及装置、存储介质及电子装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101452411A (zh) * 2007-12-07 2009-06-10 国际商业机器公司 用于管理向远程备份服务器进行备份的系统和方法
CN107506258A (zh) * 2016-06-14 2017-12-22 伊姆西公司 用于数据备份的方法和设备
US10013291B1 (en) * 2011-11-14 2018-07-03 Ca, Inc. Enhanced software application platform

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9465697B2 (en) * 2011-09-21 2016-10-11 Netapp, Inc. Provision of backup functionalities in cloud computing systems
US9509553B2 (en) * 2012-08-13 2016-11-29 Intigua, Inc. System and methods for management virtualization
US9075638B2 (en) * 2012-08-14 2015-07-07 Atlassian Corporation Pty Ltd. Efficient hosting of virtualized containers using read-only operating systems
US9652178B2 (en) * 2013-09-10 2017-05-16 Veritas Technologies Systems and methods for protecting virtual machine data
US10013189B1 (en) * 2015-12-14 2018-07-03 EMC IP Holding Company LLC Storage volume backup management for multi-tenant environments
CN105630632B (zh) * 2015-12-25 2018-04-10 华为技术有限公司 一种虚拟机恢复的方法及虚拟机管理设备
US10769029B2 (en) * 2016-11-18 2020-09-08 International Business Machines Corporation Accessing records of a backup file in a network storage
US11099765B2 (en) * 2017-09-28 2021-08-24 Quantum Corporation Data protection of container persistent storage with changed block tracking

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101452411A (zh) * 2007-12-07 2009-06-10 国际商业机器公司 用于管理向远程备份服务器进行备份的系统和方法
US10013291B1 (en) * 2011-11-14 2018-07-03 Ca, Inc. Enhanced software application platform
CN107506258A (zh) * 2016-06-14 2017-12-22 伊姆西公司 用于数据备份的方法和设备

Also Published As

Publication number Publication date
CN111045854A (zh) 2020-04-21
US11314524B2 (en) 2022-04-26
US20200117478A1 (en) 2020-04-16

Similar Documents

Publication Publication Date Title
CN111045854B (zh) 用于管理服务容器的方法、设备和计算机可读介质
CN109120678B (zh) 用于分布式存储系统的服务托管的方法和装置
US10545750B2 (en) Distributed upgrade in virtualized computing environments
US8645672B2 (en) Configuring a computer system for a software package installation
CN107506258B (zh) 用于数据备份的方法和设备
US9253265B2 (en) Hot pluggable extensions for access management system
US8615588B2 (en) Accelerate copying of virtual machine images
US10891122B2 (en) Rolling upgrade of a distributed application
US10797952B1 (en) Intelligent rollback analysis of configuration changes
US11748163B2 (en) Control token and hierarchical dynamic control
CN110324399B (zh) 将集群意识纳入设施管理门户
US10110434B2 (en) Cloud orchestrated cloud connector upgrades
US20220277071A1 (en) Enforcing policies for unmanaged applications
CN110995481A (zh) 配置方法、服务器及计算机可读存储介质
CN114788239A (zh) 网络功能虚拟化计算元件镜像升级
CN112579353A (zh) 自动运维方法、装置及大数据平台
US10466991B1 (en) Computing instance software package installation
KR102114339B1 (ko) 액티브/스탠바이 모델을 지원하는 쿠버네티스 시스템의 동작 방법
US11704105B2 (en) Method, device, and computer program product for managing virtual machine upgrade
WO2017000589A1 (zh) 一种弹性扩容方法、装置及系统
US11281391B2 (en) Method, device, and computer program for migrating backup system
CN114930313A (zh) 用于管理区块链节点的系统和方法
US10824476B1 (en) Multi-homed computing instance processes
US10684840B1 (en) Software package installation and monitoring
US20200104051A1 (en) Method, device and computer program product of storage management

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