VMwareESXESXi精简置备thin及厚置备thick虚拟机磁盘之间转换.docx
《VMwareESXESXi精简置备thin及厚置备thick虚拟机磁盘之间转换.docx》由会员分享,可在线阅读,更多相关《VMwareESXESXi精简置备thin及厚置备thick虚拟机磁盘之间转换.docx(19页珍藏版)》请在冰豆网上搜索。
VMwareESXESXi精简置备thin及厚置备thick虚拟机磁盘之间转换
VMwareESX/ESXi精简置备(thin)与厚置备(thick)虚拟机磁盘之间转换
VMwareESX/ESXi 虚拟机磁盘thin与thick之间转换
注意:
转换前请先关闭虚拟机!
!
!
一. ThintoThick转换
ThintoThick转换比较简单,在图形界面即可操作;
1. 浏览数据存储
点击虚拟机所在的ESX/ESXi主机,在”配置”选项卡下的”存储器”内,浏览数据存储,
2. 进入相应虚拟机目录,选择相应磁盘的vmdk文件,右键”扩充”;
扩充的过程真心的慢!
基本上扩了一天==!
二. ThicktoThin转换
Thick转换为Thin模式没有直接的图形操作方式,需要使用SSH登录ESX/ESXi主机,默认ESX/ESXi主机没有开启SSH服务,需要先打开SSH;
1.开启SSH服务
选择虚拟机所在的ESX/ESXi主机,点击”配置”选项卡,点击”安全配置文件”,点击服务面板的”属性”;
2.使用SSH工具登陆并生成Thin磁盘
用户名:
root
密码:
使用vSphereClient登录ESX/ESXi的密码
<1> 进入虚拟机所在的datastore目录
#cd/vmfs/volumes/datastore1/
#ls
Data_base_SQL
RHEL-5.5-x64-temp
SQLServer2008
SUSE11
thick2thin
vCenterServer
该datastore目录下可能有很多与虚拟机同名的目录,本次转换的虚拟机为thick2thin,进入该虚拟机目录
# cdthick2thin/
#ls
thick2thin-c27753e1.vswp thick2thin.vmxf
thick2thin-flat.vmdk thick2thin_1-flat.vmdk
thick2thin.nvram thick2thin_1.vmdk
thick2thin.vmdk vmware.log
thick2thin.vmsd vmx-thick2thin-3262600161-1.vswp
thick2thin.vmx
该虚拟机目录下有许多以虚拟机名开头的文件,其中转换过程中需要用到的文件是vmdk磁盘文件,vmdk有两种,一种是”虚拟机名.vmdk”,另一种是”虚拟机名-flat.vmdk”,vmdk文件很小,存放了虚拟磁盘的一些配置信息(如虚拟磁盘数据文件等),实际数据都存放在flat.vmdk文件中,转换时需要使用vmdk文件而不是flat.vmdk文件;此例中有两个虚拟磁盘,所以vmdk和flat.vmdk文件各有两个;
<2>开始转换
转换思路:
A. 先使用vmkfstools将厚模式的vmdk文件克隆为精简的vmdk磁盘文件,克隆出的精简磁盘文件将包括vmdk和flat.vmdk文件;
B. 将原来的厚模式磁盘文件vmdk和flat.vmdk文件备份或删除(建议使用mv命令将其重命名备份,以免因转换失败而误删数据);
C. 将新生成的vmdk和flat.vmdk磁盘文件分别重命名为与原磁盘同名的磁盘文件
D. 重新从虚拟机清单中删除添加虚拟机
Vmkfstools命令格式
#vmkfstools-i-d{thin|thick}
参数解释:
-i 参数:
原vmdk磁盘名
-d{thin|thick}:
目标磁盘的格式,thin或thick;为要生成的目标vmdk磁盘名;
1) 转换磁盘
#vmkfstools-ithick2thin.vmdk-dthinthin.vmdk
Destinationdiskformat:
VMFSthin-provisioned
Cloningdisk'thick2thin.vmdk'...
Clone:
100%done.
克隆完成将生成两个新的vmdk和flat.vmdk文件
#ls
thick2thin-flat.vmdk thick2thin.vmx thin-flat.vmdk
thick2thin.nvram thick2thin.vmxf thin.vmdk
thick2thin.vmdk thick2thin_1-flat.vmdk vmware.log
thick2thin.vmsd thick2thin_1.vmdk
使用mv重命名将原磁盘vmdk和flat.vmdk备份
#mvthick2thin.vmdk thick2thin.vmdk.bak
#mvthick2thin-flat.vmdk thick2thin-flat.vmdk.bak
将新生成的精简vmdk文件重命名为原厚模式的磁盘名称
#mvthin.vmdk thick2thin.vmdk
注意:
在vSphereClient中启动虚拟机,做到此步基本已经完成了ThicktoThin的转换,并且虚拟机已经可以正常启动,但是我们发现flat.vmdk文件并没有更改名字虚拟机也可以正常启动,因为新生成vmdk文件里指定了新的flat.vmdk文件,我们可以通过vi手动更改文件名来修改虚拟机的flat.vmdk名称以便于后期虚机的维护和管理;此时可以启动虚拟机进行测试一下;
更改磁盘名:
首先关闭虚拟机,使用ssh进入主机的虚拟机目录下,使用mv命令将新生成的thin-flat.vmdk文件更改成原来的虚机磁盘名称thick2thin-flat.vmdk
#mvthin-flat.vmdkthick2thin-flat.vmdk
此时如果在vSphereClient启动虚拟机将报”找不到磁盘文件”类似的错误,因为虚拟机启动时需要通过vmdk文件找到flat.vmdk文件,所以需要修改vmdk文件中的磁盘文件名;
使用vi修改其中一行含有flat.vmdk的参数,将该部分修改成新的磁盘文件名
#vithick2thin.vmdk
#Extentdescription
RW83886080VMFS"thick2thin-flat.vmdk" #注意,此处原来为转换成的thin-flat.vmdk
然后将虚拟机从清单中移除
在数据存储里将vmx文件添加到清单
保持默认下一步
按照原来的配置下一步
完成
此时打开虚拟机的”编辑配置”选项
查看刚转换的磁盘,已经变成了精简置备模式
而原来的虚拟磁盘因为没有转换,仍为厚置备模式;
根据上述方法在命令行所做的操作
/vmfs/volumes/50668537-b0bac130-aa29-848f69e1e591#cd..
/vmfs/volumes#ls
33df907b-50bcf6d9-e366-b475a5e675f3516b9f3a-ca8824dc-f117-848f69e1e593
5056ce61-4ec0704e-f879-848f69e1e58d9668e17a-ce2c7b40-f052-9b1a012f16ef
505ac69b-05321cf6-6d9d-848f69e1e591RD1_CAILEI_40GB
505ad0d4-decba686-90d9-848f69e1e591RD1_ORAOS1_100GB
50652ce9-81e267a2-cadf-848f69e1e591RD1_OS_240GB
50668537-b0bac130-aa29-848f69e1e591RD5_CESHI1_1TB
509a0cfc-e65ff1f8-7a20-848f69e1e58fdatastore151
509a0d03-d71857dc-16e8-848f69e1e58frd5_view_500GB
509edc04-335c3a1e-8f6d-848f69e1e593test_storage
/vmfs/volumes#cdrd5_view_500GB/
/vmfs/volumes/509edc04-335c3a1e-8f6d-848f69e1e593#ls
XP模板cl2mailserverthxp2win7_2公司服务器
cl1isothxp1win7_1windows2003
/vmfs/volumes/509edc04-335c3a1e-8f6d-848f69e1e593#cdcl
cl1/cl2/
/vmfs/volumes/509edc04-335c3a1e-8f6d-848f69e1e593#cdcl1/
/vmfs/volumes/509edc04-335c3a1e-8f6d-848f69e1e593/cl1#ls
cl1-1c2b11d2.vswpcl1.vmsdvmware-5.logvmware-9.log
cl1-flat.vmdkcl1.vmxvmware-6.logvmware.log
cl1.nvramcl1.vmxfvmware-7.logvmx-cl1-472584658-1.vswp
cl1.vmdkvmware-4.logvmware-8.log
/vmfs/volumes/509edc04-335c3a1e-8f6d-848f69e1e593/cl1#du-sh*
1.0Gcl1-1c2b11d2.vswp
40.0Gcl1-flat.vmdk
1.0Mcl1.nvram
0cl1.vmdk
0cl1.vmsd
8.0kcl1.vmx
0cl1.vmxf
1.0Mvmware-4.log
1.0Mvmware-5.log
1.0Mvmware-6.log
1.0Mvmware-7.log
1.0Mvmware-8.log
1.0Mvmware-9.log
1.0Mvmware.log
45.0Mvmx-cl1-472584658-1.vswp
/vmfs/volumes/509edc04-335c3a1e-8f6d-848f69e1e593/cl1#vmkfstools-icl1.vmdk-dthincl1_new.vmdk
Failedtoopen'cl1.vmdk':
Failedtolockthefile(16392).
/vmfs/volumes/509edc04-335c3a1e-8f6d-848f69e1e593/cl1#vmkfstools-icl1.vmdk-dthincl1_new.vmdk
Failedtoopen'cl1.vmdk':
Failedtolockthefile(16392).(这边做操作报错,是因为忘了关闭虚拟机)关闭虚拟机后下面就成功了
/vmfs/volumes/509edc04-335c3a1e-8f6d-848f69e1e593/cl1#vmkfstools-icl1.vmdk-dthincl1_new.vmdk
Destinationdiskformat:
VMFSthin-provisioned
Cloningdisk'cl1.vmdk'...
Clone:
100%done.
/vmfs/volumes/509edc04-335c3a1e-8f6d-848f69e1e593/cl1#ls
cl1-flat.vmdkcl1.vmsdcl1_new-flat.vmdkvmware-5.logvmware-8.log
cl1.nvramcl1.vmxcl1_new.vmdkvmware-6.logvmware-9.log
cl1.vmdkcl1.vmxfvmware-4.logvmware-7.logvmware.log
/vmfs/volumes/509edc04-335c3a1e-8f6d-848f69e1e593/cl1#du-sh*
40.0Gcl1-flat.vmdk
1.0Mcl1.nvram
0cl1.vmdk
0cl1.vmsd
8.0kcl1.vmx
0cl1.vmxf
1.9Gcl1_new-flat.vmdk
0cl1_new.vmdk
1.0Mvmware-4.log
1.0Mvmware-5.log
1.0Mvmware-6.log
1.0Mvmware-7.log
1.0Mvmware-8.log
1.0Mvmware-9.log
1.0Mvmware.log
/vmfs/volumes/509edc04-335c3a1e-8f6d-848f69e1e593/cl1#mvcl1
cl1-flat.vmdkcl1.vmdkcl1.vmxcl1_new-flat.vmdk
cl1.nvramcl1.vmsdcl1.vmxfcl1_new.vmdk
/vmfs/volumes/509edc04-335c3a1e-8f6d-848f69e1e593/cl1#mvcl1.vmdkcl1_old.vmdk
/vmfs/volumes/509edc04-335c3a1e-8f6d-848f69e1e593/cl1#mvcl1-flat.vmdkcl1-flat_old.vmdk
/vmfs/volumes/509edc04-335c3a1e-8f6d-848f69e1e593/cl1#ls
cl1-flat_old.vmdkcl1.vmxcl1_new.vmdkvmware-5.logvmware-8.log
cl1.nvramcl1.vmxfcl1_old.vmdkvmware-6.logvmware-9.log
cl1.vmsdcl1_new-flat.vmdkvmware-4.logvmware-7.logvmware.log
/vmfs/volumes/509edc04-335c3a1e-8f6d-848f69e1e593/cl1#du-sh*
40.0Gcl1-flat_old.vmdk
1.0Mcl1.nvram
0cl1.vmsd
8.0kcl1.vmx
0cl1.vmxf
1.9Gcl1_new-flat.vmdk
0cl1_new.vmdk
0cl1_old.vmdk
1.0Mvmware-4.log
1.0Mvmware-5.log
1.0Mvmware-6.log
1.0Mvmware-7.log
1.0Mvmware-8.log
1.0Mvmware-9.log
1.0Mvmware.log
/vmfs/volumes/509edc04-335c3a1e-8f6d-848f69e1e593/cl1#mvcl1_new.vmdkcl1.vmdk
/vmfs/volumes/509edc04-335c3a1e-8f6d-848f69e1e593/cl1#mvcl1_new-flat.vmdkcl1-flat.vmdk
/vmfs/volumes/509edc04-335c3a1e-8f6d-848f69e1e593/cl1#ls
cl1-flat.vmdkcl1.vmdkcl1.vmxfvmware-5.logvmware-8.log
cl1-flat_old.vmdkcl1.vmsdcl1_old.vmdkvmware-6.logvmware-9.log
cl1.nvramcl1.vmxvmware-4.logvmware-7.logvmware.log
/vmfs/volumes/509edc04-335c3a1e-8f6d-848f69e1e593/cl1#du-sh*
1.9Gcl1-flat.vmdk
40.0Gcl1-flat_old.vmdk
1.0Mcl1.nvram
0cl1.vmdk
0cl1.vmsd
8.0kcl1.vmx
0cl1.vmxf
0cl1_old.vmdk
1.0Mvmware-4.log
1.0Mvmware-5.log
1.0Mvmware-6.log
1.0Mvmware-7.log
1.0Mvmware-8.log
1.0Mvmware-9.log
1.0Mvmware.log
/vmfs/volumes/509edc04-335c3a1e-8f6d-848f69e1e593/cl1#catcl1.vmdk
#DiskDescriptorFile
version=1
encoding="UTF-8"
CID=2508caf1
parentCID=ffffffff
isNativeSnapshot="no"
createType="vmfs"
#Extentdescription
RW83886080VMFS"cl1_new-flat.vmdk"
#TheDiskDataBase
#DDB
ddb.deletable="true"
ddb.virtualHWVersion="8"
ddb.longContentID="8ef519a8670b55c795ffc1db2508caf1"
ddb.uuid="6000C2911f2a8b8a-05df4cdb2b033292"
ddb.geometry.cylinders="5221"
ddb.geometry.heads="255"
ddb.geometry.sectors="63"
ddb.thinProvisioned="1"
ddb.adapterType="lsilogic"
/vmfs/volumes/509edc04-335c3a1e-8f6d-848f69e1e593/cl1#vicl1.vmdk
把#Extentdescription
RW83886080VMFS"cl1_new-flat.vmdk"
改成#Extentdescription
RW83886080VMFS"cl1-flat.vmdk"
:
wq