《分布式应用系统在平台间迁移的实现方法及装置.pdf》由会员分享,可在线阅读,更多相关《分布式应用系统在平台间迁移的实现方法及装置.pdf(23页珍藏版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 103577122 A (43)申请公布日 2014.02.12 CN 103577122 A (21)申请号 201310547871.0 (22)申请日 2013.11.06 G06F 3/06(2006.01) G06F 9/30(2006.01) H04L 29/08(2006.01) (71)申请人 杭州华为数字技术有限公司 地址 310052 浙江省杭州市滨江区滨兴路 301 号 3 幢 A 楼 301 室 (72)发明人 蔡毅 池金燕 (74)专利代理机构 深圳市威世博知识产权代理 事务所 ( 普通合伙 ) 44280 代理人 何青瓦 (54) 发明名称。
2、 分布式应用系统在平台间迁移的实现方法及 装置 (57) 摘要 本发明公开了一种分布式应用系统在平台间 迁移的实现方法及装置, 方法包括 : 获得目标平 台所需要的节点的数目 n ; 利用源平台所有节点 的总的数据容量大小, 确定目标平台 n 个节点中 每个节点的数据存储空间的大小 ; 根据目标平台 n 个节点的硬件配置目标平台的操作系统 ; 根据 源平台的分布式应用系统配置目标平台的分布式 应用系统 ; 在配置好目标平台的操作系统和分布 式应用系统后, 按照目标平台每个节点的数据存 储空间的大小, 将源平台上的应用数据分别迁移 到目标平台的n个节点上。 通过上述方式, 本发明 能够支持从传统。
3、 X86 架构服务器到 ARM 架构服务 器的迁移, 支持分布式应用系统的N个节点对M个 节点迁移场景。 (51)Int.Cl. 权利要求书 3 页 说明书 14 页 附图 5 页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书3页 说明书14页 附图5页 (10)申请公布号 CN 103577122 A CN 103577122 A 1/3 页 2 1. 一种分布式应用系统在平台间迁移的实现方法, 其特征在于, 包括 : 获得目标平台所需要的节点的数目 n, 以使得所述目标平台 n 个节点的硬件能够负载 源平台所有节点的业务 ; 利用所述源平台所有节点的总的数据容量大。
4、小, 确定所述目标平台 n 个节点中每个节 点的数据存储空间的大小, 其中, 所述源平台所有节点的总的数据容量大小等于所述目标 平台 n 个节点总的数据存储空间的大小 ; 根据所述目标平台 n 个节点的硬件配置所述目标平台的操作系统, 以使得所述目标平 台的操作系统和所述目标平台 n 个节点的硬件匹配 ; 根据所述源平台的分布式应用系统配置所述目标平台的分布式应用系统, 以使得所述 目标平台的分布式应用系统的应用环境与所述源平台的分布式应用系统的应用环境之间 的差异在预定范围内 ; 在配置好所述目标平台的操作系统和分布式应用系统后, 按照所述目标平台每个节点 的数据存储空间的大小, 将所述源平。
5、台上的应用数据分别迁移到所述目标平台的 n 个节点 上。 2.根据权利要求1所述的方法, 其特征在于, 所述源平台节点是X86架构服务器或虚拟 机, 所述目标平台节点是先进的精简指令集计算机设备 ARM 架构服务器或虚拟机。 3.根据权利要求1所述的方法, 其特征在于, 所述获得目标平台所需要的节点的数目n 的步骤, 包括 : 将所述源平台一个节点、 两个节点、 m-1 个节点、 m 个节点实测的业务承载量 P1、 P2、 Pm-1、 Pm除以理论的业务承载量 Q1、 Q2、 Qm-1、 Qm, 获得所述源平台对应的集群扩容 系数 C1、 C2、 Cm-1、 Cm, 其中, Cm=Pm/Qm,。
6、 定义所述源平台的节点个数为 m, 所述 m 为不为零的 自然数 ; 根据所述源平台对应的集群扩容系数 C1、 C2、 Cm-1、 Cm, 获得所述集群扩容系数 C 与 所述节点个数 x 之间的函数关系式 C(x) ; 根据所述集群扩容系数与所述节点个数之间的函数关系式 C(x) 、 所述源平台单节点 的硬件性能 S、 所述源平台单节点的综合性能利用率 、 所述目标平台单节点的硬件性能 T 以及所述目标平台性能资源预留量 , 通过应用业务负载平衡算法 S*Cm=T*(1-) *C (x) , 获得所述目标平台所需要的节点的数目 n。 4. 根据权利要求 1 所述的方法, 其特征在于, 所述利用。
7、所述源平台所有节点的总的数 据容量大小, 确定所述目标平台 n 个节点中每个节点的数据存储空间的大小的步骤, 包括 : 所述目标平台 n 个节点中每个节点的数据存储空间的大小等于所述源平台所有节点的总 的数据容量大小除以所述 n 的商。 5. 根据权利要求 1 所述的方法, 其特征在于, 所述按照所述目标平台每个节点的数据 存储空间的大小, 将所述源平台上的应用数据分别迁移到所述目标平台的 n 个节点上的步 骤, 包括 : 确定所述源平台上所有节点的总的原始应用数据与总的备份应用数据 ; 按照所述目标平台每个节点的数据存储空间的大小, 将所述源平台上所有节点的总的 原始应用数据与总的备份应用数。
8、据分别迁移到所述目标平台的 n 个节点上。 6. 一种分布式应用系统在平台间迁移的实现装置, 其特征在于, 所述装置包括 : 获得 权 利 要 求 书 CN 103577122 A 2 2/3 页 3 模块、 确定模块、 第一配置模块、 第二配置模块以及数据迁移模块 ; 所述获得模块用于获得目标平台所需要的节点的数目 n, 以使得所述目标平台 n 个节 点的硬件能够负载源平台所有节点的业务 ; 所述确定模块用于在所述获得模块获得目标平台所需要的节点的数目 n 后, 利用所述 源平台所有节点的总的数据容量大小, 确定所述目标平台 n 个节点中每个节点的数据存储 空间的大小, 其中, 所述源平台所。
9、有节点的总的数据容量大小等于所述目标平台 n 个节点 总的数据存储空间的大小 ; 所述第一配置模块用于根据所述目标平台 n 个节点的硬件配置所述目标平台的操作 系统, 以使得所述目标平台的操作系统和所述目标平台 n 个节点的硬件匹配 ; 所述第二配置模块用于根据所述源平台的分布式应用系统配置所述目标平台的分布 式应用系统, 以使得所述目标平台的分布式应用系统的应用环境与所述源平台的分布式应 用系统的应用环境之间的差异在预定范围内 ; 所述数据迁移模块在所述第一配置模块和第二配置模块分别配置好所述目标平台的 操作系统和分布式应用系统后, 按照所述目标平台每个节点的数据存储空间的大小, 将所 述源。
10、平台上的应用数据分别迁移到所述目标平台的 n 个节点上。 7.根据权利要求6所述的装置, 其特征在于, 所述源平台节点是X86架构服务器或虚拟 机, 所述目标平台节点是先进的精简指令集计算机设备 ARM 架构服务器或虚拟机。 8. 根据权利要求 6 所述的装置, 其特征在于, 所述获得模块包括 : 第一获得单元、 第二 获得单元以及第三获得单元 ; 所述第一获得单元用于将所述源平台一个节点、 两个节点、 、 m-1 个节点、 m 个节点实 测的业务承载量 P1、 P2、 Pm-1、 Pm除以理论的业务承载量 Q1、 Q2、 Qm-1、 Qm, 获得所述源 平台对应的集群扩容系数 C1、 C2、。
11、 Cm-1、 Cm, 其中, Cm=Pm/Qm, 定义所述源平台的节点个数为 m, 所述 m 为不为零的自然数 ; 所述第二获得单元用于根据所述第一获得单元获得的所述源平台对应的集群扩容系 数 C1、 C2、 、 Cm-1、 Cm, 获得所述集群扩容系数 C 与所述节点个数 x 之间的函数关系式 C(x) ; 所述第三获得单元用于根据所述第二获得单元获得的所述集群扩容系数与所述节点 个数之间的函数关系式 C(x) 、 所述源平台单节点的硬件性能 S、 所述源平台单节点的综合 性能利用率 、 所述目标平台单节点的硬件性能 T 以及所述目标平台性能资源预留量 , 通过应用业务负载平衡算法 S*Cm。
12、=T*(1-) *C(x) , 获得所述目标平台所需要的节点 的数目 n。 9. 根据权利要求 6 所述的装置, 其特征在于, 所述确定模块具体用于所述利用所述源 平台所有节点的总的数据容量大小, 确定所述目标平台 n 个节点中每个节点的数据存储空 间的大小, 其中, 所述目标平台 n 个节点中每个节点的数据存储空间的大小等于所述源平 台所有节点的总的数据容量大小除以所述 n 的商。 10. 根据权利要求 6 所述的装置, 其特征在于, 所述数据迁移模块包括 : 确定单元和数 据迁移单元 ; 所述确定单元用于确定所述源平台上所有节点的总的原始应用数据与总的备份应用 数据 ; 所述数据迁移单元用。
13、于按照所述目标平台每个节点的数据存储空间的大小, 将所述确 权 利 要 求 书 CN 103577122 A 3 3/3 页 4 定单元确定的所述源平台上所有节点的总的原始应用数据与总的备份应用数据分别迁移 到所述目标平台的 n 个节点上。 权 利 要 求 书 CN 103577122 A 4 1/14 页 5 分布式应用系统在平台间迁移的实现方法及装置 技术领域 0001 本发明涉及计算机技术领域, 特别是涉及一种分布式应用系统在平台间迁移的实 现方法及装置。 背景技术 0002 在目前 IT 市场中, 传统的服务器硬件提供商已经难以影响客户选型, 新产品的面 世更多依靠整体解决方案和咨询服。
14、务推动市场应用, 同时催生增值价值和利润, 客户应用 迁移服务就是其中的一个关键。既要保证客户应用系统的平滑迁移, 也要减小客户迁移风 险和工作量, 才能降低客户总体拥有成本 TCO, 赢得客户的满意度和使用意愿。 0003 IBM 系统服务迁移技术包括以下步骤 : 应用系统在源平台运行过程中时, 发现应 用系统所直接依赖的系统服务 ; 由源平台上的系统服务之间的依赖关系模型以及所述发现 的应用系统所直接依赖的系统服务, 获得应用系统所间接依赖的系统服务 ; 发现应用系统 所直接和间接依赖的系统服务的配置 ; 根据应用系统所直接和间接依赖的系统服务及其 配置在源平台与目标平台之间的映射关系, 。
15、将源平台上应用系统所直接和间接依赖的系统 服务及其配置映射为用于目标平台的、 应用系统所直接和间接依赖的系统服务及其配置 ; 将所述用于目标平台的、 应用系统所直接和间接依赖的系统服务及其配置设置到目标平台 上, 从而实现应用系统所依赖的系统环境从源平台到目标平台的迁移。 0004 本申请的发明人在长期的研发中发现, 上述现有技术不支持从传统 X86 架构服务 器到 ARM 架构服务器的迁移 ; 无法支持分布式应用系统的 N 个节点对 M 个节点迁移场景。 发明内容 0005 本发明主要解决的技术问题是提供一种分布式应用系统在平台间迁移的实现方 法及装置, 能够支持从传统X86架构服务器到AR。
16、M架构服务器的迁移, 支持分布式应用系统 的 N 个节点对 M 个节点迁移场景。 0006 第一方面, 本发明提供一种分布式应用系统在平台间迁移的实现方法, 包括 : 获得 目标平台所需要的节点的数目 n, 以使得所述目标平台 n 个节点的硬件能够负载源平台所 有节点的业务 ; 利用所述源平台所有节点的总的数据容量大小, 确定所述目标平台 n 个节 点中每个节点的数据存储空间的大小, 其中, 所述源平台所有节点的总的数据容量大小等 于所述目标平台 n 个节点总的数据存储空间的大小 ; 根据所述目标平台 n 个节点的硬件配 置所述目标平台的操作系统, 以使得所述目标平台的操作系统和所述目标平台 。
17、n 个节点的 硬件匹配 ; 根据所述源平台的分布式应用系统配置所述目标平台的分布式应用系统, 以使 得所述目标平台的分布式应用系统的应用环境与所述源平台的分布式应用系统的应用环 境之间的差异在预定范围内 ; 在配置好所述目标平台的操作系统和分布式应用系统后, 按 照所述目标平台每个节点的数据存储空间的大小, 将所述源平台上的应用数据分别迁移到 所述目标平台的 n 个节点上。 0007 在第一方面的第一种可能的实现方式中, 所述源平台节点是 X86 架构服务器或虚 说 明 书 CN 103577122 A 5 2/14 页 6 拟机, 所述目标平台节点是先进的精简指令集计算机设备 ARM 架构服。
18、务器或虚拟机。 0008 在第一方面的第二种可能的实现方式中, 所述获得目标平台所需要的节点的数目 n 的步骤, 包括 : 将所述源平台一个节点、 两个节点、 m-1 个节点、 m 个节点实测的业务承 载量 P1、 P2、 Pm-1、 Pm除以理论的业务承载量 Q1、 Q2、 Qm-1、 Qm, 获得所述源平台对应的 集群扩容系数 C1、 C2、 Cm-1、 Cm, 其中, Cm=Pm/Qm, 定义所述源平台的节点个数为 m, 所述 m 为 不为零的自然数 ; 根据所述源平台对应的集群扩容系数 C1、 C2、 Cm-1、 Cm, 获得所述集群扩 容系数 C 与所述节点个数 x 之间的函数关系式。
19、 C(x) ; 根据所述集群扩容系数与所述节点 个数之间的函数关系式 C(x) 、 所述源平台单节点的硬件性能 S、 所述源平台单节点的综合 性能利用率 、 所述目标平台单节点的硬件性能 T 以及所述目标平台性能资源预留量 , 通过应用业务负载平衡算法 S*Cm=T*(1-) *C(x) , 获得所述目标平台所需要的节点 的数目 n。 0009 在第一方面的第三种可能的实现方式中, 所述利用所述源平台所有节点的总的数 据容量大小, 确定所述目标平台 n 个节点中每个节点的数据存储空间的大小的步骤, 包括 : 所述目标平台 n 个节点中每个节点的数据存储空间的大小等于所述源平台所有节点的总 的数。
20、据容量大小除以所述 n 的商。 0010 在第一方面的第四种可能的实现方式中, 所述按照所述目标平台每个节点的数据 存储空间的大小, 将所述源平台上的应用数据分别迁移到所述目标平台的 n 个节点上的步 骤, 包括 : 确定所述源平台上所有节点的总的原始应用数据与总的备份应用数据 ; 按照所 述目标平台每个节点的数据存储空间的大小, 将所述源平台上所有节点的总的原始应用数 据与总的备份应用数据分别迁移到所述目标平台的 n 个节点上。 0011 第二发明, 本发明提供一种分布式应用系统在平台间迁移的实现装置, 所述装置 包括 : 获得模块、 确定模块、 第一配置模块、 第二配置模块以及数据迁移模块。
21、 ; 所述获得模 块用于获得目标平台所需要的节点的数目 n, 以使得所述目标平台 n 个节点的硬件能够负 载源平台所有节点的业务 ; 所述确定模块用于在所述获得模块获得目标平台所需要的节点 的数目n后, 利用所述源平台所有节点的总的数据容量大小, 确定所述目标平台n个节点中 每个节点的数据存储空间的大小, 其中, 所述源平台所有节点的总的数据容量大小等于所 述目标平台 n 个节点总的数据存储空间的大小 ; 所述第一配置模块用于根据所述目标平台 n 个节点的硬件配置所述目标平台的操作系统, 以使得所述目标平台的操作系统和所述目 标平台 n 个节点的硬件匹配 ; 所述第二配置模块用于根据所述源平台。
22、的分布式应用系统配 置所述目标平台的分布式应用系统, 以使得所述目标平台的分布式应用系统的应用环境与 所述源平台的分布式应用系统的应用环境之间的差异在预定范围内 ; 所述数据迁移模块在 所述第一配置模块和第二配置模块分别配置好所述目标平台的操作系统和分布式应用系 统后, 按照所述目标平台每个节点的数据存储空间的大小, 将所述源平台上的应用数据分 别迁移到所述目标平台的 n 个节点上。 0012 在第二方面的第一种可能的实现方式中, 所述源平台节点是 X86 架构服务器或虚 拟机, 所述目标平台节点是先进的精简指令集计算机设备 ARM 架构服务器或虚拟机。 0013 在第二方面的第二种可能的实现。
23、方式中, 所述获得模块包括 : 第一获得单元、 第 二获得单元以及第三获得单元 ; 所述第一获得单元用于将所述源平台一个节点、 两个节 点、 m-1 个节点、 m 个节点实测的业务承载量 P1、 P2、 Pm-1、 Pm除以理论的业务承载量 说 明 书 CN 103577122 A 6 3/14 页 7 Q1、 Q2、 Qm-1、 Qm, 获得所述源平台对应的集群扩容系数 C1、 C2、 Cm-1、 Cm, 其中, Cm=Pm/Qm, 定义所述源平台的节点个数为 m, 所述 m 为不为零的自然数 ; 所述第二获得单元用于根据所 述第一获得单元获得的所述源平台对应的集群扩容系数 C1、 C2、 。
24、Cm-1、 Cm, 获得所述集群 扩容系数 C 与所述节点个数 x 之间的函数关系式 C(x) ; 所述第三获得单元用于根据所述 第二获得单元获得的所述集群扩容系数与所述节点个数之间的函数关系式 C (x) 、 所述源平 台单节点的硬件性能 S、 所述源平台单节点的综合性能利用率 、 所述目标平台单节点的 硬件性能 T 以及所述目标平台性能资源预留量 , 通过应用业务负载平衡算法 S*Cm=T* (1-) *C(x) , 获得所述目标平台所需要的节点的数目 n。 0014 在第二方面的第三种可能的实现方式中, 所述确定模块具体用于所述利用所述源 平台所有节点的总的数据容量大小, 确定所述目标平。
25、台 n 个节点中每个节点的数据存储空 间的大小, 其中, 所述目标平台 n 个节点中每个节点的数据存储空间的大小等于所述源平 台所有节点的总的数据容量大小除以所述 n 的商。 0015 在第二方面的第四种可能的实现方式中, 所述数据迁移模块包括 : 确定单元和数 据迁移单元 ; 所述确定单元用于确定所述源平台上所有节点的总的原始应用数据与总的备 份应用数据 ; 所述数据迁移单元用于按照所述目标平台每个节点的数据存储空间的大小, 将所述确定单元确定的所述源平台上所有节点的总的原始应用数据与总的备份应用数据 分别迁移到所述目标平台的 n 个节点上。 0016 本发明的有益效果是 : 区别于现有技术。
26、的情况, 本发明获得目标平台所需要的节 点的数目 n ; 利用源平台所有节点的总的数据容量大小, 确定目标平台 n 个节点中每个节点 的数据存储空间的大小 ; 根据目标平台 n 个节点的硬件配置目标平台的操作系统 ; 根据源 平台的分布式应用系统配置目标平台的分布式应用系统 ; 按照目标平台每个节点的数据存 储空间的大小, 将源平台上的应用数据分别迁移到目标平台的 n 个节点上。通过这种方式, 可以支持从传统 X86 架构服务器到 ARM 架构服务器的迁移 ; 也可以支持分布式应用系统的 N 个节点对 M 个节点迁移场景。 附图说明 0017 图 1 是本发明分布式应用系统在平台间迁移的实现方。
27、法一实施方式的流程图 ; 0018 图 2 是本发明分布式应用系统在平台间迁移的实现方法的迁移效果示意图 ; 0019 图 3 是本发明分布式应用系统在平台间迁移的实现方法另一实施方式的流程图 ; 0020 图 4 是本发明分布式应用系统在平台间迁移的实现方法在 Hadoop 分布式应用系 统中的应用示意图 ; 0021 图 5 是本发明分布式应用系统在平台间迁移的实现装置一实施方式的结构示意 图 ; 0022 图 6 是本发明分布式应用系统在平台间迁移的实现装置另一实施方式的结构示 意图 ; 0023 图 7 是本发明分布式应用系统在平台间迁移的实现装置又一实施方式的结构示 意图。 具体实施。
28、方式 说 明 书 CN 103577122 A 7 4/14 页 8 0024 下面结合附图和实施方式对本发明进行详细说明。 0025 参阅图 1, 图 1 是本发明分布式应用系统在平台间迁移的实现方法一实施方式的 流程图, 包括 : 0026 步骤S101 : 获得目标平台所需要的节点的数目n, 以使得目标平台n个节点的硬件 能够负载源平台所有节点的业务。 0027 源平台的节点即为分布式应用系统在迁移前的平台的节点, 例如 X86 架构的机架 或刀片服务器, 或虚拟机等。X86 架构服务器是指采用 X86 指令集的处理器集合, 它采用复 杂指令架构计算机 (CISC, Complex In。
29、struction Set Computer) 指令集的处理器。 0028 目标平台节点是指分布式应用系统在迁移后的平台的节点, 例如 ARM 架构服务器 或虚拟机, ARM 架构服务器过去称作先进的精简指令集机器 (Advanced RISC Machine) , 是 一个 32 位元精简指令集 (RISC) 中央处理器 (processor) 架构, 其广泛地使用在许多嵌入式 系统 (embedded) 设计中。 0029 为了将源平台所有节点上的应用数据迁移到目标平台上, 需要保证目标平台的所 有节点的硬件能够负载源平台所有节点的业务。因此, 根据源平台各个节点的硬件配置和 源平台所有节。
30、点负载的业务情况, 即可确定目标平台所需要的节点的数目 n。 0030 源平台硬件配置信息包括节点硬件的中央处理器CPU、 内存、 网络、 硬盘等信息。 获 取源平台各个节点的硬件配置信息的方式可以通过手动的方式, 也可以通过自动的方式, 其中通过自动的方式可以是 : 迁移工具通过安全外壳协议SSH或远程登录协议TELNET或者 其它方式建立与源平台和目标平台各节点的通信连接, 从而可以获取源平台各个节点的硬 件配置信息。 当然通过这种自动的方式还可以获取源平台各个节点其它的信息和目标平台 其它的信息。其中, 迁移工具运行在终端上, 与源平台各节点、 目标平台各节点均处于同一 网络中, 可互相。
31、通信。 0031 例如, 源平台是 N 个节点, 目标平台需要 M 个节点才可以与源平台的 N 个节点对 应。 0032 步骤 S102 : 利用源平台所有节点的总的数据容量大小, 确定目标平台 n 个节点中 每个节点的数据存储空间的大小, 其中, 源平台所有节点的总的数据容量大小等于目标平 台 n 个节点总的数据存储空间的大小。 0033 目标平台各个节点的数据存储空间的大小是指各个节点所能接纳的数据容量大 小 ; 源平台所有节点的总的数据容量大小等于目标平台 n 个节点总的数据存储空间的大 小, 如果目标平台 n 个节点的配置是完全一样的, 那么源平台所有节点的总的数据容量大 小平均到目标。
32、平台n个节点上, 即为目标平台n个节点中每个节点的数据存储空间的大小 ; 如果目标平台 n 个节点的配置不是完全一样的, 那么可以根据具体配置情况为目标平台 n 个节点的每个节点合理分配数据存储空间的大小。 0034 步骤 S103 : 根据目标平台 n 个节点的硬件配置目标平台的操作系统, 以使得目标 平台的操作系统和目标平台 n 个节点的硬件匹配。 0035 根据操作系统与硬件相匹配的原则, 根据目标平台 n 个节点的硬件即可配置目标 平台的操作系统。 0036 在实际应用中, 根据操作系统与硬件相匹配的原则, 可以预先制作操作系统 OS 镜 像映射表, 给出操作系统与硬件配置之间的对应关。
33、系。例如, 给出了 x86 架构与 ARM 架构的 说 明 书 CN 103577122 A 8 5/14 页 9 不同 linux 内核的 OS 版本对应关系。 0037 步骤 S104 : 根据源平台的分布式应用系统配置目标平台的分布式应用系统, 以使 得目标平台的分布式应用系统的应用环境与源平台的分布式应用系统的应用环境之间的 差异在预定范围内。 0038 源平台的分布式应用系统包括应用软件安装文件、 应用软件补丁、 各个节点的应 用配置参数等等。 0039 分布式应用系统在源平台间迁移到目标平台, 理想状态是分布式应用系统的应用 环境不发生任何变化, 但在实际应用中, 这是很难做到了,。
34、 并且也没有必要让目标平台的分 布式应用系统的应用环境与源平台的分布式应用系统的应用环境之间的没有差异, 只要该 差异在可以接收的范围都是可以的。因此, 根据源平台的分布式应用系统配置目标平台的 分布式应用系统, 只要目标平台的分布式应用系统的应用环境与源平台的分布式应用系统 的应用环境之间的差异在预定范围内即可。 0040 步骤 S105 : 在配置好目标平台的操作系统和分布式应用系统后, 按照目标平台每 个节点的数据存储空间的大小, 将源平台上的应用数据分别迁移到目标平台的 n 个节点 上。 0041 在配置好目标平台的操作系统和分布式应用系统后, 按照目标平台每个节点的数 据存储空间的大。
35、小, 即可将源平台上的应用数据分别迁移到目标平台的 n 个节点上。 0042 参阅图 2, 图 2 是本发明分布式应用系统在平台间迁移的实现方法的迁移效果示 意图。迁移工具 11 运行在终端上, 与源服务器 (源平台) 12 各节点、 目标服务器 (目标平台) 13 各节点均处于同一网络中, 可互相通信。业务系统是分布式应用, 数据分布在各个节点 上, 节点之间存在原始数据和备份数据的关系, 源服务器 12 节点可以是 X86 架构的服务器 或者虚拟机, 目标服务器 13 节点为 ARM 架构的服务器或者虚拟机。分布式应用系统在源平 台12上有N个节点服务器, 迁移工具11通过对源平台12的N。
36、个节点硬件配置的收集, 以及 目标平台 13 节点的配置信息, 规划出目标平台 13 为 M 个 ARM 架构服务器节点的集群规模 ; 另外根据源平台12所有节点的总的数据容量大小, 依据M个节点进行每个节点的数据存储 空间的大小的划分, 规划出目标平台 13 各节点的数据存储空间的大小, 在配置好目标平台 的操作系统和分布式应用系统后, 最后完成业务数据迁移和同步, 实现分布式应用系统从 N 个 X86 架构服务器节点到 M 个 ARM 架构服务器节点的整体迁移。 0043 本发明实施方式获得目标平台所需要的节点的数目 n ; 利用源平台所有节点的总 的数据容量大小, 确定目标平台 n 个节。
37、点中每个节点的数据存储空间的大小 ; 根据目标平 台 n 个节点的硬件配置目标平台的操作系统 ; 根据源平台的分布式应用系统配置目标平台 的分布式应用系统 ; 按照目标平台每个节点的数据存储空间的大小, 将源平台上的应用数 据分别迁移到目标平台的 n 个节点上。通过这种方式, 可以支持从传统 X86 架构服务器到 ARM 架构服务器的迁移 ; 也可以支持分布式应用系统的 N 个节点对 M 个节点迁移场景。 0044 参阅图 3, 图 3 是本发明分布式应用系统在平台间迁移的实现方法另一实施方式 的流程图, 本实施方式和图1的实施方式基本相同, 相同之处请参见图1以及相应的文字说 明, 不同之处。
38、请参见如下内容 : 0045 步骤S201 : 获得目标平台所需要的节点的数目n, 以使得目标平台n个节点的硬件 能够负载源平台所有节点的业务。 说 明 书 CN 103577122 A 9 6/14 页 10 0046 源平台的节点即为分布式应用系统在迁移前的平台的节点, 例如 X86 架构的机架 或刀片服务器, 或虚拟机等。X86 架构服务器是指采用 X86 指令集的处理器集合, 它采用复 杂指令架构计算机 (CISC, Complex Instruction Set Computer) 指令集的处理器。 0047 目标平台节点是指分布式应用系统在迁移后的平台的节点, 例如 ARM 架构服。
39、务器 或虚拟机, ARM 架构服务器过去称作先进的精简指令集机器 (Advanced RISC Machine) , 是 一个 32 位元精简指令集 (RISC) 中央处理器 (processor) 架构, 其广泛地使用在许多嵌入式 系统 (embedded) 设计中。 0048 为了将源平台所有节点上的应用数据迁移到目标平台上, 需要保证目标平台的所 有节点的硬件能够负载源平台所有节点的业务。因此, 根据源平台各个节点的硬件配置和 源平台所有节点负载的业务情况, 即可确定目标平台所需要的节点的数目 n。 0049 其中, 步骤 S201 包括三个子步骤, 分别是 : 0050 子步骤 S20。
40、1a : 将源平台一个节点、 两个节点、 m-1 个节点、 m 个节点实测的业 务承载量 P1、 P2、 Pm-1、 Pm除以理论的业务承载量 Q1、 Q2、 Qm-1、 Qm, 获得源平台对应的 集群扩容系数 C1、 C2、 Cm-1、 Cm, 其中, Cm=Pm/Qm, 定义源平台的节点个数为 m, m 为不为零的 自然数。 0051 子步骤 S201b : 根据源平台对应的集群扩容系数 C1、 C2、 Cm-1、 Cm, 获得集群扩容 系数 C 与节点个数 x 之间的函数关系式 C(x) 。 0052 子步骤 S201c : 根据集群扩容系数与节点个数之间的函数关系式 C(x) 、 源平。
41、台单 节点的硬件性能S、 源平台单节点的综合性能利用率、 目标平台单节点的硬件性能T以及 目标平台性能资源预留量 , 通过应用业务负载平衡算法 S*Cm=T*(1-) *C(x) , 获得 目标平台所需要的节点的数目 n。 0053 步骤 S202 : 利用源平台所有节点的总的数据容量大小, 确定目标平台 n 个节点中 每个节点的数据存储空间的大小, 其中, 源平台所有节点的总的数据容量大小等于目标平 台 n 个节点总的数据存储空间的大小。 0054 目标平台各个节点的数据存储空间的大小是指各个节点所能接纳的数据容量大 小 ; 源平台所有节点的总的数据容量大小等于目标平台 n 个节点总的数据存。
42、储空间的大 小, 如果目标平台 n 个节点的配置是完全一样的, 那么源平台所有节点的总的数据容量大 小平均到目标平台n个节点上, 即为目标平台n个节点中每个节点的数据存储空间的大小 ; 如果目标平台 n 个节点的配置不是完全一样的, 那么可以根据具体配置情况为目标平台 n 个节点的每个节点合理分配数据存储空间的大小。 0055 其中, 如果目标平台 n 个节点的配置是完全一样的, 步骤 S202 具体为 : 利用源平 台所有节点的总的数据容量大小, 确定目标平台 n 个节点中每个节点的数据存储空间的大 小, 目标平台 n 个节点中每个节点的数据存储空间的大小等于源平台所有节点的总的数据 容量大。
43、小除以 n 的商。 0056 步骤 S203 : 根据目标平台 n 个节点的硬件配置目标平台的操作系统, 以使得目标 平台的操作系统和目标平台 n 个节点的硬件匹配。 0057 根据操作系统与硬件相匹配的原则, 根据目标平台 n 个节点的硬件即可配置目标 平台的操作系统。 0058 在实际应用中, 根据操作系统与硬件相匹配的原则, 可以预先制作操作系统 OS 镜 说 明 书 CN 103577122 A 10 7/14 页 11 像映射表, 给出操作系统与硬件配置之间的对应关系。例如, 给出了 x86 架构与 ARM 架构的 不同 linux 内核的 OS 版本对应关系。 0059 步骤 S2。
44、04 : 根据源平台的分布式应用系统配置目标平台的分布式应用系统, 以使 得目标平台的分布式应用系统的应用环境与源平台的分布式应用系统的应用环境之间的 差异在预定范围内。 0060 源平台的分布式应用系统包括应用软件安装文件、 应用软件补丁、 各个节点的应 用配置参数等等。 0061 分布式应用系统在源平台间迁移到目标平台, 理想状态是分布式应用系统的应用 环境不发生任何变化, 但在实际应用中, 这是很难做到了, 并且也没有必要让目标平台的分 布式应用系统的应用环境与源平台的分布式应用系统的应用环境之间的没有差异, 只要该 差异在可以接收的范围都是可以的。因此, 根据源平台的分布式应用系统配置。
45、目标平台的 分布式应用系统, 只要目标平台的分布式应用系统的应用环境与源平台的分布式应用系统 的应用环境之间的差异在预定范围内即可。 0062 步骤 S205 : 在配置好目标平台的操作系统和分布式应用系统后, 按照目标平台每 个节点的数据存储空间的大小, 将源平台上的应用数据分别迁移到目标平台的 n 个节点 上。 0063 在配置好目标平台的操作系统和分布式应用系统后, 按照目标平台每个节点的数 据存储空间的大小, 即可将源平台上的应用数据分别迁移到目标平台的 n 个节点上。 0064 其中, 步骤 S205 包括两个子步骤, 内容如下 : 0065 子步骤 S205a : 确定源平台上所有。
46、节点的总的原始应用数据与总的备份应用数 据。 0066 在源平台上, 有些节点上存放的是原始应用数据, 有些节点上存放的原始应用数 据的备份应用数据, 确定了源平台上所有节点的总的原始应用数据与总的备份应用数据 后, 可以将总的原始应用数据迁移到目标平台一定数目的节点上, 将总的备份应用数据迁 移到另外一定数目的节点上, 从而使得原始应用数据与备份应用数据之间的关系在迁移后 依然很清楚明白。 0067 子步骤 S205b : 按照目标平台每个节点的数据存储空间的大小, 将源平台上所有 节点的总的原始应用数据与总的备份应用数据分别迁移到目标平台的 n 个节点上。 0068 本发明实施方式获得目标。
47、平台所需要的节点的数目 n ; 利用源平台所有节点的总 的数据容量大小, 确定目标平台 n 个节点中每个节点的数据存储空间的大小 ; 根据目标平 台 n 个节点的硬件配置目标平台的操作系统 ; 根据源平台的分布式应用系统配置目标平台 的分布式应用系统 ; 按照目标平台每个节点的数据存储空间的大小, 将源平台上的应用数 据分别迁移到目标平台的 n 个节点上。通过这种方式, 可以支持从传统 X86 架构服务器到 ARM 架构服务器的迁移 ; 也可以支持分布式应用系统的 N 个节点对 M 个节点迁移场景。 0069 下面以从在 X86 刀片服务器上的 Hadoop 分布式应用系统迁移到 ARM 架构。
48、服务器 节点上为例进行说明, 具体应用示意图如图 4 所示。 0070 通过本发明的技术方案, 可完成Hadoop应用系统从X86刀片服务器节点集群迁移 到 ARM 服务器节点集群上, 源平台有 N 个节点, 迁移对象包括各个节点的操作系统、 Hadoop 应用系统、 Hadoop 应用数据, 整体迁移步骤大致如下 : 说 明 书 CN 103577122 A 11 8/14 页 12 0071 (1) 迁移工具客户端与 Hadoop 应用系统源平台各节点和目标平台各节点处于同 一局域网内, 在迁移工具客户端上安装部署迁移工具, 运行迁移工具。 0072 (2) 在迁移工具上输入源平台各节点 。
49、OS 的 IP、 root 账号以及连接方式 ; 同时输入 目标平台节点的管理IP和管理账号, 支持批量导入, 通过SSH/TELNET协议建立与源平台和 目标平台各节点的通信连接。 0073 (3) 通过迁移工具无代理 (Agent) 采集方式, 收集源平台各节点的硬件配置信息、 硬件性能数据、 应用数据集合、 应用系统配置信息等等 ; 硬件配置信息包括 CPU 型号与数 据、 内存型号与数量、 Disk 型号与数量、 Raid(磁盘冗余阵列) 关系、 网卡型号与数量、 bond (绑定) 关系 ; 硬件性能数据包括各节点的 CPU 利用率、 内存利用率等, 以及各个节点业务承 载量的数据信息等 ; 数据集合包括各节点的数据容量、 各个节点上存放的是原始应用数据 还是备份应用数据 ; OS 配置包括 OS 版本、 系统补丁、 主机名、 文件系统、 业。