写点什么

在 VMware 环境中进行实时云迁移时如何做到高枕无忧?

作者: Rich Petersen

  • 2019-04-14
  • 本文字数:3904 字

    阅读完需:约 13 分钟

在VMware环境中进行实时云迁移时如何做到高枕无忧?

本文要点

  • 云迁移的挑战通常来自计划的不确定性、对干扰用户的担忧以及环境之间的不匹配。

  • 最直接的基于 VM 的迁移技术涉及同类虚拟机管理程序。

  • 根据可用带宽和数据量,虚拟机的实时迁移可能完全通过网络进行,也可能涉及在物理设备上向新目的地发送一些数据。

  • 组成“系统”的相互依赖的虚拟机应该同时迁移。

  • 自动迁移任务和 VM 组迁移协调对成功至关重要。


组织继续寻求从维护传统内部数据中心的 IT 基础设施到云计算的转变。然而,将关键业务应用程序从当前基础设施迁移到云服务提供商的设施仍然是一个难题。其中一个原因是担心在迁移期间中断操作。


通过保存底层虚拟化基础设施,将虚拟机及其虚拟磁盘从本地 VMware 环境整体迁移到由云服务提供商维护的 VMware 环境,可以降低操作中断的风险。与众多 VMware 云提供商合作伙伴(VCPP)中的其中一个合作,管理员可以确信,新的云环境可以兼容他们的虚拟机和数据存储,并可以使用类似 vRealize 这样的工具定义健壮的网络蓝图、CPU 和内存需求以及负载平衡、监控和管理。


对于虚拟化工作负载,当虚拟机继续在本地运行,而它的数据被复制到云端目的地时,运行中断最小化。在 VM 及其数据被复制到云中时,保持 VM 运行被称为“实时迁移”。一旦虚拟机和虚拟磁盘被完全复制到目的地,虚拟机就可以在目的地恢复操作。


本文概述了实时迁移到云的挑战,并提出了一些关键的概念和要求。如果企业及其服务提供者想在将本地 VM 和数据迁移到云上时仍然可以安睡,就需要理解和采用这些概念和要求。

云迁移的挑战

通常,系统集成商和云服务提供商会为云迁移提供专业服务。在这一过程中,他们经常面临以下挑战:


  • 计划中的不确定性:组织越大越复杂,迁移的复杂性越高。有些应用程序是紧密集成的,应该一起迁移。网络地址必须保留,或者至少要一致地管理网络地址。如果希望应用程序立即对用户可用,则可能必须复制 LDAP 或 Active Directory 中的权限。必须定义和执行源、目的地和数据传输过程的安全要求。用于迁移的网络应该根据要复制的数据量以及相应的可用带宽来评估。VM 的迁移顺序应该定义好,在迁移开始前就应该了解迁移所需的时间。最后,应该定义好复制方法,是完全通过网络,还是结合数据传输设备物理传递。

  • 操作中断:第一个迁移到云的本地应用程序通常是测试和开发系统,可以停机迁移。中断这些系统会带来一些不便,但并不一定要保持系统运行。当组织开始考虑将关键业务操作迁移到云上时,“实时迁移”就成了核心要求。在某些情况下,可能有一个小的维护窗口可以用于迁移;在其他情况下,应用程序的中断时间不能超过重启虚拟机所需的几分钟时间。除了在云中启动虚拟机的短暂中断外,实时迁移可能对正在运行的应用程序的性能产生不利影响,因为它们直接从生产存储系统读取数据。当考虑迁移项目时,组织必须评估下可能导致的业务中断并做适当地准备。

  • 软件开销:目前,许多云迁移解决方案都通过以遗留灾难恢复(DR)解决方案为基础的技术来管理数据传输。虽然这些技术在云迁移的某些方面可能已经更新,但它们可能仍然有一些限制。它们可能配置复杂或难于管理。它们可能需要源数据中心和云之间保持持续、不间断的连通。它们可能引入与源数据中心或云目的地中使用的技术不兼容(或不完全支持)的代理或驱动程序。最后,基于 DR 的迁移软件一般不能支持使用数据传输设备转移数据的实时迁移。

  • 存储不兼容:基于特定存储基础设施的数据迁移解决方案可能不适用于所有工作负载。许多企业积累了一套不同的存储系统和数据存储类型,包括传统的共享存储阵列、文件服务器和“超融合(hyper-converged)”基础设施。并非所有基于存储的数据迁移解决方案都能支持所有的数据存储类型。例如,基于文件级同步的迁移可能不容易支持数据存储块或对象。同样,基于对象数据存储的分布式数据管理方法很适合本地对象数据存储。相比之下,存储无关的迁移解决方案将可以更好地兼容本地源端和云端目的地的存储。


