云计算环境中的分布式锁管理制造技术

技术编号:12787326 阅读:83 留言:0更新日期:2016-01-28 15:48
分布式锁管理器(DLM)可以在向客户端提供虚拟化计算资源和/或虚拟计算服务的分布式计算系统中实现。响应于来自客户端的相应请求,可以由所述DLM创建并管理锁。所述DLM的组件可以通过除了客户端应用组件借以彼此通信或存取由所述锁保护的共享资源的网络外的网络来彼此通信。例如,DLM组件可以通过云计算环境的控制平面网络来通信,而应用组件可以通过所述云计算环境的数据平面网络来通信。所述DLM可以将API呈现给客户端,允许它们对同一节点上的DLM组件进行本地调用以进行各种锁管理操作。锁值的含义可以通过它们在客户端应用中的使用来确定。

【技术实现步骤摘要】
【国外来华专利技术】【专利说明】云计算环境中的分布式锁管理
技术介绍
许多公司和其它组织运营将众多计算系统互连W支持它们的操作的计算机网络, 例如具有位于同一处的计算系统(例如,作为局域网的部分)或改为位于多个不同地理位 置中的计算系统(例如,经由一个或多个专用或公用中间网络连接)。例如,容纳大量互连 的计算系统的数据中屯、已变得很平常,例如由并代表单个组织运营的专用数据中屯、和当作 生意向顾客或客户端提供计算资源的、由多个实体运营的公用数据中屯、。一些公用数据中 屯、运营商为各种客户端拥有的硬件提供网络接入、电源和安全安装设施,而其它公用数据 中屯、运营商提供还包括可供其客户端使用的硬件资源的"全服务"设施。然而,随着典型数 据中屯、的规模和范围不断增加,准备、管控和管理物理计算资源的任务变得日益复杂。 用于商品硬件的虚拟化技术的出现提供了为具有不同需要的许多客户端管理大 规模计算资源方面的好处,从而允许各种计算资源被多个客户端有效且安全地共享。例 如,虚拟化技术可W通过为每一用户提供由单个物理计算机器托管的一个或多个虚拟机来 允许所述单个物理计算机器在多个用户之间共享,其中每一此类虚拟机是充当不同逻辑计 算系统的软件模拟,运样向用户提供他们是给定硬件计算资源的唯一操作者和管理员的错 觉,同时还在各个虚拟机之间提供应用隔离和安全性。此外,一些虚拟化技术能够提供跨越 两个或两个W上物理资源的虚拟资源,例如具有跨越多个不同物理计算系统的多个虚拟处 理器的单个虚拟机。作为另一实例,虚拟化技术可W通过为每一用户提供虚拟化数据存储 区来允许数据存储硬件在多个用户之间共享,所述虚拟化数据存储区可W分布在多个数据 存储装置中,其中每一此类虚拟化数据存储区充当不同的逻辑数据存储区,运样向用户提 供他们是数据存储资源的唯一操作者和管理员的错觉。 在支持分布式计算的一些系统中,分布式应用的应用组件或进程可W(不时地) 存取各种类型的共享资源。在一些此类系统中,使用分布式锁管理器来控制和/或同步对 那些共享资源的存取。【附图说明】 图1是示出了用于在提供虚拟计算系统的分布式计算系统中提供分布式锁管理 器的方法的一个实施方案的流程图。 阳0化]图2是示出了根据至少一些实施方案的示例提供商网络环境的框图。 图3是示出了根据一些实施方案的示例数据中屯、的框图。 图4是示出了根据一些实施方案的在控制平面中实现分布式锁管理器的示例数 据中屯、的框图。 图5是示出了用于在提供虚拟化资源的分布式计算系统中实现分布式锁管理器 的方法的一个实施方案的流程图。 图6是示出了用于使客户端应用或进程存取在云计算环境中实现的分布式锁管 理器的功能性的方法的一个实施方案的流程图。 图7是示出了根据一些实施方案的示例数据中屯、的框图,所述示例数据中屯、在控 制平面中实现分布式锁管理器并且将所述分布式锁管理器呈现给在其环境外部执行的进 程。 图8是示出了用于使在云计算环境外部执行的客户端应用或进程存取在云计算 环境中实现的分布式锁管理器的功能性的方法的一个实施方案的流程图。 图9是示出了根据不同实施方案的实现本文所描述的一些或全部技术的示例计 算机系统的框图。 虽然本文中通过举出若干实施方案和示意图来描述实施方案,但是本领域的技术 人员将认识到实施方案不限于所描述的实施方案或图。应理解,所述图和其详细描述不希 望将实施方案限于所公开的特定形式,而是相反地,希望涵盖属于如由所附权利要求书界 定的精神和范围内的所有修改、等效物和替代物。本文中所使用的标题仅用于组织目的并 且没有打算用W限制说明书或权利要求书的范围。如贯穿本申请所使用,词语"可是在 许可意义(即,表示有可能)而非强制性意义(即,表示必须)上使用。类似地,词语"包 括"、"包括了"和"包括有"表示包括但不限于。【具体实施方式】 本文描述了用于在向客户端提供虚拟化计算资源的系统中实现分布式锁管理的 系统和方法的各种实施方案。在一些实施方案中,分布式锁管理器值LM)的组件可W通过 与另一网络(或网络的部分)在物理上或逻辑上不同的网络(或网络的部分)来彼此通信 W管理共享资源的锁,其中存取所述共享资源的分布式应用的应用组件通过所述另一网络 来彼此通信和/或与所述共享资源通信。例如,在一些实施方案中,DLM组件可W通过云计 算环境的控制平面网络来彼此通信,而分布式应用的应用组件可W通过云计算环境的数据 平面网络来彼此通信和/或与共享资源通信。在一些实施方案中,除了呈现给在云计算环 境内执行的客户端应用(或其组件)外,应用编程接口(API)还可W呈现给在云计算环境 外执行的客户端应用(或其组件)。在此类实施方案中,客户端应用(或其组件)中的任一 者都可W加入到DLM的锁定机制中(例如,W开始对用于那些客户端应用共享的资源的锁 的锁管理操作)。 应指出,在群集环境(例如实现分布式应用和/或向客户端应用提供虚拟化计算 资源的群集环境)中,在资源之间可能有不同的共享等级。运些系统可W实现各种机制来 管理需要到处移动(例如,响应于计算节点的故障或在其它失效转移的情形中)的资源。例 如,在其中十个虚拟化实例是在虚拟专用云(VPC)内执行的系统中,有时可能会希望在不 同实例之间移动网络接口(例如,弹性网络接口或ENI,或另一类型的虚拟网络接口)(例 如,使它与一个实例断开连接并重新连接至另一实例)。 一些现有的系统使用分布式锁管理器来控制和同步对共享资源的存取,但运些系 统通常需要网络连接性。例如,一些群集技术使用网络作为用于DLM的互连机制,所述DLM 用W管理群集使用的锁。在各种实施方案中,本文所描述的系统可W实现不需要此类网络 连接性的分布式锁管理器值LM)。而是,可W在云计算环境的控制平面中实现DLM,并且可 W使用各种API调用由在云计算环境中的资源实例上执行的分布式应用来存取DLM(例如, W便管理可W由那些分布式应用存取的资源的一个或多个锁)。在一些实施方案中,例如, 在顾客想让他们的应用与其它应用隔离(即,其它应用或顾客不可见和/或在与其它应用 不同的虚拟机上运行)时,分布式应用的应用组件在上面执行的资源实例可w被配置为虚 拟专用云(VPC)。在一些实施方案中,可W向在虚拟专用云中执行的每一虚拟机给予它自己 的专用IP地址。在一些实施方案中,可W选择运些专用IP地址(它们也可W被称为"虚拟 专用IP地址"),使得它们不与客户端自己的专用网络中的任何IP地址重叠。在一些实施 方案中,VPC内的资源实例可W使用公用服务API向DLM发送服务请求,而在其它实施方案 中,VPC内的资源实例可W使用专用服务API向DLM发送服务请求。 由于群集系统通常包括至少一些共享资源,因此DLM在运些环境中可能是非常有 用的。如上所述,分布式锁管理器可W由分布式应用用来控制和/或同步对各种类型的共 享资源的存取。在各种实施方案中,锁可W与任何类型的资源(例如,磁盘卷、ENI或另一 类型的虚拟网络接口、数据库行或文件)或者一般来说是多个进程对它的访问应进行控制 的任何实体(例如,包括应用组件或资源实例)相关联。 在一些实施方案中,DLM可W实现具有任意数目的等级的锁定层级,使得可W锁定 个别资源/实体,或者可W锁定资源/实体本文档来自技高网...
云计算环境中的分布式锁管理

