经由持久保留的用于共享写访问的资源仲裁制造技术

技术编号:15541812 阅读:77 留言:0更新日期:2017-06-05 11:02
描述了一种使服务器群集中的所有者节点通过持久保留机制来维护存储机制的所有权,同时允许非拥有节点对该存储机制的读和写访问的技术。所有者节点将保留密钥写入与该存储机制相关联的注册表。非拥有节点写入赋予它们读和写访问的共享密钥。所有者节点对照群集成员数据来确认共享密钥,并取代(例如,移除)被认为无效的任何密钥。所有者节点还针对由其他节点作出的对所有权的挑战来防护所有权,从而使得如果(原先的)拥有节点例如因为故障而无法防护,则另一节点可以接管所有权。

Resource arbitration used for shared write access through persistent reservations

A technique is described that enables the owner node of a server cluster to maintain ownership of a storage mechanism through persistent retention mechanisms, while allowing non owning nodes to read and write access to the storage mechanism. The owner node writes the reserved key to the registry associated with the storage mechanism. Non owning nodes write shared keys that give them access to read and write access. The owner node compares the cluster member data to confirm the shared key and replaces (for example, removes) any key that is considered invalid. According to the owner node of the title challenge made by other nodes to protection of ownership, so that if the (original) have trouble because nodes such as door, the other nodes can take ownership.

