虚拟机批量管理技巧
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
但 是,像 这 种 搭 配 foreach {} 循 环 命 令 的 做 法 虽 然 方 便,但 却 无 法 明 确 选定每一个虚拟机各自的名 称、数据存储区,以及所在的 ESXi 主机地址。在此建议您 采用接下来要讲解的第三种 做 法,那 就 是 搭 配 CSV 文 件 的方式来批量创建大量虚拟 机,因 为 CSV 的 描 述 文 件 属 性在 Excel 中维护是非常容
虚拟机批量管理技巧
CSV 文档批量创建虚拟机 在 vSphere 6.0 的
虚 拟 化 作 业 环 境 中,想 要批量创建大量虚拟机 的 方 法 有 很 多 种,其 中 最简单的做法就是创建 一个 .ps1 的手稿程序文 件,然 后 在 PowerCLI 命 令 行 下执行即可,其属性只要输入 类似以下范例即可,也就是依 序选定 ESXi 主机的地址、新 虚拟机的名称、参考的模板名 称、数据存储区名称以及来宾 操作系统的自定义规范名称。 可是这种做法您得输入多个 新虚拟机的信息。另一种方 式则是搭配 foreach {} 循环 命令的做法,这种做法只要在 每一次创建大量虚拟机时,修 改所要创建的虚拟机数量变 量与前缀即可。
再举一个批量修改新虚 拟机属性的例子。我们可以 将 刚 创 建 好 的 所 有 虚 拟 机, 其虚拟网卡类型均修改为高 效 的 vmxnet3,这 样,可 以 让 虚拟机的网络传输速度最快 高达 10GB。如果想要关闭或 启 用 网 络 唤 醒 功 能,则 只 要 设 置 WakeOneLan 参 数 值 为 True 或 False 即可。
$VirtualMachines | %{ Get-VM -Name $_.VMName | Get-NetworkAdapter | Set-NetworkAdapter -Type vmxnet3 -Confirm:$false}
易 的,并 且 不 需 要 撰 写 一 个 带 有 foreach {} 循环命令的复杂手稿程 序。 如 图 3 所 示,笔 者 先以 Excel 创建一个新 虚 拟 机 清 单,其 中 同 样 包 含 了 各 项 参 数 设 置, 比较特别的是我们还加入了 CPU 数量(NumCPU)与内存大 小(MemoryGB)选定。完成编 辑后,再另存为新的 .csv 类 型文档即可。 接 下 来 请 开 启 PowerCLI 命 令 界 面,并 连 接 登 录 vCenter Server, 然 后 便 可以依序输入下列的变量 设置以及命令参数的执 行,其 中 在 New-VM 命 令 之 后 的 参 数,便 是 用 来 选 定 对 应 的 CSV 文 档 域 名,例 如 这 行 -Template $(GetTemplate $_.Template)叙述, 即是选定参照 Template 的域
New-vm -vmhost ESX01. -Name SVR-01
图 3 CSV 文件范例
-Template WinServer2012_ R2_Template -Datastore ESX01-datastore -OSCustomizationspec WinServer2012_R2_Template
System Management 系统维护与管理 责任编辑:张碧薇 投稿信箱:netadmin@
置 可 能 是 $vmhost = GetVMHost -Name ESXi01,其中 ESXi01 是主机名,您可以改 输入 IP 地址或 FQDN 地址。
$myResourcePool =
$Description = " 这是 顾大侠以 CSV 文档批量创建 虚拟机的范例 "
$VirtualMachines= Import-CSV $CSV
$VirtualMachines | %{ New-VM -Name $_.VMName -Template $(Get-Template $_.Template) -VMHost $(Get-VMHost $_.VMHost) -Datastore $(GetDatastore $_.Datastore) -OSCustomizationSpec $(Get-OSCustomizationSpec $_.OSCustomizationSpec)}
批量修改虚拟机设置 如果您想要修改刚刚创建好的新虚拟机的某 些 来自 性,例 如 CPU、内 存 以
及 描 述 说 明,则 可 以 直 接 执 行 下 列 命 令。 其 中,Confirm:$false 参数设置表 示省略确认提示。
$VirtualMachines | %{ Set-VM -VM $_.VMName -NumCpu $_.NumCpu -MemoryGB $_.MemoryGB -Description $Description -Confirm:$false}
84 2018.06
责任编辑:张碧薇 投稿信箱:netadmin@ 系统维护与管理 System Management
值。 一 旦 成 功 执 行 后,将 可 以看到添加的虚拟机清单。
$CSV = "C:\ VMTemplate.csv"
Get-ResourcePool -Name " 测试用池 "
$mySpecification = Get-OSCustomizationSpec -Name "Windows 10"
New-VM -VM "ERP 客 户 端 " -Name WinClient01 -OSCustomizationSpec $mySpecification -Resource Pool $myResourcePool
如果执行的过程之中出 现 了 误 信 息,极 有 可 能 是 您 所选定的 CSV 文件相关字段 信 息 错 误。 另 外,如 果 发 生 某 一 台 ESXi 主 机 无 法 正 常 连 接 时,相 对 的 虚 拟 机 虽 然 无 法 成 功 创 建,但 系 统 仍 会 略 过 该 错 误,继 续 创 建 下 一 个新的虚拟机。
虚拟机批量管理技巧
CSV 文档批量创建虚拟机 在 vSphere 6.0 的
虚 拟 化 作 业 环 境 中,想 要批量创建大量虚拟机 的 方 法 有 很 多 种,其 中 最简单的做法就是创建 一个 .ps1 的手稿程序文 件,然 后 在 PowerCLI 命 令 行 下执行即可,其属性只要输入 类似以下范例即可,也就是依 序选定 ESXi 主机的地址、新 虚拟机的名称、参考的模板名 称、数据存储区名称以及来宾 操作系统的自定义规范名称。 可是这种做法您得输入多个 新虚拟机的信息。另一种方 式则是搭配 foreach {} 循环 命令的做法,这种做法只要在 每一次创建大量虚拟机时,修 改所要创建的虚拟机数量变 量与前缀即可。
再举一个批量修改新虚 拟机属性的例子。我们可以 将 刚 创 建 好 的 所 有 虚 拟 机, 其虚拟网卡类型均修改为高 效 的 vmxnet3,这 样,可 以 让 虚拟机的网络传输速度最快 高达 10GB。如果想要关闭或 启 用 网 络 唤 醒 功 能,则 只 要 设 置 WakeOneLan 参 数 值 为 True 或 False 即可。
$VirtualMachines | %{ Get-VM -Name $_.VMName | Get-NetworkAdapter | Set-NetworkAdapter -Type vmxnet3 -Confirm:$false}
易 的,并 且 不 需 要 撰 写 一 个 带 有 foreach {} 循环命令的复杂手稿程 序。 如 图 3 所 示,笔 者 先以 Excel 创建一个新 虚 拟 机 清 单,其 中 同 样 包 含 了 各 项 参 数 设 置, 比较特别的是我们还加入了 CPU 数量(NumCPU)与内存大 小(MemoryGB)选定。完成编 辑后,再另存为新的 .csv 类 型文档即可。 接 下 来 请 开 启 PowerCLI 命 令 界 面,并 连 接 登 录 vCenter Server, 然 后 便 可以依序输入下列的变量 设置以及命令参数的执 行,其 中 在 New-VM 命 令 之 后 的 参 数,便 是 用 来 选 定 对 应 的 CSV 文 档 域 名,例 如 这 行 -Template $(GetTemplate $_.Template)叙述, 即是选定参照 Template 的域
New-vm -vmhost ESX01. -Name SVR-01
图 3 CSV 文件范例
-Template WinServer2012_ R2_Template -Datastore ESX01-datastore -OSCustomizationspec WinServer2012_R2_Template
System Management 系统维护与管理 责任编辑:张碧薇 投稿信箱:netadmin@
置 可 能 是 $vmhost = GetVMHost -Name ESXi01,其中 ESXi01 是主机名,您可以改 输入 IP 地址或 FQDN 地址。
$myResourcePool =
$Description = " 这是 顾大侠以 CSV 文档批量创建 虚拟机的范例 "
$VirtualMachines= Import-CSV $CSV
$VirtualMachines | %{ New-VM -Name $_.VMName -Template $(Get-Template $_.Template) -VMHost $(Get-VMHost $_.VMHost) -Datastore $(GetDatastore $_.Datastore) -OSCustomizationSpec $(Get-OSCustomizationSpec $_.OSCustomizationSpec)}
批量修改虚拟机设置 如果您想要修改刚刚创建好的新虚拟机的某 些 来自 性,例 如 CPU、内 存 以
及 描 述 说 明,则 可 以 直 接 执 行 下 列 命 令。 其 中,Confirm:$false 参数设置表 示省略确认提示。
$VirtualMachines | %{ Set-VM -VM $_.VMName -NumCpu $_.NumCpu -MemoryGB $_.MemoryGB -Description $Description -Confirm:$false}
84 2018.06
责任编辑:张碧薇 投稿信箱:netadmin@ 系统维护与管理 System Management
值。 一 旦 成 功 执 行 后,将 可 以看到添加的虚拟机清单。
$CSV = "C:\ VMTemplate.csv"
Get-ResourcePool -Name " 测试用池 "
$mySpecification = Get-OSCustomizationSpec -Name "Windows 10"
New-VM -VM "ERP 客 户 端 " -Name WinClient01 -OSCustomizationSpec $mySpecification -Resource Pool $myResourcePool
如果执行的过程之中出 现 了 误 信 息,极 有 可 能 是 您 所选定的 CSV 文件相关字段 信 息 错 误。 另 外,如 果 发 生 某 一 台 ESXi 主 机 无 法 正 常 连 接 时,相 对 的 虚 拟 机 虽 然 无 法 成 功 创 建,但 系 统 仍 会 略 过 该 错 误,继 续 创 建 下 一 个新的虚拟机。