《OpenShift / RHEL / DevSecOps 汇总目录》
说明:本文已经在支持 OpenShift 4.12 的环境中验证
文章目录
环境说明
OpenShift Virtualization 环境
可参考以下文档安装 OpenShift Virtualization 环境
- OpenShift 4 - 在单机版 OpenShift Local 中运行 OpenShift Virtualization(视频)
- OpenShift 4 - 用 OpenShift Virtualization 运行容器化虚拟机(视频)
VMware vSphere 环境
为了能迁移 VMware 虚机,需要拥有 vCenter 的管理用户权限,另外目前支持的 vSphere 环境是 6.5 及以后版本。本文迁移的 VM 运行在 VMware vSphere 7 中,
了解 Migration Toolkit for Virtualization
Migration Toolkit for Virtualization(MTV)是 RedHat 提供的一个开源项目,使用它可以将 VMware 和 KVM 的虚机迁移到 KubeVirt 或 OpenShift Virtualization 环境中运行。Migration Toolkit for Virtualization 支持 Cold 和 Warm 两种迁移模式,本文介绍的是 Cold 迁移过程。
安装 Migration Toolkit for Virtualization 运行环境
- 在 OpenShift 中使用默认配置安装 Migration Toolkit for Virtualization Operator,然后再使用默认配置创建一个 ForkliftController 实例。完成后可以在 openshift-mtv 项目中看到如下安装的资源。
- 点击上图 forklift-ui 右上方的 “打开 URI”,可以看到以下 Migration Toolkit for Virtualization 界面。
迁移 VMware 虚机
准备 VMware VDDK 容器镜像
迁移 VMware vSphere 上的虚机需要以容器的方式用到 VMware VDDK 组件。
可参考《Migration Toolkit for Virtualization 》文档准备该容器镜像。准备好后需要将镜像放在一个 OpenShift 可以访问到的 Image Registry 上(例如 ttl.sh)。
本文使用了一个已经做好的 VDDK 容器镜像:docker.io/ba328/vddk:7.0.3-20134304
创建 VMware Provider
在 MTV 控制台的 Providers 页面中点击 Add provider 按钮。然后在弹出窗口中选择 VMware,在填入访问 vCenter 的地址、用户/密码、VDDK init image 后先 Vir 点击 Add 即可。
创建 Migration Plan
- 进入 MTV 的 Migration Plans 页面,然后点击 Create plan。
- 在 Create migration plan 页面中根据向导完成配置。
在 General 中可将迁移名称设置成 my-vm-1,然后将 Source provider 设为前面创建的 VMware provider,而为 Target provider 设置的 host 代表本机 OpenShift 环境。
在 VM selection 中先选中 VM 所在的 vSphere 集群,然后再找到要迁移的 VM。
在 Network mapping 中创建一个网络映射,其中在 Target 选择一个可用的 Pod Network。
在 Storage mapping 中创建一个存储映射,其中在 Target 选择一个可用的 Storage Class。
在 Migration type 中选择 Cold migration,该选项意味着在整个迁移过程中被迁移的 VMware VM 必须全程处于关机状态。
- 最后创建该 Migration plan 即完成。
执行 Migration Plan
- 点击上图名为 my-vm-1 迁移计划右方的 Start 即可启动执行迁移。
- 查看 my-vm-1 的迁移执行过程,可以看到运行的迁移过程包括了下图显示的 3 个步骤。
- 迁移计划完成执行后,可以在 OpenShift 控制台的 VirtualMachines 中看到已经迁移完的 VM。注意:此时 VM 处于 Stopped 状态。
- 最后启动运行该 VM 即可。