为应对 VMware 环境中的这些挑战,最好找一个专用的云迁移解决方案,可以兼容 VMware vSphere,不管是在本地还是云端。虽然许多组织迁移到 AWS 上的 VMware Cloud,同样的原则也适用于迁移到众多 VMware 云提供商的合作伙伴(VCPP)中的任何一个。

实时迁移概述

实时迁移涉及许多方面。首先最重要的是,在进行数据复制时虚拟机仍在正常运行。更重要的是,像 vMotion 这样的标准 vSphere 函数在数据迁移时仍可能执行。数据复制不应该破坏或显著降低源端 VM 和应用程序的性能。应该最小化虚拟机停机,并且停机时间可配置。

云实时迁移解决方案的关键要求

当评估不间断运行时操作的云迁移解决方案时,我们主要考虑以下功能:


  • 虚拟机管理程序集成

  • 轻量级部署,操作简便

  • “冷数据”和“热数据”复制

  • 提前预测迁移持续时间和迁移参数的能力

  • 能够将物理数据传输设备上的数据发送到目的地

  • 可以成组迁移相互依赖的 VM

  • 迁移任务管理、编排和自动化

  • 控制数据复制速率和 VM 性能之间的平衡

  • 数据传输容错,可以在中断时恢复复制


让我们详细看下每一项要求。


对于虚拟机的迁移,虚拟机管理程序集成确保最广泛的兼容性。管理程序级集成不应该要求 VM 中有任何类型的代理软件,并且应该与存储无关。适当的数据捕获和 VM 迁移集成解决方案应该对源端环境的硬件和软件组件都是透明的,并且不应该对目的地强加任何特定的基础设施需求。


与虚拟机管理程序集成相辅相成的是轻量级部署和操作简便的要求。单个来说,软件代理可能是相对轻量级的组件,但是,在每个 VM 上部署恰当的代理并不是一个简单的管理任务。同样,与部署后连续运行几年的 DR 解决方案组件相比,用于一次性迁移的软件应该更轻量级。


热数据和冷数据复制是 VM 及其应用程序在迁移到云上时保持运行的关键。冷数据是在迁移过程过程中不会改变的数据,因此,迁移期间只复制一次。相比之下,“热”数据是在迁移任务开始后在源端写入(重写)的数据,软件要负责捕捉这些数据操作,确保新产生的“热数据”块可以恰当地复制到目的地。复制“冷数据”被称为“后台复制”,捕捉新写的“热数据”并转移到目的地叫做“前台复制”。


管理员希望能够估计和预测将 VM 及其数据移动到云上所需的时间和网络带宽。在开始迁移任务之前,在“观察模式”下运行迁移解决方案有助于确定需要传输的数据量、实际可用于传输的网络带宽和迁移过程中会发生变化的“热数据”的数量。这个预测能力应该不仅可用于单个虚拟机,也可用于“迁移组”——相互依赖、需要同时迁移的一组应用程序和虚拟机。预测需要能够评估一段时间内的复制网络带宽、延迟和丢包率,然后使用这些信息来设置复制参数,从而适当地利用网络进行数据传输。管理员可以确定,通过数据传输设备的物理传递来传输“冷”数据更有效(见下文)。


与热数据复制和冷数据复制相关的是在数据传输设备上传输数据的能力。有时候,迁移的数据量非常大,通过网络传输所有数据是不切实际的。在这种情况下,通过一个物理设备传输数据可以节省大量的时间。即使是通过物理设备将数据传送到云上,应用程序和虚拟机也可以继续在源端运行。本质上,冷数据的后台复制发生在设备上,而热数据的前台复制发生在网络上。


组迁移是另一个重要的要求。有些 VM 相对独立,可以单独迁移。其他的可能有依赖关系,如用作前端 Web 服务器的虚拟机、应用程序服务器和后端数据库。为了尽量减少操作中断,这些相互依赖的 VM 应该运行在相同的位置,所以它们的数据应该同时复制到目的地,这些 VM 应该同时在云中上线。幸运的是,像 VMware vRealize 基础设施导航器这样的工具,可以显示这些依赖项的视觉地图,管理员从中可以知道这些 VM 应该作为一个组进行迁移。


高效的管理、编排和自动化是实现大规模迁移而又不造成管理资源负担的关键。在任何迁移项目中,监督管理对于过程监控而言都是很重要的,这样就可以实时做出任何必要的调整。同时,当事情会按计划进行时,自动化重复性操作可以解放管理员。自动化迁移任务包括选择一些 VM 作为迁移项目的一部分进行独立迁移。VM(及其数据)可以从源端到目的地,一个接一个,每一个都自动启动。编排则涉及协调迁移 VM 组的能力。


