跳过正文
  1. 博客文章/

VMware ESXi 虚拟机克隆完整操作指南

·246 字·2 分钟·
虚拟化 Vmware Esxi 克隆
Zayn
作者
Zayn
专注 Kubernetes、CI/CD、可观测性等云原生技术栈,记录生产环境中的实战经验与踩坑复盘。
目录

本文记录在 ESXi 6.7 上通过 SSH 和 vmkfstools 克隆虚拟机的过程,包含存储检查、磁盘复制、VMX 修改和重新注册。

虚拟机克隆概述
#

什么是虚拟机克隆
#

虚拟机克隆是指创建现有虚拟机的完整副本,包括:

  • 虚拟磁盘: 完整复制源虚拟机的磁盘数据
  • 配置文件: 虚拟机的硬件配置信息
  • 操作系统: 已安装的操作系统和应用程序

克隆的优势
#

  • 快速部署: 避免重复安装操作系统和应用程序
  • 环境一致性: 确保多个虚拟机具有相同的基础配置
  • 节省时间: 大幅减少虚拟机创建时间
  • 标准化: 建立标准的虚拟机模板

环境信息
#

实验环境配置
#

项目配置信息说明
ESXi 版本6.7VMware vSphere Hypervisor
源虚拟机centos-source待克隆的模板虚拟机
目标虚拟机jira-confluence克隆后的新虚拟机
存储路径/vmfs/volumes/1t-data/虚拟机文件存储位置

源虚拟机信息
#

源虚拟机文件结构

图:源虚拟机的文件结构,包含 VMDK 磁盘文件和配置文件

操作步骤
#

第一步:启用 ESXi SSH 服务
#

为了使用命令行工具进行克隆操作,需要先启用 ESXi 的 SSH 服务:

通过 Web 界面启用
#

  1. 登录 ESXi Web 管理界面
  2. 导航到 “主机” → “管理” → “服务”
  3. 找到 “TSM-SSH” 服务并启动

启用 SSH 服务

图:在 ESXi Web 界面中启用 SSH 服务

连接验证
#

启用 SSH 服务后,可以使用 SSH 客户端连接到 ESXi 主机:

# 使用 SSH 连接到 ESXi 主机
ssh root@esxi-host-ip

SSH 连接示例

图:使用 SSH 客户端成功连接到 ESXi 主机

安全提示:

  • 克隆操作完成后,建议关闭 SSH 服务以提高安全性
  • 使用强密码保护 root 账户
  • 考虑使用 SSH 密钥认证替代密码认证

第二步:准备克隆环境
#

创建目标虚拟机目录
#

在开始克隆之前,需要为新虚拟机创建专门的存储目录:

# 创建目标虚拟机的存储目录
mkdir -p /vmfs/volumes/1t-data/jira-confluence

# 验证目录创建成功
ls -la /vmfs/volumes/1t-data/

检查存储空间
#

确保目标存储有足够的空间来存放克隆的虚拟机:

# 检查存储空间使用情况
df -h /vmfs/volumes/1t-data/

# 查看源虚拟机磁盘大小
ls -lh /vmfs/volumes/1t-data/centos-7-source/

第三步:克隆虚拟机磁盘
#

vmkfstools 工具介绍
#

vmkfstools 是 ESXi 提供的强大的虚拟磁盘管理工具,支持多种操作:

  • 创建、克隆、转换虚拟磁盘
  • 调整虚拟磁盘大小
  • 管理 VMFS 文件系统

官方文档: VMware KB 1028042

执行磁盘克隆
#

使用 vmkfstools 命令克隆虚拟机磁盘:

vmkfstools -i "/vmfs/volumes/1t-data/centos-7-source/centos-7-source.vmdk" \
           "/vmfs/volumes/1t-data/jira-confluence/jira-confluence.vmdk" \
           -d thin \
           -a buslogic

参数说明:

  • -i: 指定源虚拟磁盘文件路径
  • -d thin: 使用精简置备模式(节省存储空间)
  • -a buslogic: 指定 SCSI 适配器类型为 BusLogic

磁盘格式选项:

  • thin: 精简置备,按需分配存储空间
  • thick: 厚置备,预先分配全部存储空间
  • eagerzeroedthick: 厚置备置零,提供最佳性能和安全性

监控克隆进度
#

克隆过程可能需要较长时间,可以通过以下方式监控进度:

# 查看克隆进程
ps aux | grep vmkfstools

# 监控目标目录大小变化
watch -n 5 'ls -lh /vmfs/volumes/1t-data/jira-confluence/'

image-20210221102953651

复制 虚拟机元数据
#

cp /vmfs/volumes/1t-data/centos-7-source/centos-7-source.vmx /vmfs/volumes/1t-data/jira-confluence/jira-confluence.vmx

最终文件展示

image-20210221103201167

修改元数据文件
#

修改 及 删除 项:

  • scsi0:0.fileName
  • displayName
vi jira-confluence.vmx

image-20210221103938512

注册主机
#

image-20210221104122066

找到刚才修改的元文件路径,右键注册主机

image-20210221104252834

image-20210221104321096

选择我已复制,确认。

image-20210221104343184

image-20210221104527987

done。。。
#

相关文章

使用斐讯 N1 和 OpenWrt 搭建 K3s 集群
·1785 字·9 分钟
K3s N1 Openwrt
Kubernetes NFS 动态存储类部署记录
·453 字·3 分钟
存储 Nfs Kubernetes Storageclass
Kubernetes 部署 Kafka 集群记录
·3073 字·15 分钟
Kafka Helm Kubernetes Zookeeper Streaming