【技术实现步骤摘要】
经由持久保留的用于共享写访问的资源仲裁本专利技术专利申请是国际申请号为PCT/US2009/054304,国际申请日为2009年8月19日,进入中国国家阶段的申请号为200980137176.9,名称为“经由持久保留的用于共享写访问的资源仲裁”的专利技术专利申请的分案申请。背景服务器群集一般是被这样安排的一组服务器(节点):如果任何服务器失败,则该群集的其他服务器可以透明地接管失败的服务器的工作,即,重启其应用程序并进而在没有显著中断的情况下继续服务客户机。该操作一般被称为故障转移,或故障转移群集。在群集中,每一存储设备(硬盘驱动器)由一个节点拥有。如果正确地操作,所有者节点针对其他节点对所有权的挑战来防护对存储设备的所有权,从而使得如果所有者失败则另一节点可以接管所有权。为了实现该挑战-防护模型,使用了如美国专利第7,277,952号所描述的持久保留所有权算法。然而,该持久保留所有权算法实现无共享模型,其中拥有盘的节点具有独占所有权和对盘的完全访问,而其他节点具有只读访问。共享群集的存储卷技术(在序列号为12/147,956的相关专利申请中描述)的一个方面在于其他健康的群集节点需要能够同时写入共享的群集盘。结果,需要一种向健康节点授予对存储设备的访问同时排除未正确参与群集的任何节点的方式。概述提供本概述以便以简化形式介绍将在以下的详细描述中进一步描述的一些代表性概念。本概述不旨在标识出所要求保护的主题的关键特征或必要特征,也不旨在以限制所要求保护的主题的范围的任何方式来使用。简言之,此处描述的主题的各方面涉及一种使服务器群集中的所有者节点独占地拥有存储机制(例如,盘或其他存储设备)但允许非拥有节点对该存储机制具有共享的读和写访问的技术。在一方面,一个节点包括所有者节点,该所有者节点通过将密钥与同存储机制相关联的注册表相关联(例如,写入)的持久保留机制来维护存储机制的所有权。非拥有节点将共享密钥与注册表相关联。所有者节点对照群集成员数据来确认共享密钥,并且取代(例如,移除)被认为无效的任何密钥,使得无效节点不再具有对该存储机制访问。在一方面,所有者节点防护对所有权的挑战。非拥有节点将挑战密钥写入存储机制,并等待一段防护时间。如果所有者节点正确地操作,则它在防护时间内检测到该挑战密钥,并取代该挑战密钥来维护所有权。如果所有者节点未正确地操作,则所有者节点不能在防护时间内防护该挑战,由此该挑战节点成为新的所有者。结合附图阅读以下详细描述,本专利技术的其他优点会变得显而易见。附图简述作为示例而非限制,在附图中示出了本专利技术,附图中相同的附图标记指示相同或相似的元素,附图中:图1A和1B是表示带有共享盘的服务器群集环境中的示例组件的框图。图2是示出用于经由持久保留来实现资源仲裁和共享写盘访问的示例组件的框图。图3是示出保留和/或访问群集共享卷所采取的示例步骤的流程图。图4和5包括示出SCSI环境中的保留和/或访问群集共享卷所采取的示例步骤的流程图。图6示出可以将本专利技术的各方面并入其中的计算环境的说明性示例。详细描述此处描述的技术的各方面一般涉及允许群集节点与其他节点共享对盘(例如,被配置为存储卷)的访问,包括共享读和写访问。一般而言,存储设备(或者被称为“盘”或“硬盘”,无论实际上是否是盘类型的存储设备)由单个群集节点拥有;然而,如此处所描述的,移除了其他节点对读和写I/O操作的限制。这允许在群集中的任意节点上运行的经群集的应用程序和服务访问任何共享卷上的数据。在一个示例实现中,通过允许节点向所拥有的盘注册SCSI持久保留(PR)密钥来使这种共享成为可能。更具体地,所有者节点注册独占PR密钥来声称其所有权,而其余节点各自注册其中编码了该节点的标识符的“共享”PR密钥。一般而言,有效节点的共享PR密钥授予该节点对由另一节点拥有的盘的读和写访问。如果注册了共享PR密钥的节点变得不再有效(例如,失败或以其他方式被认为无效),则所有者节点清除该节点的共享PR密钥,从而阻止无效节点对盘的进一步I/O。在一个示例实现中,该技术与将NTFS用作文件系统的服务器故障转移群集和SCSI盘一起工作。然而,应该理解这些仅是示例。事实上,可以使用其他环境、文件系统和/或存储技术来实现此处描述的技术的一个或多个方面。如此,本专利技术不限于此处所描述的任何特定实施例、方面、概念、结构、功能或示例。相反,在此所描述的实施例、方面、概念、结构、功能或示例中的任何一个都是非限制性的,并且本专利技术可以按一般在计算、群集和数据访问中提供益处和优点的各种方式来使用。转向图1A,示出了群集环境的简化框图,包括三个节点,N0、N1和N2,各自分别拥有盘100-102。群集节点通常经由SCSI、光纤通道、ISCSI或其他高速通信链路被连接到群集的盘。注意,图1A仅示出了一个可能的配置,因为节点可能拥有一个盘,节点可能拥有一个以上的盘,以此类推。例如,在图1B中,节点N2失败了(或者无法用某种方式进行通信),从而节点N0经由其保留机制取得了盘102的所有权,如以下概括地描述的。其他节点N1和N2一般分别具有相同的保留机制111和112。为了使拥有盘的节点提供对该盘的共享访问,提供了允许从多个群集节点的并发访问的经改变的保留方案。为此,如图2概括地表示的,每一节点(诸如节点N1)包括含有保留机制111的群集盘驱动程序220(例如,包括内核驱动程序的群集盘系统)。如以下所述,另一节点(例如,由框222表示)的类似群集盘驱动程序参与保留机制/算法来访问盘101,而拥有节点的群集盘驱动程序N1参与保留机制/算法来维护和保护所有权。所例示的群集盘驱动程序220与群集服务组件224一起工作,如下所述。作为背景,在美国专利第7,277,952号中描述的传统持久保留所有权算法实现无分享模型,即,拥有盘的节点具有独占的所有权和完全访问,而其他节点具有只读访问。所有者节点通过使用保留密钥(被称为PR密钥)来将写独占的、仅注册者的持久保留放置在盘上的PR保留表中来声称所有权。拥有节点通过周期性地(例如,默认地每三秒)检查PR注册表来维护/防护该所有权;其他节点通过在PR注册表中注册它们自己的密钥来挑战所有权(如果拥有节点崩溃则接管)。如果拥有节点可用并且在表中只找到它自己的PR密钥,则不必采取动作,然而如果它在PR注册表中找到除了它自己的密钥之外的任何密钥,则拥有节点取代该密钥(例如,将其从表中移除;如果拥有节点不可用并且挑战节点的密钥保留,由此挑战节点通过用它自己的密钥来取代当前所有者的PR保留来接管所有权)。在稳定且正常工作的群集之下,盘的PR保留表具有一个密钥,其PR注册表具有M个密钥(全部都来自同一个所有者节点),其中M是到MIPO系统的盘的I/O路径的数量;对于非MPIO系统,M为1。对于分配在群集共享卷中的盘,如此处所述地将该持久保留算法修改为允许群集中的节点以读-写模式用安全的方式基本上同时地访问盘。群集外部的机器不具有对群集共享卷盘的访问。如图2概括地表示的,物理盘资源226管理群集中的共享盘,并且特别地确保经群集的盘被安全地访问并被保护免受恶化,包括便于基本上同时访问同一个共享盘。这通过使用共享持久保留(PR)密钥以及群集成员的知识来实现,如此处所描述的。对于群集本文档来自技高网...
经由持久保留的用于共享写访问的资源仲裁

