本地迁移的制作方法

文档序号:6498520阅读:135来源:国知局
本地迁移的制作方法
【专利摘要】通常描述了涉及本地迁移的技术。在一些示例中,与平台客户相关联的软件和/或数据可以“迁移”至新平台,而允许平台客户的软件和/或数据保留在相同硬件上。可以配置数据中心和/或基础结构即服务(IaaS)提供者以支持本地迁移,例如通过根据请求提供硬件标识符,根据请求提供平台标识符,根据请求提供平台兼容性信息和/或准许平台执行本地迁移操作,部署平台模块至本地迁移硬件,在本地迁移操作期间提供用户会话支持,和/或执行安全操作。
【专利说明】本地迁移
[0001]发明背景
[0002]除非在此另外指出,本部分中所述材料并非是对于本申请权利要求的现有技术,并且不承认作为包含在该部分中的现有技术。
[0003]主流计算机应用正在从独立管理的单机计算装置向经由网络连接访问软件和/或数据的已连接装置发展。“云计算”涉及一种其中可以经由网络连接访问计算资源的计算模型,并且从网络上可获得的资源可以称作“在云端”。
[0004]在网络连接的背后,“云”可以通常包括专业化管理的硬件和软件。数据中心操作员本身可以提供硬件基础结构,例如处在物理结构内的机架和服务器行列,并且包括存储器、线缆和冷却系统。在一些情况下,一个或多个“基础设施即服务”(IaaS)的提供者可以使用数据中心操作员的硬件提供基础结构层。IaaS提供者可以从数据中心内的IaaS提供者的资源库中提供例如服务器(作为物理机和/或虚拟机),原始数据存储器,防火墙,负荷平衡器和网络。数据中心操作员和IaaS提供者都可以提供硬件基础结构,并且在本文中被并称为“基础结构提供者”。
[0005]一个或多个“平台即服务”(PaaS)提供者,或者称为“平台提供者”,可以在基础结构提供者的硬件上提供平台层。平台提供者可以提供,例如,诸如操作系统、编程语言执行环境、数据库和网络服务器的计算平台。
[0006]包括例如商业组织和/或个人的一个或多个平台客户可以在所选的平台提供者所提供的平台上存储软件和数据。示例性的平台客户可以包括例如从事电子商务活动的商业组织。另一示例性的平台客户可以包括使用平台提供者的平台而提供软件层的“软件即服务”(SaaS)提供者。SaaS提供者可以向用户提供例如可以在云端获得的应用软件。
[0007]在云端访问平台客户的软件/数据的客户或者实体被称为“云客户端”或“用户”。因此,在示例性的设置中,基础结构提供者可以将云基础结构出售给平台提供者,平台提供者也可以将云平台出售给平台客户,以及平台客户还可以向访问云的用户出售它们的商品/服务。
发明概要
[0008]本公开通常描述了涉及本地迁移的装置、方法和计算机可读媒介的技术。一些示例性方法可以包括提供硬件标识符以支持本体迁移。配置用以提供硬件标识符的方法可以提供例如标识了被请求的、具有与已标识平台客户相关联的软件和/或数据的数据中心/IaaS硬件的信息。示例性方法可以包括提供硬件,该硬件包括由平台提供者所使用的多个服务器,其中平台提供者与平台客户相关联,以及其中平台客户与存储在一个或多个服务器上的平台客户数据相关联;接收包括平台客户标识的硬件身份请求,例如从已标识平台客户或者平台提供者接收,其中硬件身份请求包括请求标识包括了与第一平台提供者的已标识平台客户相关联的客户数据的服务器;以及响应于硬件身份请求,提供对应于包含与已标识平台客户相关联客户数据的服务器的硬件标识符。在一些实施例中,可以为了接收硬件身份请求和/或对其响应而目的而提供用户接口(UI)或应用程序接口(API)。在一些实施例中,硬件标识符可以标识在特定物理位置处数据中心处的任意数目服务器,包括例如在物理位置处所有服务器或其子集,诸如服务器行,服务器机架,或数据中心内一个或多个特定服务器。
[0009]一些示例性方法可以包括提供平台标识符以支持本地迁移。配置用于提供平台标识符的方法可以提供标识了被请求的、具有与已标识平台客户相关联的软件和/或数据的数据中心/IaaS硬件处可获得的平台的信息。示例性的方法可以包括提供硬件,该硬件包括在物理位置处由平台提供者使用的多个服务器,每个平台提供者与平台客户相关联,并且其中平台客户软件和/或数据存储在物理位置处的服务器上;接收包括了平台客户身份的本地迁移列表请求,例如从已标识平台客户或平台提供者接收;以及响应于本地迁移列表请求而提供对应于已标识平台客户的本地迁移列表,其中所提供的本地迁移列表标识了已标识平台客户可获得的、而无需将已标识平台客户的软件/数据迁移至物理位置之外的平台提供者。本地迁移列表可以标识已标识平台客户可获得的平台提供者,而无需迁移至物理位置处数据中心之外,或者无需迁移至数据中心内硬件子集之外,硬件子集诸如服务器行、服务器机架、或数据中心内一个或多个特定服务器。在一些实施例中,为了接收本地迁移列表请求的目的可以提供UI或API。
[0010]一些示例性方法可以包括提供平台兼容性信息以支持本地迁移。配置用以提供平台兼容性信息的方法可以提供平台兼容性信息,定义了一个或多个平台与在平台兼容性请求中标识的硬件之间的平台兼容性,以用于确定平台提供者与数据中心/IaaS硬件的兼容性。示例性方法可以包括接收包括一个或多个硬件标识符的平台兼容性请求,响应于平台兼容性请求而确定对应于在平台兼容性请求中标识的硬件标识符的服务器是否满足与请求中标识的平台提供者相关联的标准,或者确定对应于硬件标识符的服务器的兼容性特性,以及响应于平台兼容性请求而提供平台兼容性信息。平台兼容性信息可以包括允许或者拒绝对于本地迁移的批准和/或由平台兼容性请求中硬件标识符所标识的一个或多个服务器的特性。
[0011]一些示例性方法可以包括部署平台模块至本地迁移硬件以支持本地迁移。部署用于配置平台模块至本地迁移硬件的方法可以响应于来自平台客户或者平台提供者的请求而部署新的平台模块,例如与已标识平台提供者相关联的平台模块,至数据中心/IaaS硬件。示例性方法可以包括接收本地迁移请求,该本地迁移球球包括请求部署已标识平台提供者的平台服务模块至包括了与已标识平台客户相关联的平台客户数据的服务器;以及响应于本地迁移请求,部署已标识平台提供者的平台服务模块至包括了与已标识平台客户相关联的平台客户数据的服务器。所部署的平台服务模块可以随后执行迁移操作以将已标识平台客户的软件和/或数据迁移至已标识平台提供者的平台。
[0012]一些示例性方法可以包括在本地迁移操作期间提供用户会话支持。示例性方法可以当执行本地迁移操作时支持通过引导服务调用至新平台,例如与已标识平台提供者相关联的平台模块,来支持会话使用。当已标识平台客户的数据迁移至已标识平台提供者的平台时,与已标识平台客户相关联的增多数目的服务调用可以引导至由已标识平台提供者所提供的平台。
[0013]一些示例性方法可以包括执行安全操作以支持本地迁移。示例性方法可以屏蔽所提供的硬件标识符以防止数据中心映射或者云制图攻击。在一些实施例中,响应于硬件身份请求而提供的硬件标识符可以包括临时使用和/或另外受限使用的硬件标识符,如在此所述。每种方法可以与一些或者所有其他方法组合。
[0014]也公开了计算装置和具有用于执行在此所述各种方法的指令的计算机可读媒介。示例性计算机可读媒介可以包括非暂时性计算机可读存储媒介,具有可以由处理器执行的计算机可执行指令,当由处理器执行时指令使得处理器以执行在此所提供的各种方法的任意组合。示例性计算装置可以包括服务器,包括处理器,存储器,以及一个或多个迁移支持模块,诸如硬件身份请求服务模块、本地迁移列表请求服务模块、平台兼容性请求服务模块、本地迁移部署模块、合适的Π和/或API模块、安全模块和SBC模块,配置用于执行如在此进一步详述的如上所述方法的特征方面。
[0015]前述发明概要仅是示例性的并且并非意在以任何方式限定。除了如上所述示例性特征方面、实施例和特征之外,通过参考附图和以下详细说明书将明确其他特征方面、实施例和特征。
[0016]附图简述
[0017]结合附图从以下说明书和所附权利要求将使得本公开的前述和其他特征变得更明确。需要理解的是这些附图仅示出了根据本公开的数个实施例,并且因此不应视作限定了其范围,将通过使用附图采用额外具体和细节来描述本公开,其中:
[0018]图1A是示出了示例性的处于第一状态下的基础结构提供者。平台客户、平台提供者和用户的结构图;
[0019]图1B是示出了示例性的处于第二状态下的基础结构提供者、平台客户、平台提供者和用户的结构图;
[0020]图2是示出了在实施例中平台客户、各个平台提供者与基础结构提供者之间示例性交互的示意图,其中配置基础结构提供者以提供硬件标识符以支持本地迁移;
[0021]图3是示出了在实施例中平台客户、各个平台提供者与基础结构提供者之间示例性交互的示意图,其中配置基础结构提供者以提供平台标识符以支持本地迁移;
[0022]图4是示出了作为基础结构提供者服务器的一个示例的计算装置的示意图;
[0023]图5是示出了可以由基础结构提供者服务器装置执行的示例性方法的流程图;
[0024]图6是示出了可以在基础结构提供者服务器装置内配置的示例性SBC模块的结构图;以及
[0025]图7是可以由平台提供者服务器装置执行的示例性方法的流程图,以上所有根据本公开至少一些实施例设置。

