准备工作
在进行ESXi主机配置备份之前,需要确保两个关键条件得到满足:
- 目标内部版本号匹配:进行备份的ESXi主机的目标内部版本号需与当前主机的内部版本号匹配。
- UUID保持不变:确保ESXi的UUID在备份与还原过程中保持不变。-> (意味着不能导配置到别的机器上,当然UUID其实也可以改,拉到最下见文章最后)
怎么查UUID:
#esxcfg-info -u
如何备份ESXi配置
注意:ESXi的配置默认是每一小时自动保存一次在/bootblank/state.tgz,所以开始备份前,要先确保当前最新的配置与这个配置文件同步:
1. 同步当前配置到持久存储:
#vim-cmd hostsvc/firmware/sync_config
2. 输入以下命令备份 ESXi 主机的配置,命令输入后,会生成一条配置文件的URL下载链接:
#vim-cmd hostsvc/firmware/backup_config
- Bundle can be downloaded at : http://*/downloads/52c2a37e-006f-f16a-dcd1-2deca51157d5/configBundle-10-132-10-142.vsphere.local.tgz
3. 找到当前ESXi的IP地址,可以用这个命令查IP:
#esxcli network ip interface ipv4 get
4. 将主机IP地址替换到第二步URL里的*位置。打开网页浏览器输入完整URL,成功下载配置文件。
如何还原ESXi配置
1. 将上面获得的配置文件上传到ESXi的/tmp目录,上传可用winscp等scp工具。
2. 将配置文件改名,改成一个固定名字‘configBundle.tgz’。
#mv /tmp/configBundle-10-132-10-142.vsphere.local.tgz /tmp/configBundle.tgz
3. 让ESXi进入维护模式。
#esxcli system maintenanceMode set --enable yes
4. 开始还原,输入此命令后,ESXi会自动重启。
#vim-cmd hostsvc/firmware/restore_config /tmp/configBundle.tgz
5.ESXi重启后,就成功还原了ESXi的配置。可用以下命令退出维护模式
#esxcli system maintenanceMode set --enable no
如何在配置备份文件里改ESXi的UUID?
1.解压配置文件到当前目录。
#tar zxvf configBundle.tgz
2. 解压的文件我们可以看到有三个,分别是Manifest.txt, jumpstrt.gz和state.tgz.
UUID在Manifest.txt里,我们vi编辑Manifest.txt里面的UUID项,wq保存。
#vi Manifest.txt
3. 改一下原来的配置文件备份的名字
#mv configBundle.tgz configBundle1.tgz
4. 打包压缩更改后的Manifest.txt成新的配置文件备份包
#tar zcvf configBundle.tgz Manifest.txt state.tgz jumpstrt.gz
5. 按照上面“如何还原ESXi配置”步骤,进维护模式,并还原配置
#esxcli system maintenanceMode set --enable yes
#vim-cmd hostsvc/firmware/restore_config /tmp/configBundle.tgz