【技术保护点】
一种在服务器群集环境中的方法,所述方法包括:持久保存(410)群集中的存储机制(101)的所有权,包括将对应于拥有节点N1的所有者密钥插入共享存储机制(101)的持久保留注册表中;以及允许(308、310)至少一个非拥有节点N2经由该非拥有节点插入到所述存储机制的所述持久保留注册表中的共享密钥来读和写访问所述存储机制,其中该非拥有节点插入到所述存储机制的所述持久保留注册表中的共享密钥包含标识该非拥有节点的信息。

【技术特征摘要】
2008.09.19 US 12/233,8621.一种在服务器群集环境中的方法,所述方法包括:持久保存(410)群集中的存储机制(101)的所有权,包括将对应于拥有节点N1的所有者密钥插入共享存储机制(101)的持久保留注册表中;以及允许(308、310)至少一个非拥有节点N2经由该非拥有节点插入到所述存储机制的所述持久保留注册表中的共享密钥来读和写访问所述存储机制,其中该非拥有节点插入到所述存储机制的所述持久保留注册表中的共享密钥包含标识该非拥有节点的信息。2.如权利要求1所述的方法,其特征在于,将所述所有者密钥插入包括试图(406)向所述存储机制注册所述所有者密钥,并且如果成功,发出(410)保留命令。3.如权利要求1所述的方法,其特征在于,还包括:接收(308)标识所述群集中的每一有效节点的群集成员数据(254),并使用所述信息对照所述群集成员数据来评估所述持久保留注册表中的各共享密钥。4.如权利要求3所述的方法,其特征在于,还包括取代(312)对应于经由所述信息和所述群集成员数据未被标识为有效群集成员的群集节点的任何密钥。5.如权利要求1所述的方法,其特征在于,还包括在时间间隔(518)之后确定(504、506)所述所有者密钥仍然被列在所述共享存储机制的持久保留注册表中,并且如果否,则将所述所有者密钥重新插入所述共享存储机制的持久保留注册表中。6.一种在服务器群集环境中的系统,包括:多个节点(N1、N2),每一节点包括试图取得存储机制(101)的所有权的机制(111),并且对于每一节点,如果成功地取得所述存储机制(111)的所有权,则针对任何其他节点作出的取得所有权的企图来防护所述所有权,以及如果不成功,将包含相对于所述群集中的其他节点标识该节点的信息的共享密钥(230)插入所述存储机制(111)的持久保留注册表中来向该节点提供对所述存储机制的读和写访问。7.如权利要求6所述的系统,其特征在于,每一节点在试图取得所述存储机制的所有权之前向所述存储机制注册(406)。8.如权利要求6所述的系统,其特征在于,所述存储机制(111)与SCSI请求兼容,并且所述保留机制试图经由SCSI保留(410)请求来取得所有权。9.如权利要求6所述的系统,其特征在于,所述所有者节点获得指示所述群集中的每一有效节点的群集成员数据(254),并使用(308、310)所述群集成员数据来评估标识所述节点的信息,以取代(312)在所述群集中未被标识...

【专利技术属性】
技术研发人员:R·达斯D·A·迪昂
申请(专利权)人:微软技术许可有限责任公司
类型:发明
国别省市:美国,US

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

1