在实时迁移中,需要监控的最重要的事情之一是数据复制速度和本地环境中新数据 I/O 之间的平衡。在迁移评估过程中,管理员应该能够预测,总体数据复制将远远超过而且持续大于本地写操作新产生的、需要前台复制的热数据。然而,最好是有一个“仪表盘”视图,从中可以确认那种情况下的实际迁移任务。如果本地 I/O 或数据复制的速度需要调整,管理员应该能够施加必要的控制。


最后,理想的迁移解决方案将支持数据复制容错,这样,如果有迁移任务中断,数据复制就可以从中断的地方恢复,而不是从头重新开始。

小结

采用云最大的障碍是实时迁移到云上时数据管理的困难、不确定性和中断。首先,也是最重要的,云托管提供商需要给其客户提供高效的云迁移能力,而且不会中断运行时操作。为了达到这个目标,托管提供商和他们的客户应该相互商定项目参数和要求,包括维护窗口、服务等级和成功标准。新的工具和技术使得虚拟机向云的实时迁移具有更少的破坏性和更高的效率。有了恰当的计划、人员和工具,往云上迁移不应该再让你夜不能寐。

关于作者

Rich Petersen JetStream Software的联合创始人和总裁,在企业技术方面有超过 20 年的经验。他曾是 FlashSoft 产品管理副总裁,该公司于 2012 年被 SanDisk 收购。Petersen 还曾在 LogicBlaze/Red Hat、 Infravio 和 Interwoven 任职。他在加州大学伯克利分校哈斯商学院获得 MBA 学位。要了解更多信息,请在LinkedIn@JetStreamSoft上关注 JetStream Software。


查看英文原文Sleeping Well at Night During a Live Cloud Migration in a VMware Environment


2019-04-14 08:003184
用户头像

发布了 742 篇内容, 共 481.9 次阅读, 收获喜欢 1549 次。

关注

评论

发布
暂无评论
发现更多内容

☕️从 Java8 到 Java17 的新特性(四):Java11 的新特性

看山

Java Java11 LTS

☕️从 Java8 到 Java17 的新特性(八):Java15 的新特性

看山

Java java15

架构实战营-第一周

Asura

【愚公系列】2022年05月 二十三种设计模式(十六)-迭代器模式(Iterator Pattern)

愚公搬代码

5月月更

C++中字符三兄弟(WCHAR、CHAR、TCHAR)

liuzhen007

c c++ 5月月更

贝叶斯简介

5月月更

Go 语言入门很简单:AES加密和解密

宇宙之一粟

AES Go 语言 5月月更

☕️从 Java8 到 Java17 的新特性(二):Java9 的新特性

看山

Java Java9

druid源码学习七

Nick

FFmpeg安装

Loken

音视频

如何给 kitex 贡献单元测试

baiyutang

开源 字节跳动 微服务 5月月更 kitex

5.17电信日 | 融云积极消除数字鸿沟 助力打造数字化新基建

融云 RongCloud

设计模式之观察者模式

乌龟哥哥

5月月更

Druid连接池源码阅读07

石小天

万字长文!一文搞懂InheritedWidget 局部刷新机制

岛上码农

flutter ios 前端 安卓 5月月更

Java 8 开始新增的 Optional 类 - Optional 对象中的异常

HoneyMoose

数据库连接池 -Druid 源码学习(七)

wjchenge

Druid 数据库连接池

☕️从 Java8 到 Java17 的新特性(十):Java17 的新特性

看山

Java java17

☕️从 Java8 到 Java17 的新特性(五):Java12 的新特性

看山

Java Java12

☕️从 Java8 到 Java17 的新特性(九):Java16 的新特性

看山

Java java16

架构实战营模块一作业

融冰

☕️从 Java8 到 Java17 的新特性(六):Java13 的新特性

看山

Java Java13

加入MOVE,一起体验Move2Earn的运动乐趣

股市老人

使用 nginx 配置项的好习惯

liuzhen007

nginx 5月月更

二分查找树

工程师日月

二叉树 5月月更

☕️从 Java8 到 Java17 的新特性(三):Java10 的新特性

看山

Java Java10

druid 源码阅读 7——keepAlive实现方式

张大彪

Flutter StatefulBuilder 示例

坚果

5月月更

融云 x Zervo:打造欧美 Z 世代社交的「主题幻想世界」

融云 RongCloud

ffmpeg封装格式转换

Loken

音视频 5月月更

☕️从 Java8 到 Java17 的新特性(七):Java14 的新特性

看山

Java java14

在VMware环境中进行实时云迁移时如何做到高枕无忧?_软件工程_InfoQ精选文章