【技术保护点】
一种系统,包括:多个计算节点,所述多个计算节点通过网络彼此耦接并且共同地向一个或多个客户端提供虚拟计算服务,所述计算节点中的每一个包括至少一个处理器和存储器;两个或更多个虚拟计算实例,其各自在两个或更多个所述计算节点中的的相应一个上执行,其中所述虚拟计算实例中的每一个被配置为代表客户端实现分布式应用的应用组件,并且其中所述虚拟计算实例被配置为通过所述网络的至少一部分来彼此通信;以及分布式锁管理器,所述分布式锁管理器包括两个或更多个组件,其各自在所述两个或更多个计算节点中的相应一个上执行,其中所述分布式锁管理器组件被配置为共享相应共享资源上的一个或多个锁的状态,并且其中为了共享所述一个或多个锁的状态,所述分布式锁管理器组件被配置为通过网络彼此通信,该网络与所述虚拟计算实例借以彼此通信的网络的所述至少一部分在物理上或逻辑上不同;其中所述应用组件中的一个被配置为激活对在相应计算节点上执行的所述分布式锁管理器组件的调用以开始对由所述分布式应用存取的共享资源上的锁进行锁管理操作,其中实现所述应用组件的所述虚拟计算实例在所述相应计算节点上执行。

【技术特征摘要】
【国外来华专利技术】...

【专利技术属性】
技术研发人员:G·O·詹金斯
申请(专利权)人:亚马逊科技公司
类型:发明
国别省市:美国;US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1