【具体实施方式】
[0026]在以下详细说明书中,参考构成了其一部分的附图。在附图中,类似的符号通常表示类似的部件,除非上下文明确给出相反指示。在详细说明书、附图和权利要求中所述的示例性实施例并非意味着限定。可以采用其他实施例,以及可以做出其他改变,而不脱离在此展示的主题的精神和范围。易于理解的是,如通常在此所述以及在附图中所示的本公开的特征方面可以以大量不同配置结构而设置、替换、组合和设计,所有这些都是明确预期设计的并且构成了本公开的一部分。
[0027]本公开除了其他之外通常涉及包括涉及本地迁移(migrat1n in place)的方法、装置、系统和/或配置其中的计算机可读媒介的技术。在一些示例中,与平台客户相关联的软件和/或数据可以“迁移”至新平台,而同时允许该平台客户的软件和/或数据保留在相同硬件上。可以配置基础结构提供者以支持本地迁移,例如通过根据请求提供硬件标识符,根据请求提供平台标识符,根据请求提供平台兼容性信息,将平台模块布属于已标识硬件,在本地迁移操作期间提供用户会话,和/或执行安全操作。
[0028]图1A和图1B是根据本公开至少一些实施例设置的、示出了示例性基础结构提供者100、平台客户171、平台提供者181和用户141的结构图。图1A和图1B可以共同称作图1。在图1中,基础结构提供者100包括SBC 101,迁移支持模块102,平台A模块151,平台B模块152,平台C模块153,以及硬件105。硬件105包括在平台C133上的平台客户软件/数据121,在平台B 132上的平台客户软件/数据122,以及硬件106。在图1A中,硬件106包括在平台A 131上的平台客户软件/数据123。在图1B中,硬件106包括在平台B 132上的平台客户软件/数据123。
[0029]在参照图1所述示例中,平台客户软件/数据123与平台客户171相关联,例如平台客户171可以拥有软件/数据123。平台B 132和平台B模块152与平台提供者181相关联,例如可以由平台提供者181所拥有,而平台A 131和平台A模块151可以与不同于平台提供者181的平台提供者相关联,以及平台C 133和平台C模块153也可以与不同于平台提供者181的平台提供者相关联。平台客户软件/数据123可以称作已标识软件/数据123,因为可以标识软件/数据123以用于本地迁移操作。类似的,平台客户171可以称作已标识平台客户171,因为平台客户171可以标识用于本地迁移操作,以及平台提供者181和/或平台B 132可以分别称作已标识平台提供者181和已标识平台,因为平台181和/或平台B 132可以被标识为提供根据本地迁移操作已标识软件/数据123迁移至的目标平台。
[0030]图1A示出了在第一状态下的基础结构提供者100,以及在基础结构提供者100、平台客户171、平台提供者181与用户141之间的交互。基础结构提供者100、平台客户171、平台提供者181与用户141之间的连接可以由任何网络连接技术实施,例如在互联网之上的连接。在基础结构提供者100与平台客户171之间、在基础结构提供者100与平台提供者181之间、以及在平台客户171与平台提供者181之间的交互可以包括如参照图2和图3进一步详述的请求和响应交互。
[0031]在基础结构提供者100与用户141之间交互可以包括用户会话交互,如通常在诸如用户141的云客户端与可以由基础结构提供者100所提供的数据中心硬件105、106之间执行的会话。当执行本地迁移操作时可以配置SBC 101动态地将用户会话内的服务调用引导至诸如平台B 132的已标识平台,而不是例如平台A 131的第一平台。已标识平台也可以在此称作第二平台、新平台或已选定平台。
[0032]图1A也示出了将平台B模块152部署至硬件106以执行本地迁移操作,其中已标识软件/数据123从第一平台A 131迁移至已标识平台b 132。图1B示出了处于第二状态下的基础结构提供者100,其中由平台B 132支持已标识软件/数据123,以及可以配置SBC 101以将在与用户141进行的用户会话内的服务调用引导至平台B 132上的平台客户软件/数据123。
[0033]在一些实施例中,本地迁移操作可以包括,从第一平台诸如如图1A所示的平台A131将已标识软件/数据123迁移至第二平台诸如图1B所示的平台B 132,而已标识软件/数据123保留在相同硬件例如硬件106上。在一些实施例中,“相同硬件”可以包括在相同物理位置内的硬件的任何子集,例如具有已标识数据/软件123的硬件106。因此在一些实施例中,在相同硬件上保留可以包括保留在硬件106、硬件105上,或者由基础结构提供者100在诸如相同建筑的相同物理位置中操作的任何硬件,如硬件106。在一些实施例中,保留在相同硬件上可以包括保留在相同特定服务器上,保留在相同服务器机架上,保留在相同服务器行列中,或者保留在相同物理位置处相同的数据中心中,例如具有平台客户软件/数据123的特定服务器。然而,在此为了简化解释说明的目的,描述了其中本地迁移包括在硬件106上保留平台客户软件/数据123的实施例。硬件106因此可以称作已标识硬件106,因为硬件106可以标识作为其中在本地迁移操作之前、期间和之后已标识软件/数据123将保持在该处的硬件。在一些实施例中,“相同硬件”可以包括经由非公用网络而连接至硬件106的的任何硬件子集,非公用网络例如由基础结构提供者100操作以专用于基础结构提供者100的网络。
[0034]当迁移至新平台时允许已标识软件/数据123保留在已标识硬件106上从安全观点看是有利的,因为其并未将平台客户软件/数据暴露至边信道攻击和/或在将平台客户软件/数据迁移至不同硬件中所固有的其他安全风险。在一些情形下,本地迁移也可以具有其他优点,诸如减小由于迁移之前和之后不同的硬件环境导致的不希望错误。
[0035]多个不同平台提供者可以提供由基础结构提供者100硬件所支持的平台服务。例如,第一平台提供者(图1中未示出)可以提供可以由平台A模块151部署在用于平台客户的硬件106中的平台A 131,而第二平台提供者181可以提供可以由平台B模块152部署在用于平台客户的硬件105中的平台B 132,以及第三平台提供者(图1中未示出)可以提供可以由平台C模块153部署在用于平台客户的硬件105的平台C 133。平台A 131、B132和C 133可以均使用基础结构提供者硬件105。例如,多个PaaS提供者可以工作在单个IaaS设施内。
[0036]不同的平台提供者可以提供不同的商业模式、定价和契约类型而不论他们使用相同硬件的事实。例如,主要服务小型新兴公司的平台提供者可以允许精细控制但是具有最小客户支持以及最小点对点同步或内容传输服务。而大型多场所公司的平台提供者可以提供对确定性的多地点数据可用性和机构内系统集成专家和顾问服务的关注,以用于关注支持顾问的商业模式。进一步相反的,对于在线商业操作的平台提供者来说提供顾问服务的原因比较弱,因为他们的用户都是计算机行家,但是可以对快速响应时间和有效载荷平衡以及付费处理具有强烈关注。这三种情形的每一个体现了专注于为其平台客户提供不同服务中的平台提供者,并且平台客户可以随着时间而发展出需要不同的平台提供者。平台客户可以开始需要针对小型新兴企业的平台提供者,发展为当其变成更大的公司项目时需要针对大的多场所的平台提供者,以及最终改变为当其变成具有许多客户的成功商业组织时需要针对在线商业操作的平台提供者。
[0037]本公开的一些实施例提供了用于平台客户171的技术以确定可以部署在相同的基础结构提供者硬件,例如硬件106上的平台提供者。一些实施例可以进一步提供用于本地迁移的技术,其中平台客户软件/数据123可以在平台提供者之间迁移之前和之后通过移动可用平台而不是平台客户软件/数据123而运行在相同硬件106上。在一些实施例中,本地迁移实现了寿命周期模式,在该模式中增长型公司可以在专长于不同层级客户的支持和调整的平台提供者之间切换,而均不必关注改变到新的硬件、存储模型或网络体系架构的应用处理所带来的不可预期的影响。安全问题也减小了,因为平台客户软件/数据123无需在硬件之间转移。此外,在一些实施例中,平台客户可以构建机构内的云,以使得由相同的公司或其他实体控制平台客户171和基础结构提供者100。平台客户171可以利用一系列平台提供者服务并且向市场提供大量的基础结构提供者100容量以使得敏感数据不会离开建筑物、硬件子集或保留用于平台客户171的特定服务器。
[0038]在一些实施例中,可以配置迁移支持模块102以允许平台客户171例如在平台A131、B132和C 133的提供者之中选择平台提供者,而此时与平台客户171相关联的平台客户软件/数据123保留在基础结构提供者100内,并且可选地在诸如硬件105的基础结构提供者100所提供的硬件子集内,或者在诸如硬件106的由基础结构提供者100所提供的专用服务器内。可以采用硬件ID参考和存储去除混淆以允许平台客户171找到提供了已标识硬件106的平台提供者。可以由平台客户171选择已标识平台提供者181以建立在基础结构提供者100内的已标识硬件106。已标识软件/数据123可以迁移至已标识平台提供者181的平台B 132而不用在已标识硬件106之外传输已标识软件/数据123。在一些情形下,可以执行本地迁移操作而不必停止已标识软件/数据123的部署功能,如本文进一步所述。
[0039]图2是示出了根据本公开至少一些实施例设置的、在平台客户、各个平台提供者与基础结构提供者之间示例性交互的示意图,其中基础结构提供者配置用以提供硬件标识符以支持本地迁移。平台客户171可以希望从第一平台例如平台A 131切换至新平台,但是平台客户171可以希望平台客户软件/数据123如果可能的话保留在相同硬件上。在根据图2的硬件标识符实施例中,平台客户171可以向基础结构提供者100发送硬件身份请求。硬件身份请求可以包括对于包括平台客户软件/数据123的服务器进行标识的请求。在基础结构提供者100处的迁移支持模块102可以配置用以接收硬件身份请求,并且响应于硬件身份请求而提供对应于包括平台客户软件/数据123的硬件106的一个或多个硬件标识符。
[0040]平台客户171可以向平台提供者181、201和202发送平台兼容性请求。平台兼容性请求可以包括响应于硬件身份请求而从基础结构提供者100接收的硬件标识符,以及用于确定由平台提供者181、201和202所提供的平台是否可以是已部署的已标识硬件、在该示例中为硬件106的请求。平台提供者181、201和202可以接着向基础结构提供者100发送平台兼容性请求。从平台提供者181、201和202向基础结构提供者100发送的平台兼容性请求可选地包括额外的信息,诸如平台兼容性需求和/或对于硬件106的特定属性的请求以促进平台提供者兼容性确定。平台兼容性请求也可以提供用于确定平台兼容性的平台提供者和/或平台的标识。可以部署在基础结构100处的迁移支持模块102以响应于平台兼容性请求而提供平台兼容性信息,包括例如硬件106的属性和/或平台的批准/拒绝。平台提供者181、201和202可选地基于所提供的平台兼容性信息而做出兼容性判断,并且可以平台允许/拒绝响应平台客户171。在图2中,由平台提供者202所提供的平台确定为与硬件106不兼容,并且因此平台提供者202对于平台客户171的响应可以指示了不兼容,而来自平台提供者181、201的响应可以指示批准/与硬件106兼容。在一些实施例中,平台客户171可以直接向基础结构提供者100发送平台兼容性请求,并且基础结构提供者可以同样直接对于平台客户171做出响应。
[0041]平台客户171可以为本地迁移操作选择兼容的平台或者平台提供者,在该示例中为由已标识平台提供者181所提供的已标识平台B132。平台客户171可以向已标识平台提供者181或者直接向基础结构提供者100发送本地迁移请求,请求基础结构提供者100将已标识平台B 132部署至包括已标识软件/数据123的已标识硬件106。可以配置基础结构提供者100处的迁移支持模块102以从平台客户171或者平台提供者181接收本地迁移请求,并且响应于本地迁移请求将已标识平台提供者181的已标识平台B模块152部署至已标识硬件106。可以从平台提供者181或者从在基础结构提供者100内之前存储存储器检索平台B模块。可以配置平台B模块152以在已标识硬件106上安装已标识平台B 132,并且可选地执行迁移操作以将已标识软件/数据123迁移至已标识平台B 132。
[0042]图3是示出了根据本公开至少一些实施例设置的在平台客户、各个平台提供者与基础结构提供者之间示例性交互的示意图,其中基础结构提供者配置用以提供平台标识符以支持本地迁移。平台客户171可以具有由平台A 131支持的平台客户软件/数据123,其由第一平台提供者(图1中未示出)所提供。平台客户171可以希望切换至新平台,但是可以希望平台客户软件/数据123如果可能的话保留在相同硬件上,如上所述。平台客户171可以向基础结构提供者100发送本地迁移列表请求,请求标识了对于平台客户171可用的平台提供者的本地迁移列表而不必将已标识软件/数据123迁移至其相同物理位置外部,例如不必迁移至如当前用于已标识软件/数据123的相同硬件,在本示例中为硬件106,的外部。可以配置迁移支持模块102以接收本地迁移列表请求,以确定用于已标识软件/数据123的已标识硬件106,从而确定多个平台提供者与已标识硬件106的平台兼容性,从而向平台客户171提供对应于平台客户171的本地迁移列表,也即标识了可以部署至已标识硬件106的平台提供者的列表。确定平台兼容性可以包括与平台提供者181、201、202交换平台兼容性信息,类似于如上所述,并且包括例如硬件106的硬件特性,以及由各个平台提供者所提供平台的平台兼容性需求。在一些实施例中,基础结构提供者100无需向平台客户171或平台提供者181、201、202通知平台客户软件/数据123已部署在已标识硬件106上。
[0043]在图3中,如图2,平台客户171可以选择用于本地迁移操作的兼容平台或平台提供者,例如由平台提供者181所提供的平台B 132。平台客户171可以向已标识平台提供者181、或者直接向基础结构提供者100发送本地迁移请求,请求基础结构提供者100将已标识平台B 132部署至包括了已标识软件/数据123的硬件。在其中平台客户171不具有对于硬件106的硬件标识符的实施例中,平台客户171可以请求本地迁移,并且基础结构提供者100可以确定用于本地迁移操作的已标识硬件。可以部署在基础结构提供者100处的迁移支持模块102以从平台客户171或者平台提供者181接收本地迁移请求,并且响应于本地迁移请求将已标识平台提供者181的平台B模块152部署至已标识硬件106,如上所述。
[0044]图4是示出了根据本公开至少一些实施例设置的、作为基础结构提供者服务器的一个示例的计算装置的示意图。在非常基本的配置结构401中,计算装置400可以包括一个或多个处理器410和系统存储器420。存储器总线430可以用于在处理器410与系统存储器420之间的通信。
[0045]取决于所需配置结构,处理器410可以是任何类型,包括但不限于微处理器(μ P)、微控制器(μ C)、现场可编程门阵列(FPGA)、数字信号处理器(DSP)、或者其任意组合。处理器410可以包括一级或多级缓存,诸如一级缓存411和二级缓存412,处理器核心413—级寄存器414。处理器核心413可以包括运算逻辑单元(ALU)、浮点单元(FPU)、数字信号处理核心(DSP核心)、或者其任意组合。存储器控制器415也可以用于处理器410,或者在一些实施方式中存储器控制器415可以是处理器410的内部部件。
[0046]取决于所需配置结构,系统存储器420可以是任何类型,包括但不限于易失性存储器(诸如RAM)、非易失性存储器(诸如ROM、闪存等等),或者其任意组合。系统存储器420通常包括操作系统421,一个或多个应用程序422,以及程序数据425。应用程序423-224可以包括例如,SBC模块101和迁移支持模块102。程序数据425可以包括可以由应用程序423-224使用的硬件ID数据426,平台ID数据427,以及平台数据427。如在此详细所述,SBC模块101和迁移支持模块102可以配置用以支持各种本地迁移操作。硬件ID数据426可以包括列出了平台客户以及在基础结构提供者100内对应硬件的表格。平台ID数据427可以包括列出了在基础结构提供者100内硬件以及与这些硬件兼容的平台提供者的表格。平台数据427可以包括例如包含了基础结构提供者100内硬件的硬件特性的兼容性信息,以及配置用于将平台部署至硬件的平台模块,诸如平台A、B和C模块151、152、153。
[0047]计算装置400可以具有额外的特征或功能,以及额外的接口以促进在基本配置结构401与任何所需装置和接口之间的通信。例如,总线/接口控制器440可以用于促进经由存储接口总线441而在基本配置结构401与一个或多个数据存储装置450之间的通信。数据存储装置450可以是可移除装置451,非可移除存储装置452,或者其任意组合。仅列举少数,可移除存储和非可移除存储装置的示例包括诸如软盘驱动器和硬盘驱动器(HDD)的磁盘装置,诸如小型盘(⑶)驱动器或数字通用盘(DVD)驱动器的光盘驱动器,固态驱动器(SSD)和磁带驱动器。示例性的计算机存储媒介可以包括在用于存储信息的任何方法或技术中实施的易失性和非易失性、可移除和非可移除的媒介,诸如计算机可读指令、数据结构、程序模块或其他数据。
[0048]系统存储器420、可移除存储装置451和非可移除存储装置452是计算机存储媒介的所有示例。计算机存储媒介包括但不限于RAM、ROM、EEPR0M、闪存或其他存储技术,CD-ROM、数字通用盘(DVD)或其他光学存储装置,磁带盒、磁带、磁盘存储或其他磁性存储装置,或者可以用于存储所需信息并且可以由计算装置400访问的任何其他媒介。任何这种计算机存储媒介可以是装置400的一部分。
[0049]计算装置400也可以包括用于促进从各个接口装置(例输出接口、外围接口和通信接口)经由总线/接口控制器440至基本配置结构401的通信的接口总线442。示例性输出装置460包括图像处理单元461和音频处理单元462,其可以配置用以经由一个或多个A/V端口 463通信至诸如显示器或扬声器的各个外部装置。示例性外围接口 470可以包括串行接口控制器471或并行接口控制器472,其可以配置用于经由一个或多个I/O端口473通过有线或者无限连接而与诸如输入装置(例如键盘、鼠标、手写笔、语音输入装置、触摸输入装置等等)或其他外围装置(例如打印机、扫描仪等等)的外部装置通信。其他传统的I/O装置也可以连接诸如鼠标、键盘等等。示例性通信装置480包括网络控制器481,其可以设置以促进经由一个或多个通信端口 482而在网络通信之上与一个或多个其他计算装置490通信。
[0050]计算机存储媒介可以是通信媒介的一个示例。通信媒介可以通常由计算机可读指令、数据结构、程序模块或在诸如载波或其他传输机制的已调制数据信号中的其他数据而实现,并且包括任何信息传输媒介。“已调制数据信号”可以是具有以在信号中编码信息的方式设置或者改变其一个或多个特性的信号。借由示例但是非限定的方式,通信媒介可以包括诸如有线网络或直接有线连接的有线媒介,以及诸如声、射频(RF)、红外(IR)的无限媒介和其他无限媒介。
[0051]计算装置400实施作为在基础结构提供者100中的一个或多个管理服务器。管理服务器可以配置用以支持与平台客户和平台提供者的交互,并且可选地提供SBC 101以支持与诸如105的基础结构提供者硬件的用户会话。在一些实施例中,管理服务器可以配置为独立于硬件105,并且管理服务器可以保留用于管理功能而不是由平台客户软件/数据121、122、123所使用。自然,应该知晓的是,基础结构提供者可以提供任何服务器配置结构以提供诸如由SBC模块101和迁移支持模块102所提供那些的管理功能。
[0052]图5是示出了根据本公开至少一些实施例设置的、可以由基础结构提供者服务器装置400所执行的示例性方法的流程图。示例性流程图可以包括如组块102和501-506所示的一个或多个操作/模块,其表示了如在服务器装置400中方法、功能模块中执行的操作,和/或如记录在计算机可读媒介550上的指令。所示组块102和501-506可以设置以提供功能操作,对应于组块102处“迁移支持模块”、组块501处“Π/ΑΡΙ”、组块502处“硬件ID/MIP列表请求服务”、组块503处“安全性”、组块504处“平台兼容性”、组块505处“MIP部署”和/或组块506处“SBC集成”的一个或多个。
[0053]在图5中,组块102和501-506示出为顺序执行,其中组块102提供组块501,组块501提供组块502,504和505,组块502提供组块503,以及组块505提供组块506。然而应该知晓的是,这些组块为了方便可以重新设置以适用于特定实施例并且这些组块或者其一部分在一些实施例中可以同时执行。也应该知晓的是在一些示例中,各个组块可以消除、划分为额外组块、和/或与其他组块组合。
[0054]图5示出了示例性方法,由此基础结构提供者100可以通过组块102处配置用于如图2和/或图3所示与平台客户171和/或平台提供者181交互的“迁移支持模块”而支持本地迁移,以提供硬件ID或者本地迁移列表以辅助由平台客户171选择平台提供者,并且依照本地迁移请求而部署选定的平台。
[0055]在组块501“Π/ΑΡΙ”处,可以配置一个或多个Π/ΑΡΙ模块以经由网络接收到来的请求,以及提供对于所接收请求的响应。到来的请求可以包括例如硬件ID请求、本地迁移列表请求、平台兼容性请求和/或本地迁移部署请求。可以配置组块501以将接收到的请求传递至组块502-505的一个或多个,或者另外响应于接收到的请求而启动组块502、504和/或505的一个或多个的操作。可以配置组块501以向网络、例如平台客户、平台客户应用程序或发起请求的平台提供者提供对于所接收到的请求的响应,包括由组块502-506所产生的响应数据。
[0056]应该知晓的是大量UI和API配置结构是可能的,并且通常UI和API配置结构可以包括配置用于分别与人类用户和应用程序交互的人类和/或计算机可操作控制。UI和API配置结构可以配置用于提供包括响应信息的输出数据,其可以配置用于显示在Π中或者用于由调用应用程序所消耗。组块501可以例如实施配置用于接收HTTPGET和/或POST命令的API。组块501可以例如实施域名服务器(DNS)地址,对于将要使用的任何平台客户或平台提供者设定了至API功能的路由。
[0057]在一些实施例中,由组块501提供的Π/ΑΡΙ可以包括允许平台客户和/或平台提供者管理他们与基础结构提供者的关系的各种控制。例如,可以配置组块501以支持对账单历史、账户信息、服务水平和/或商业关系其他特征方面的控制、显示和/或检索。根据组块502-506的本地迁移支持可以包括在综合关系/账户管理Π/ΑΡΙ的各个其他特征之中的由组块501提供的一个方面或特征。组块501可以接收硬件ID请求或者本地迁移列表请求,并且可以配置组块501以启动组块502。
[0058]在组块502处“硬件ID/MIP列表请求服务”中,可以处理所接收到的硬件ID请求和/或本地迁移列表请求,并且可以产生对应的响应。配置用于接收硬件ID请求的实施例可以从平台客户和/或平台提供者接收硬件ID请求。硬件ID请求可以包括标识硬件的请求,硬件诸如服务器、服务器机架、服务器行列或者物理位置处的其他服务器子集,该硬件包括与第一平台提供者的已标识平台客户相关联的软件/数据。类似的,配置用于接收本地迁移请求的实施例可以从平台客户和/或平台提供者接收本地迁移列表请求。本地迁移列表请求可以包括标识与硬件兼容的平台或平台提供者的请求,硬件诸如服务器、服务器机架、服务器行列或者物理位置处其他服务器子集,该硬件包括与第一平台提供者的平台客户相关联的已标识软件/数据。
[0059]可以配置组块502以响应于硬件ID请求确定硬件ID。各种技术可以用于确定硬件ID。在一些实施例中,基础结构提供者100可以维持平台提供者和平台客户软件/数据与特定硬件之间映射的表格。可以通过在表格中查找平台提供者和/或平台客户而完成确定合适的硬件ID。可以例如通过将硬件ID分配至在物理位置处的硬件子集并且将不同平台提供者/平台客户分配至不同硬件子集而维持平台提供者和平台客户软件/数据到特定硬件的映射表格。在一些实施例中,硬件的子集可以对应于在特定物理位置处的所有硬件,并且不同的硬件ID可以用于在不同物理位置处的硬件。在一些实施例中,硬件ID可以因此对应于在数据中心处的所有硬件,或者对应于在数据中心内的服务器行列、服务器机架或者特定服务器。
[0060]在配置用以响应于硬件ID请求而确定硬件ID的一些实施例中,可以配置组块502以使用MAC ID或芯片序列号而标识硬件。在一些实施例中,可以配置组块502以采用配置用于探测其自身互联网协议(IP)地址的虚拟机(VM)实例。例如,VM可以部署至对应于硬件ID请求的、具有平台客户软件/数据的硬件。VM可以配置以访问Dom OIP地址和/或提取VM自身内部IP地址作为硬件ID。Dom OIP地址可以是独特的和稳定的虚拟机管理器标识符,并且因此可以配置VM以访问作为硬件ID的Dom OIP地址。VM的自身内部IP地址也可以提供用于一些实施例中的固定硬件ID。采用VM自身内部IP地址作为硬件ID的实施例可以在少于用于探测硬件ID的VM的寿命的时间内执行图5的方法组块。不论用于探测硬件ID的何种技术,可以配置VM以向组块501报告探测到的硬件ID。如上所述方法的变形也可以允许平台客户获得硬件ID而无需基础结构提供者支持。例如,平台客户171可以配置其自身VM以使用Dom OIP地址和/或VM自身内部IP地址而探测并且报告硬件ID。
[0061]在配置用于响应于硬件ID请求而确定硬件ID的一些实施例中,组块502可以包括组块503。“安全性”组块503可以配置用于例如通过将硬件ID转换为临时使用的硬件ID、平台客户特定硬件ID或者另外受限使用的硬件ID而改变硬件ID,其中受限使用硬件ID可以映射至固定硬件ID。可以采用与永久硬件ID的算法关系而产生受限使用硬件ID(例如与MAC ID或芯片序列号相关或者是其哈希值)。组块503可以由此防止泄露可以另外用于数据中心映射和云制图(cloud cartography)型攻击的固定硬件ID或信息。在一些实施例中,组块503可以配置以使用简单的查找表以将伪随机独特硬件ID与每件硬件相关联。组块502可以使用由组块503提供的硬件ID以将不同硬件ID返回至请求了硬件ID的每个不同平台客户或平台提供者,和/或将硬件ID的不同集合与对于每个硬件ID请求响应关联起来。
[0062]在配置用于提供硬件ID的实施例中,可以在组块502的交互之后,在一个或多个与平台客户或平台提供者的后续交互中执行组块504的平台兼容性操作。在以下所述的配置用于提供本地迁移列表的实施例中,可以配置组块502以与组块503交互。
[0063]组块502可以配置用以响应于本地迁移列表请求而确定与已标识硬件兼容的平台或平台提供者。在配置用于对于本地迁移列表请求响应的实施例中,可以如上所述配置组块502以确定对应于平台客户的硬件ID。组块502可以额外的与组块504交互以确定与已标识硬件的平台兼容性。兼容平台可以编在本地迁移列表中,并且可以响应于本地迁移列表请求而被提供给提出请求的平台客户或平台提供者。组块504可以跟随组块502。
[0064]在“平台兼容性”组块504中,可以配置迁移支持模块102以判断与已标识硬件的平台兼容性,例如在基础结构提供者100内与已标识平台客户171相关联的硬件106。组块504可以通过获取硬件特性、获取平台提供者硬件互用性(interoperability)要求、并且将获取到的硬件特性与获取到的硬件互用性要求做比较而判断与已标识硬件的平台兼容性。在一些实施例中,平台兼容性的判断可以编进入表格中,其中表格可以作为组块504的参考。在一些实施例中,可以配置组块504以实时响应于例如来自平台客户171、平台提供者181和/或组块502的平台兼容性请求而做出平台兼容性判断。
[0065]在一些实施例中,可以配置组块504以与平台客户171和/或平台提供者181交互。例如,可以配置组块504以经由网络接收平台兼容性请求,平台兼容性请求包括硬件ID以及可选地包括平台提供者标识。可以配置组块504以检查已标识硬件是否满足对于已标识平台提供者的任何已知平台需求,并且响应于平台兼容性请求而提供定义了一个或多个平台与已标识硬件的平台兼容性的平台兼容性信息。在一些实施例中,平台兼容性信息可以采取兼容性批准或拒绝的形式。备选的,可以配置组块504以确定所有可用平台提供者中对于已标识硬件来说可用的平台提供者,以及响应于兼容性请求而提供本地迁移列表。
[0066]在一些实施例中,可以配置组块504,以例如通过从组块502获取硬件ID,以及作为响应而向组块502提供本地迁移列表,从而与组块502交互。在一些实施例中,可以配置组块504以提供对应于已标识硬件的硬件特性,以辅助例如平台提供者兼容性判断。平台提供者可以响应于平台兼容性请求而基于从组块504收到的硬件特性从而做出其自身的关于平台兼容性的判断。组块505可以跟随组块504。
[0067]在“本地迁移(MIP)部署”组块505中,可以配置迁移支持模块102以接收本地迁移请求,本地迁移请求包括平台提供者身份,并且响应于本地迁移请求而部署已标识平台提供者的平台服务模块。例如,平台客户171或者平台提供者181可以发送本地迁移请求至组块505。依照本地迁移请求,可以配置组块505以发起或者允许本地迁移操作。在本地迁移操作中,已标识平台提供者的平台服务模块可以部署到诸如在与平台客户的软件和数据相同物理位置处一个或多个服务器的硬件,以实现平台客户的软件/数据从由第一平台提供者所提供的平台迁移至由已标识平台提供者所提供的平台,已标识平台提供者可以是例如被选择作为平台客户的已标识新平台。在平台提供者之间迁移客户软件和数据可以使用当前存在或者未来可以研发的各种技术来完成,可以大大省略在迁移操作中执行的数据传输步骤。新的已标识平台提供者可以具有有效网络地址以用于平台客户软件/数据的存储位置(其可以通过存储API和/或经由基础结构提供者存储而获得),并且已标识平台提供者可以在与平台客户的软件/数据相同硬件上建立新平台VM镜像,其中VM可以使用来自其当前位置的平台客户的软件/数据。部署VM建立可以例如在与已有平台客户部署相同行列或机架内完成,或者可以甚至使用在此方法接替精确相同的服务器。组块506可以跟随组块505。
[0068]在SBC集成”组块506 “中,可以配置迁移支持模块102以与SBC 101交互。可以配置506以将迁移至新平台通知SBC 101,和/或配置SBC 101以引导服务调用至新平台。在一些实施例中,可以配置组块506以通知SBC 101何时进行迁移,使得SBC 101以当执行迁移时将与平台客户171相关联的增多数目的服务调用引导至平台B132。
[0069]图6是示出了根据本公开至少一些实施例设置的可以部署在基础结构提供者服务器装置400内的示例性SBC模块的结构图。在一些实施例中,实施了图6的基础结构提供者服务器装置可以包括如实施了图5的那些一个或多个分立装置,如所优选的。然而,因为图5和图6均采用计算装置实施,该计算装置均标注为装置400。框图包括由组块101和601所示的一个或多个操作/模块,表示了如服务器装置400中方法、功能模块中执行的操作,和/或可以记录在计算机可读媒介650上的指令。可以设置组块101和601以提供对应于在组块101处“SBC模块”和/或在组块601处“迁移支持集成”的一个或多个的功能操作。
[0070]在图6中,组块101和601示出为顺序执行,其中步骤101提供步骤601。然而将要知晓的是,这些组块可以为了方便重新设置以适用于特定实施例,并且这些组块或其一部分在一些实施例中可以同时执行。也应该知晓的是在一些实力中,各个组块可以消除、划分为额外组块和/或与其他组块组合。
[0071]在组块101 “SBC模块”中,SBC 101可以配置用以通常执行现有技术已知或者未来可以研发的任何SBC操作。SBC 101可以支持在平台客户软件/数据123与诸如141的用户之间的用户会话,引导了用户会话服务调用至提供在平台客户软件/数据123之中各个不同服务,而同时维持了总体用户会话状态。可以配置组块101以包括组块601。
[0072]在“迁移支持集成”组块601中,可以配置SBC 101以从组块506接收通知和/或配置命令,如上所述。当平台客户软件/数据123迁移至平台B 132时,组块601可以响应于接收到的通知/命令而配置SBC 101,将在例如与用户141的任何活动用户会话中的服务调用引导至在已标识平台B 132上的平台客户软件/数据123,如图1B所示。在一些实施例中,当平台客户的软件/数据123迁移至由已标识平台提供者181所提供的平台B132时,可以配置组块601以将与平台客户171相关联的增多数目的服务调用引导至由已标识平台提供者181所提供的平台B 132。随着在迁移操作期间,平台B 312控制平台客户的软件/数据123的增多片段,SBC 101可以配置用以将增多数目的服务调用引导至平台B 132,直至完成了迁移并且所有服务调用都可以被引导至平台B 132。
[0073]图7是示出了根据本公开至少一些实施例设置的可以由平台提供者服务器装置700执行的示例性方法的流程图。示例性流程图可以包括由组块701和710-713所示的一个或多个操作/模块,其表示如在装置700中方法、功能模块中执行的操作,和/或如可以记录在计算机可读媒介750上的指令。所示组块701和710-713可以设置用以提供功能操作,对应于组块701处“平台提供者MIP支持模块”、组块710处“Π/ΑΡΙ”、组块711处“硬件ID获得”、组块712处“平台兼容性”和/或组块713处“平台提供者发起的MIP部署”的一个或多个。
[0074]在图7中,组块701和710-713示出为顺序执行,其中组块701包括组块710,以及组块710包括组块711-713。然而应该知晓的是,这些组块为了方便可以重新设置以适用于特定的实施例,并且这些组块或其一部分可以再一些实施例中同时执行。也应该知晓的是在一些示例中各个组块可以消除、划分为额外组块、和/或与其他组块组合。
[0075]图7示出了示例性方法,由此平台提供者服务器装置700,例如由平台提供者181操作的装置,可以经由与平台客户171和基础结构提供者100交互而支持本地迁移。例如,已标识平台提供者181可以采用组块701,配置用于从平台客户171接收关于本地迁移的查询,以支持对于潜在的本地迁移操作的信息收集,以及最终发起或者参与用于在基础结构提供者100内已标识软件/数据132的本地迁移部署。
[0076]在组块710 “Π/ΑΡΙ”中,一个或多个Π和/或API模块可以配置用以经由网络接收到来的请求,以及提供对所接收请求的响应。到来的请求可以包括例如本地迁移查询,平台兼容性请求,和/或本地迁移部署请求。可以配置组块710以将接收到的请求传递至一个或多个组块711-713,或者响应于接收的请求而发起一个或多个组块711-713的操作。组块710可以配置向网络、例如向发起了请求的平台客户、平台客户应用程序或基础结构提供者提供对于接收到请求的响应,包括由组块711-713产生的响应数据。应该知晓的是,大量Π和API配置结构是可能的,并且通常Π和API配置结构可以包括配置用以分别与人类用户和应用程序交互的人类和/或计算机可操作控制,如上所述。组块710可以包括或者与组块711-713交互。
[0077]在“硬件ID获取”组块711中,可以配置平台提供者MIP支持模块701以从平台客户171接收硬件ID,例如同判断平台提供者与已标识硬件兼容性的请求一起接收。在一些实施例中,可以配置组块711以接收并未包括硬件ID的平台客户本地迁移查询,以及从基础结构提供者100为平台客户获取硬件ID。例如,可以配置组块711以产生对于标识平台客户171的基础结构提供者API的调用,以及响应于调用而接收对应于平台客户171的硬件ID。也可以采用用于获取硬件ID的其他方法,其中这些方法如参照图5所述。组块712可以跟随组块711。
[0078]在“平台兼容性”组块712中,可以配置平台提供者MIP支持模块701以确定平台与由所接收硬件ID标识的硬件的兼容性。在一些实施例中,可以配置组块712以产生对于诸如501的基础结构提供者API的调用,包括用于已标识平台用户171的硬件ID。可以配置组块712以响应于调用接收兼容性信息,以及处理接收到的兼容性信息以确定平台兼容性。当接收到的兼容性信息包括兼容性批准或拒绝时,组块712需要最小处理。当接收到的兼容性信息包括硬件特性时,可以配置组块712以将接收到的硬件特性与任何平台要求作比较。在一些实施例中,可以配置组块712以对来自基础结构提供者、例如来自组块504的包括平台要求的信息的调用做出响应,以支持由基础结构提供者100进行的平台兼容性判断。组块713可以跟随组块712。
[0079]在“平台提供者发起的MIP部署”组块713中,可以配置平台提供者MIP支持模块701以接收平台客户选择或在本地迁移操作中平台部署的授权。响应于选择/授权,可以配置组块713以在基础结构提供者100内平台客户的相同硬件上部署平台。组块713可以向基础结构提供者100发送本地迁移请求、平台部署模块、例如平台B模块152、硬件ID和/或平台客户标识符的一个或多个。可以随后处理基础结构提供者100或者平台提供者182以将平台B 132部署在平台客户硬件106上。
[0080]在系统的特征方面的硬件和软件实施方式之间几乎没有差别;硬件或软件的使用通常(但并非总是,其中在某些上下文中硬件和软件之间的选择可以变得重要)是表示了成本与效率权衡的设计选择。有在此所述的处理器和/或系统和/或其他技术(例如硬件、软件和/或固件)可以影响的各种手段,以及优选的手段将随着其中配置了处理器和/或系统和/或其他技术的上下文而变化。例如,如果实施者确定速度和精度是极为重要的,实施者可以主要选取硬件和/或固件手段;如果灵活性是极为重要的,实施者可以主要选择软件实施方式;或者再次备选地,实施者可以选取硬件、软件和/或固件的一些组合。
[0081]之前详述说明书经由使用结构图、流程图和/或示例列举了装置和/或工序的各个实施例。在包含一个或多个功能和/或操作的这些结构图、流程图和/或示例的范围内,本领域技术人员应该理解的是这些结构图、流程图或示例内的每个功能和/或操作可以由大量硬件、软件、固件或其任何虚拟组合而单独地和/或共同地实施。在一些实施例中,在此所述的主题的多个部分可以经由专用集成电路(ASIC)、现场可编程门阵列(FPGA)、数字信号处理器(DSP)或其他集成形式来实施。然而,本领域技术人员将认识的是,在此所述实施例的一些特征方面全部或者部分地可以等价地实施在集成电路中,作为在一个或多个计算机上运行的一个或多个计算机程序(例如作为在一个或多个计算机系统上运行的一个或多个程序),作为在一个或多个处理器上运行的一个或多个程序(例如作为在一个或多个微处理器上运行的一个或多个程序),作为固件,或者作为其虚拟的任意组合,并且设计电路和/或对于软件和或固件编写代码将恰好在受到本公开教导的本领域技术人员的能力范围内。此外,本领域技术人员将知晓的是在此所述的主题的机制能够以大量各种形式发布作为程序产品,并且应用在此所述的主题的示例性实施例而不论用于实际执行发布的信号承载媒介的特定类型。信号承载媒介的示例包括但不限于以下:诸如软盘、硬盘驱动(HDD)、小型盘(CD)、数字通用盘(DVD)、数字磁带、计算机存储器等等的可记录类型媒介;以及诸如数字和/或模拟通信媒介的传输类型媒介(例如光纤电缆、波导、有线通信链路、无线通信链路等等)。
[0082]本领域技术人员将知晓的是在本领域内通常以在此列出的方式描述装置和/或方法,并且此后使用工程设计实践以将这些所述装置和/或方法集成至数据处理系统中。也即,在此所述的装置和/或方法的至少一部分可以经由合理量的试验而集成至数据处理系统中。本领域技术人员将知晓的是典型的数据处理系统通常包括系统单元外壳、视频显示装置、诸如易失性和非易失性存储器的存储器、诸如微处理器和数字信号处理器的处理器、诸如操作系统的计算实体、驱动器、图形用户界面、以及应用程序、诸如触摸垫或触摸屏的一个或多个交互装置、和/或包括反馈回路以及控制电动机的控制系统(例如用于感测位置和/或速率的反馈;用于移动和/或调整部件和/或数量的电动机)的一个或多个。典型的数据处理系统可以采用任何合适的商业可获得部件实施,诸如在数据计算/通信和/或网络计算/通信系统中找到的那些。在此所述主题有时示出了包含在不同其他部件内或者与其连接的不同部件。应该理解的是,这些所示体系架构仅仅是示例并且实际上可以实施实现了相同功能的许多其他体系架构。在概念意义上,用以实现相同功能任何部件设置是有效地“关联的”,以使得实现所需功能。因此,在此组合以实现特定功能的任何两个部件可以视作相互“关联”以使得实现所需功能,而不论体系架构或中间部件。同样地,如此关联的任何两个部件也可以视作相互“可操作地连接”或者“可操作地耦合”以实现所需功能,并且能够如此关联的任何两个部件也可以视作相互“可操作地可耦合”以实现所需功能。可操作地可耦合的具体示例包括但不限于物理配对和/或物理交互作用的部件,和/或无线可交互的和/或无线交互作用的部件,和/或逻辑交互和/或逻辑可交互的部件。
[0083]关于在此基本上任何复数和/或单数术语的使用,当对于语境和/或申请合适时,本领域技术人员可以从复数转换至单数和/或从单数转换至复数。为了简明起见在此仅仅列出了各个单数/复数的排列。
[0084]本领域技术人员应该理解的是通常在此、特别是在所附权利要求(例如所附权利要求的实体)中使用的术语通常意在作为“开放式”术语(例如术语“包括”应该解释为“包括但是不限于”,术语“具有”应该解释为“至少具有”,术语“包含”应该解释为“包含但是不限于”等等)。本领域技术人员应该进一步理解的是如果引入的权利要求陈述的具体数目是有意的,这种意图将明确地陈述在权利要求中,并且在没有这种陈述的情形下不存在这种意图。例如,作为对理解的帮助,以下所附权利要求可以包含引入性短语“至少一个”和“一个或多个”的使用以引入权利要求陈述。然而,这些短语的使用不应构造为暗示通过不定冠词“一”而对权利要求陈述的引入将包含这些引入的权利要求陈述的任何特定权利要求限定为仅包含一个这种陈述的实施例,即便当相同权利要求包括引入性短语“一个或多个”或“至少一个”以及诸如“一”的不定冠词时(例如“一”应该解释为意味着“至少一个”或“一个或多个”);同理适用于对用于引入权利要求陈述项的定冠词的使用。此外,即便明确地陈述了引入的权利要求陈述项的具体数目,本领域技术人员将认识到的是这些陈述应该解释为意味着至少具有所述数目(例如仅陈述了“两个陈述项”而没有其他修饰,意味着至少两个陈述项,或者两个或更多陈述项)。此外,在那些其中使用了惯用类比“A、B和C等等的至少一个”的情形中,通常这种构造意在使得本领域技术人员将理解这种习惯使用(例如“具有A、B和C的至少一个的系统”将包括但不限于具有单独A、单独B、单独C、A和B —起、A和C 一起、B和C 一起、和/或A、B和C 一起等等的系统)。本领域技术人员将进一步理解的是不论在说明书、权利要求书或附图中,事实上表示两个或多个备选性项目的任何分离性词语和/或短语应该理解为预期了包括一个项目、任何项目、或者所有项目的可能性。例如,短语“A或B”应该理解为包括“A”或“B”或“A和B”的可能性。
[0085]尽管在此使用各个方法和系统已经描述并且示出了某些示例性技术,本领域技术人员应该理解的是可以不脱离请求保护的主题而可以做出多个其他修改例并且可以替换等价形式。此外,可以不脱离在此所述的中心概念而做出许多修改例以适用在请求保护主题教导下的特定情形。因此,请求保护的主题意在并非限定于所述特定示例,而是这些请求保护的主题也可以包括落入所附权利要求范围内的所有实施方式及其等价形式。
【权利要求】
1.一种方法,包括: 在物理位置处提供多个服务器以用于多个平台提供者,其中,所述平台提供者的每一个与一个或多个平台客户相关联,以及其中所述平台客户的每一个与存储在所述多个服务器的一个或多个上的用户数据相关联; 接收包括平台客户身份的本地迁移列表请求; 响应于所述本地迁移列表请求,提供对应于已标识平台客户的本地迁移列表,其中所述本地迁移列表标识了对所述已标识平台客户来说可获得的平台提供者,而不必将所述已标识平台客户的数据迁移至所述物理位置外部。
2.根据权利要求1所述的方法,其中,所述本地迁移列表标识了对所述已标识平台客户来说可获得的平台提供者,而不必将所述已标识平台客户的数据迁移至所述物理位置处数据中心外部。
3.根据权利要求1所述的方法,其中,所述本地迁移列表标识了对所述已标识平台客户来说可获得的平台提供者,不必将所述已标识平台客户的数据迁移至所述物理位置处数据中心内服务器行外部。
4.根据权利要求1所述的方法,其中,所述本地迁移列表标识了对所述已标识平台客户来说可获得的平台提供者,而不必将所述已标识平台客户的数据迁移至所述物理位置处数据中心内服务器机架外部。
5.根据权利要求1所述的方法,其中,所述本地迁移列表标识了对所述已标识平台客户来说可获得的平台提供者,而不必将所述已标识平台客户的数据迁移至所述物理位置处数据中心内一个或多个特定服务器外部。
6.根据权利要求1所述的方法,进一步包括: 接收本地迁移请求,所述本地迁移请求包括平台提供者身份;以及 响应于所述本地迁移请求,将所述已标识平台提供者的平台服务模块部署至在所述物理位置处的服务器以使得所述已标识平台客户的数据从由第一平台提供者所提供的平台迁移至由所述已标识平台提供者所提供的平台。
7.根据权利要求6所述的方法,进一步包括,当所述平台客户的数据迁移至由所述已标识平台提供者所提供的平台时,将与所述已标识平台客户相关联的增多数目的服务调用引导至由所述已标识平台提供者所提供的平台。
8.根据权利要求1所述的方法,进一步包括,提供包括本地迁移列表请求控制的用户接口(UI)或应用程序接口(API),其中所述本地迁移列表请求经由所述Π或API接收,并且所述本地迁移列表经由所述Π或API提供。
9.根据权利要求1所述的方法,进一步包括,确定由多个平台提供者所提供的平台与在所述物理位置处一个或多个服务器的平台兼容性,并且将被确定与在所述物理位置处的所述一个或多个服务器兼容的平台纳入所述本地迁移列表。
10.一种服务器,包括: 处理器; 存储器;以及 本地迁移列表请求服务模块,存储在所述存储器中并且可以由所述处理器执行,其中配置所述本地迁移列表请求服务模块以: 接收包括了平台客户身份的本地迁移列表请求,其中已标识平台客户与存储在物理位置处多个服务器的、用于多个平台提供者的、一个或多个处的平台客户数据相关联,其中所述平台提供者的每一个与一个或多个平台客户相关联,以及其中所述平台客户的每一个与存储在所述多个服务器的一个或多个上的平台客户数据相关联;以及 响应于所述本地迁移列表请求,提供对应于已标识平台客户的本地迁移列表,其中所述本地迁移列表标识了对所述已标识平台客户来说可获得的平台提供者、而不必将所述已标识平台客户的数据迁移至所述物理位置外部。
11.根据权利要求10所述的服务器,其中,所述本地迁移列表标识了对于所述已标识平台客户可获得的平台提供者、而不必将所述已标识平台客户的数据迁移至所述物理位置处数据中心外部。
12.根据权利要求10所述的服务器,其中,所述本地迁移列表标识了对于所述已标识平台客户可获得的平台提供者、而不必将所述已标识平台客户的数据迁移至所述物理位置处数据中心内服务器行的外部。
13.根据权利要求10所述的服务器,其中,所述本地迁移列表标识了对于所述已标识平台客户可获得的平台提供者、而不必将所述已标识平台棵树的数据迁移至所述物理位置处数据中心内服务器机架外部。
14.根据权利要求10所述的服务器,其中,所述本地迁移列表标识了对于所述已标识平台客户可获得的平台提供者、而不必将所述已标识平台客户的数据迁移至所述物理位置处数据中心内一个或多个特定服务器外部。
15.根据权利要求10所述的服务器,进一步包括,存储在所述存储器中并且可以由所述处理器执行的本地迁移部署模块,其中配置所述本地迁移部署模块以: 接收本地迁移请求,所述本地迁移请求包括平台提供者身份;以及 响应于所述本地迁移请求,将已标识平台提供者的平台服务模块部署至在所述物理位置处的服务器,以实现所述已标识平台客户的数据从由第一平台提供者所提供的平台迁移至由所述已标识平台提供者所提供的平台。
16.根据权利要求15所述的服务器,进一步包括,存储在所述存储器中并且可以由所述处理器执行的对话边界控制器(SBC)模块,其中当所述平台客户的数据迁移至由所述已标识平台提供者所提供的平台时,配置所述SBC模块以引导与所述已标识平台客户相关联的增多数目的服务调用至由所述已标识平台提供者所提供的平台。
17.根据权利要求10所述的服务器,进一步包括,存储在所述存储器中并且可以由所述处理器执行的用户接口(UI)或应用程序接口(API)模块,其中配置所述Π或API模块以: 提供包括了本地迁移列表请求控制的Π或API ; 经由所述本地迁移列表请求控制而接收所述本地迁移列表请求;以及 经由所述Π或API提供所述本地迁移列表。
18.根据权利要求10所述的服务器,进一步包括,存储在所述存储器中并且可以由所述处理器执行的平台兼容性模块,其中配置所述平台兼容性模块以确定由多个平台提供者所提供的平台与在所述物理位置处一个或多个服务器的兼容性,以及将被确定与所述物理地址处一个或多个服务器兼容的平台纳入所述本地迁移列表。
19.一种非暂时性计算机可读存储媒介,具有可以由处理器执行的计算机可执行指令,当由所述处理器执行所述指令时使得所述处理器: 接收包括了平台客户身份的本地迁移列表请求,其中已标识平台客户与存储在物理位置处多个服务器的、用于多个平台提供者的、一个或多个处的平台客户数据相关联,其中所述平台提供者的每一个与一个或多个平台客户相关联,以及其中所述平台客户的每一个与存储在所述多个服务器的一个或多个上的平台客户数据相关联以及 响应于所述本地迁移列表请求,提供对应于所述已标识平台客户的本地迁移列表,其中所述本地迁移列表标识了对于所述已标识平台客户来说可获的、而不必将所述已标识平台客户的数据迁移至所述物理位置外部的平台提供者。
20.根据权利要求19所述的非暂时性计算机可读存储媒介,其中,所述本地迁移列表标识了对于所述已标识平台客户可获得的、而不必将所述已标识平台客户的数据迁移至所述物理位置处数据中心外部的平台提供者。
21.根据权利要求19所述的非暂时性计算机可读存储媒介,其中,所述本地迁移列表标识了对于所述已标识平台客户可获得的、而不必将所述已标识平台客户的数据迁移至所述物理位置处数据中心内服务器行外部的平台提供者。
22.根据权利要求19所述的非暂时性计算机可读存储媒介,其中,所述本地迁移列表标识了对于所述已标识平台客户可获得的、而不必将所述已标识平台客户的数据迁移至所述物理位置处数据中心内服务器机架外部的平台提供者。
23.根据权利要求19所述的非暂时性计算机可读存储媒介,其中,所述本地迁移列表标识了对于所述已标识平台客户可获得的、而不必将所述已标识平台客户的数据迁移至所述物理位置处数据中心内一个或多个特定服务器外部的平台提供者。
24.根据权利要求19所述的非暂时计算机可读存储媒介,其中,所述指令使得所述处理器: 接收本地迁移请求,所述本地迁移请求包括平台提供者身份;以及 响应所述本地迁移请求,将已标识平台提供者的平台服务模块部署至所述物理位置处的服务器,以实现所述已标识平台客户的数据从由第一平台提供者所提供的平台迁移至由所述已标识平台提供者所提供的平台。
25.根据权利要求24所述的非临时计算机可读存储媒介,其中,所述指令使得所述处理器采用会话边界控制器(SBC)模块当所述已标识平台客户的数据迁移至由所述已标识平台提供者所提供的平台时,将与所述已标识平台客户相关联的增多数目的服务调用引导至由所述已标识平台提供者所提供的平台。
26.根据权利要求19所述的非暂时性计算机可读存储媒介,其中,所述指令使得所述处理器: 提供包括了本地迁移列表请求控制的Π或API ; 经由所述本地迁移列表请求控制而接收所述本地迁移列表请求;以及 经由所述UI或API提供所述本地迁移列表。
27.根据权利要求23所述的非临时计算机可读存储媒介,其中,所述指令使得所述处理器确定由多个平台服务器所提供的平台与在所述物理位置处一个或多个服务器的兼容性,以及将被确定与所述物理位置处一个或多个服务器兼容的平台纳入所述本地迁移列表。
28.—种方法,包括: 提供由多个平台提供者所使用的多个服务器,其中所述平台 提供者的每一个与一个或多个平台客户相关联,以及其中所述平台客户的每一个与存储在所述多个服务器的一个或多个上的客户数据相关联; 接收硬件身份请求,其中所述硬件身份请求包括对于包含与第一平台提供者的已标识平台客户相关联的平台客户数据的服务器进行标识的请求; 响应于所述硬件身份请求,提供一个或多个硬件标识符,所述标识符对应于包含与所述已标识平台客户相关联的平台客户数据的服务器; 接收本地迁移请求,所述本地迁移请求包括将已标识平台服务提供者的平台服务模块部署至包含与所述已标识平台客户相关联的平台客户数据的服务器的请求;以及 响应于所述本地迁移请求,将所述已标识服务提供者的平台服务模块部署至包含与所述已标识平台客户相关的平台客户数据的所述多个服务器的一个或多个。
29.根据权利要求28所述的方法,进一步包括,当所述已标识平台客户的数据迁移至由所述已标识平台提供者所提供的平台时,将与所述已标识平台客户相关联的增多数目的服务调用引导至由所述已标识平台提供者所提供的所述平台。
30.根据权利要求28所述的方法,进一步包括,提供包括硬件身份请求控制的用户接口(UI)或应用程序接口(API),其中所述硬件身份请求经由所述Π或API接收,并且所述一个或多个硬件标识符经由所述Π或API提供。
31.根据权利要求28所述的方法,进一步包括,接收包括了一个或多个硬件标识符的平台兼容性请求,以及响应于所述平台兼容性请求,提供定义一个或多个平台与在所述平台兼容性请求中标识的硬件的平台兼容性的平台兼容性信息。
32.根据权利要求28所述的方法,其中,响应于所述硬件身份请求提供的一个或多个硬件标识符包括受限使用的硬件标识符。
33.一种服务器,包括: 处理器; 服务器;以及 硬件身份请求服务模块,存储在所述存储器中并且可以由所述处理器执行,其中所述硬件身份请求服务模块被配置以: 接收硬件身份请求,其中所述硬件身份请求包括对于服务器进行标识的请求,所述服务器包含与多个平台提供者中的第一平台提供者的已标识平台客户相关联的平台客户数据,其中所述平台提供者的每一个与一个或多个平台客户相关联,以及其中所述平台客户的每一个与存储在多个服务器的一个或多个上的客户数据相关联;以及 响应于所述硬件身份请求,提供对应于包含与所述已标识平台客户相关联的平台客户数据的服务器的一个或多个硬件标识符;以及本地迁移部署模块,存储在所述存储器中并且可以由所述处理器执行,其中所述本地迁移部署模块被配置以: 接收本地迁移请求,所述本地迁移请求包括对于将已标识平台服务提供者的平台服务模块部署至包含与所述已标识平台客户相关联的平台客户数据的服务器;以及 响应于所述本地迁移请求,将所述已标识服务提供者的平台服务模块部署至包含与所述已标识平台客户相关联的平台客户数据的所述多个服务器的一个或多个。
34.根据权利要求33所述的服务器,进一步包括,存储在所述存储器中并且可以由所述处理器执行的会话边界控制器(SBC)模块,其中配置所述SBC模块以当所述已标识平台客户的数据迁移至由所述已标识平台提供者所提供的平台时,将与所述已标识平台客户相关联的增多数目的服务调用引导至由所述已标识平台提供者所提供的平台。
35.根据权利要求33所述的服务器,进一步包括,存储在所述存储器中并且可以由所述处理器执行的用户接口(UI)或应用程序接口(API)模块,其中所述Π或API模块被配置以: 提供包括了硬件身份请求控制的Π或API ; 经由所述Π或API中硬件身份请求控制而接收所述硬件身份请求;以及 经由所述Π或API提供与包含与所述已标识平台客户相关联的平台客户数据的所述服务器对应的一个或多个硬件标识符。
36.根据权利要求33所述的服务器,进一步包括,存储在所述存储器中并且可以由所述处理器执行的平台兼容性模块,其中配置所述平台兼容性模块以接收包括一个或多个硬件标识符的平台兼容性请求,以及响应于所述平台兼容性请求,提供定义一个或多个平台与在所述平台兼容性请求中标识的硬件之间的平台兼容性的平台兼容性信息。
37.根据权利要求33所述的服务器,进一步包括,存储在所述存储器中并且可以由所述处理器执行的安全模块,其中配置所述安全模块以产生受限使用的硬件标识符以用作响应于硬件身份请求而提供的硬件标识符。
38.一种非暂时性计算可读存储媒介,具有可以由处理器执行的计算机可执行指令,当由所述处理器执行时所述指令使得所述处理器: 接收硬件身份请求,其中所述硬件身份请求包括对于服务器进行标识的请求,所述服务器包含与多个平台提供者中的第一平台提供者的已标识平台客户相关联的平台客户数据,其中所述平台提供者的每一个与一个或多个平台客户相关联,以及其中所述平台客户的每一个与存储在多个服务器的一个或多个上的客户数据相关联;以及 响应于所述硬件身份请求,提供对应于包含与所述已标识平台客户相关联的平台客户数据的服务器的一个或多个硬件标识符;以及 接收本地迁移请求,所述本地迁移请求包括对于将已标识平台服务提供者的平台服务模块部署至包含与所述已标识平台客户相关联的平台客户数据的服务器的请求;以及 响应于所述本地迁移请求,将所述已标识服务提供者的平台服务模块部署至包含与所述已标识平台客户相关联的平台客户数据的所述多个服务器的一个或多个。
39.根据权利要求38所述的非暂时性计算机可读存储媒介,其中所述指令使得所述处理器采用会话边界控制器(SBC)模块以当所述已标识平台客户的数据迁移至由所述已标识平台提供者所提供的平台时,将与所述已标识平台客户相关联的增多数目的服务调用引导至由所述已标识平台提供者所提供的平台。
40.根据权利要求38所述的非暂时性计算机可读存储媒介,其中,所述指令使得所述处理器以: 提供包括了硬件身份请求控制的Π或API ; 经由所述Π或API中硬件身份请求控制而接收所述硬件身份请求;以及 经由所述Π或API提供与包含与所述已标识平台客户相关联的平台客户数据的所述服务器对应的一个或多个硬件标识符。
41.根据权利要求38所述的非暂时性计算机可读存储媒介,其中,所述指令使得所述处理器以接收包括一个或多个硬件标识符的平台兼容性请求,以及响应于所述平台兼容性请求提供定义一个或多个平台与在所述平台兼容性请求中标识的硬件之间的平台兼容性的平台兼容性信息。
42.根据权利要求38所述的非暂时性计算机可读存储媒介,其中,所述指令使得所述处理器以产生受限使用的硬件标识符以用作响应于硬件身份请求而提供的硬件标识符。
【文档编号】G06F15/16GK104246738SQ201280072529
【公开日】2014年12月24日 申请日期:2012年4月19日 优先权日:2012年4月19日
【发明者】E·J·J·克鲁格里克 申请人:英派尔科技开发有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1