|
|
|
|
移动端

3.2.5 批量更改虚拟机名称及port group

《运维前线:一线运维专家的运维方法、技巧与实践》第3章数据中心搬迁中的x86自动化运维,本章主要介绍在大型数据中心搬迁的过程中,如何利用自行编制的各类脚本,低成本、高效率又准确地完成大量节点的逻辑搬迁工作。本节为大家介绍批量更改虚拟机名称及port group。

作者:云技术社区来源:机械工业出版社|2017-04-23 16:19

开发者盛宴来袭!7月28日51CTO首届开发者大赛决赛带来技术创新分享

3.2.5 批量更改虚拟机名称及port group

为了批量更改虚拟机名称及虚拟机所属的port group(VLAN),我们需要建立一个参数文件,参数文件的内容如图3-18所示。

我们将参数文件保存为c:\zbportgroup.csv,由于主机名采用的是中文字符,因此保存参数文件时编码务必采用UTF-8字符集,以确保PowerCLI中可以正常识别。

接下来登录PowerCLI控制机,连接入指定的vCenter Server,如图3-19所示。

导入参数文件:

  1. $vmlist=Import-CSV "c:\zbportgroup.csv" 

为虚拟机重命名:

  1. FOREACH ($vm in $vmlist)  
  2. { Get-VM $($vm.oldname) | Set-vm -name $($vm.NEWNAME) -confirm:$false |  
  3. Out-File –Append changname.txt} 

为虚拟机重新设置port group:

  1. FOREACH ($vm in $vmlist)  
  2. {Get-vm $($vm.NEWNAME) | get-networkadapter | set-networkadapter -networkname  
  3. $($vm.portgroup) -confirm:$false | Out-File –Append changportgroup.txt } 

为减少循环以提高效率,可将以上语句合并如下:

  1. FOREACH ($vm in $vmlist)  
  2. {(Get-VM $($vm.oldname) | Set-vm -name $($vm.NEWNAME) -confirm:$false) -and  
  3. (Get-vm $($vm.NEWNAME) | get-networkadapter | set-networkadapter -networkname  
  4. $($vm.portgroup) -confirm:$false)} 

正在执行批量更新port group的虚拟机,如图3-20所示。


喜欢的朋友可以添加我们的微信账号:

51CTO读书频道二维码


51CTO读书频道活动讨论群:342347198

【责任编辑:book TEL:(010)68476606】

回书目   上一节   下一节
点赞 0
分享:
大家都在看
猜你喜欢

读 书 +更多

ASP.NET 2.0数据库开发实例精粹

本书分为8章,首先介绍ASP.NET的开发技巧和重点技术,尤其针对初学者如何快速入门并掌握ASP.NET编程做了深入浅出的介绍;然后重点介绍ASP.N...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