目录
1.背景
当前在做虚拟化测试,批量克隆了200台+的虚拟机,因早期ESXi主机的时间存在问题,所以关闭了模板中 同步客户机时间与主机时间的选项,于是这200台虚拟机的时间各自为战。当ESXi主机时间问题修复后,200台虚拟机的时间同步状态需要批量修改。
2.工具
PowerCLI
3.获取虚拟机时间同步状态
PS C:\Users\YQY> Get-VM | Select Name,@{N='TimeSync';E={$_.ExtensionData.Config.Tools.syncTimeWithHost}}
Name TimeSync
---- --------
VWin2012-184 True
VWin2012-166 True
CentOS8 True
VWin2012-113 True
VCentOS7-155 True
VCentOS7-54 True
IOPS-94 True
#内容过长,至截取一部分
4.修改全部虚拟机的属性
Tools.syncTimeWithHost=true
Foreach ($v in (get-vm)) {
$vm = $v | Get-View
$vmConfigSpec = New-Object VMware.Vim.VirtualMachineConfigSpec
$vmConfigSpec.Tools = New-Object VMware.Vim.ToolsConfigInfo
$vmConfigSpec.Tools.syncTimeWithHost = $true
$vm.ReconfigVM($vmConfigSpec)
}
5.参考:
http://www.baylyparker.com/2017/01/powercli-script-for-time-vmtools/