介绍在win10系统 快速安装vmware PowerCLI (ver:12.3)

    获取新版本的PowerCLI

    官方入口: VMware PowerCLI
    说明 PowerCLI 自 v6.5R1 之后应该都是无安装版,需要使用windows PS作为cmdlet调用窗口。
    PowerCLI与VMware其他产品 交互性查询

    安装PowerCLI

    安装此版本之前,如当前系统已有PowerCLI 6.5及之前的版本,需要卸载掉低版本。

    在线安装

    打开windows 10 的powershell (管理员)

    Install-Module VMware.PowerCLI -Scope CurrentUser1.

    离线安装

    1. 打开powershell

    2. 执行如下命令

    $env:PSModulePath1.
    PS C:\WINDOWS\system32> $env:PSModulePath
    C:\Users\ilu\Documents\WindowsPowerShell\Modules;C:\Program Files\WindowsPowerShell\Modules;C:\WINDOWS\system32\WindowsPowerShell\v1.0\Modules;C:\Program Files (x86)\Windows Kits\10\Microsoft Application Virtualization\Sequencer\AppvPkgConverter;C:\Program Files (x86)\Windows Kits\10\Microsoft Application Virtualization\Sequencer\AppvSequencer;C:\Program Files (x86)\Windows Kits\10\Microsoft Application Virtualization\1.2.3.4.5.6.7.
    1. 选择其中某一个Module路径,比如:C:\Program Files\WindowsPowerShell\Modules

    2. 将下载到本地的PowerCLI.zip 文件解压到选择的路径下。

    3. 解锁已拷贝过来的文件

    Get-ChildItem -Path 'C:\Program Files\WindowsPowerShell\Modules' -Recurse | Unblock-File1.
    1. 修改策略,执行如下命令

    Set-ExecutionPolicy RemoteSigned--//选择 Y1.2.

    升级PowerCLI

    Update-Module VMware.PowerCLI -Scope CurrentUser1.

    使用举例

    1)连接vCenter

    Connect-VIServer -Server esx3.example.com -Protocol http -User 'MyAdministratorUser' -Password'MyPassword'1.2.

    2) 管理VM

    --// 查看所有虚拟机Get-VM--// 获取虚拟机名称机电源状态,并保存至文件$respool = Get-ResourcePool ResourcePoolGet-VM -Location $respool | Select-Object Name, PowerState > myVMProperties.txt--// 启动虚拟机Get-VM VM | Start-VM--// 获取VM的客户机OSGet-VMGuest VM | fc--// 关闭VM的客户机OSStop-VMGuest VM--// VM下电Stop-VM VM--// 从主机1移动VM到主机2Get-VM -Name VM -Location Host01 | Move-VM –Destination Host021.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.

    3) 添加单独主机到vCenter

    --// 查看当前vCenter中的所有hostGet-VMHost--// 添加独立主机到vCenterAdd-VMHost -Name Host -Location (Get-Datacenter DC) -User root -Password pass1.2.3.4.5.

    4) 设置主机的License Key

    --// 设置一个变量,将主机保存至变量中$vmhost = Get-VMHost -Name Host--// 设置主机为评估模式Set-VMHost -VMHost $vmhost -LicenseKey 00000-00000-00000-00000-00000--// 导入正式license KeySet-VMHost -VMHost $vmhost -LicenseKey Your_license_key1.2.3.4.5.6.7.8.

    5) 批量激活维护模式

    --// 设置所有主机到变量vmhost$vmhost = Get-VMHost -Name Host--// 保存主机所在的集群到变量vmhostCluster$vmhostCluster = Get-Cluster -VMHost $vmhost--// 启动激活主机维护模式任务,并保存到变量$updateHostTask = Set-VMHost -VMHost $vmhost -State "Maintenance" -RunAsync
    
    >>“If the host is not automated or is partially automated and has powered-on virtual
    machines running on it, you must use the RunAsync parameter and wait until all powered-on
    virtual machines are relocated or powered off before applying DRS recommendations”<<--// 应用DRS建议(如果启用了DRS的话)Get-DrsRecommendation -Cluster $vmhostCluster | where {$_.Reason -eq "Host is entering
    maintenance mode"} | Invoke-DrsRecommendation--// 设置变量,保存任务输出$myUpdatedHost = Wait-Task $updateHostTask