vSphere PowerCLI安装及命令

简介:

本周一晚新公司部门部分人员聚餐,圆桌九人围坐,80后占其八,皆五年以上IT龄,老大为长者。

席间玩一游戏,找众将之共同点,

一人曰,有白发者喝酒,众将皆举杯,皆尽。
 


 

  • 首先到官方网站下载VMware vSphere PowerCLI的软件包,

      pp1

  • 安装软件到本机,

pp2

  • 运行后提示:”无法加载文件c:\program Files\vmware\infrastructure\vsphere powerCLI\script\initialize-vitoolkitenviroment.ps1,因为在此系统中禁止执行脚本。有关信息,请查阅“get-help about_signing”.

powercli

  • 通过get-executionpolicy查看本地执行策略

powercli1

  • 更改执行策略

powercli2

  • 更改为RemoteSigned执行策略

powercli3

备注:

Restricted 执行策略不允许任何脚本运行。  
AllSigned 和 RemoteSigned 执行策略可防止 Windows PowerShell 运行没有数字签名的脚本。

  • 再次运行VMware vSphere PowerCLI,提示”Welcome“界面,工具正常启动。

powercli4

  • 输入Connect-VIServer ,连接上vCenter服务器

pp33

  • 输入vCenter的登录用户名和密码。

pp5

  • 接下来输入Get-vm,可以看到vCenter下管理的所有虚机得名称,运行状态,CPU的数量,内存大小参数。

pp6

  • 再实现下虚拟机的启动命令,这里选择”WinServer01_1”这台虚拟服务器,输入Get-VM WinServer01_1 | start-vm,5S之后可以从vCenter控制台的任务栏中看出虚拟机正在启动中

 

  • 通过Get-vmguest winserver01_1 | fc 查看服务器参数未能得出结果,

pp9

  • 更换vCenter虚拟机试下这个命令 Get-vmguest vcenter | fc ,从而得到下面一长串虚拟机信息参数。

class VMGuestImpl 

  OSFullName = Microsoft Windows Server 2003 (64 位) 
  IPAddress = 
    [ 
      10.X.X.X. 
    ]

  State = ShuttingDown 
  Disks = 
    [ 
      class DiskInfoImpl 
      { 
        Path = C:\ 
        Capacity = 32201936896 
        FreeSpace = 17221709824 
      } 
    ]

  HostName = vcenter.view.test 
  Nics = 
    [ 
      class NicInfoImpl 
      { 
        Connected = True 
        Device = 
          class NetworkAdapterImpl 
          { 
            MacAddress = 00:0c:00:00:00:00

            WakeOnLanEnabled = True 
            NetworkName = VM Network 
            Type = Vmxnet 
            ConnectionState = 
              class ConnectInfoImpl 
              { 
                AllowGuestControl = True 
                Connected = True 
                StartConnected = True 
              } 
            Id = VirtualMachine-vm-16/4000 
            Name = 网络适配器 1 
          } 
        IPAddress = 
          [ 
            10.X.X.X          ]

        MacAddress = 00:0c:00:00:00:00

        NetworkName = VM Network 
      } 
    ]

  ScreenDimensions = 
    class Size 
    { 
      IsEmpty = False 
      Width = 800 
      Height = 600 
    } 
  VmId = 
    class MoId 
    { 
      Id = VirtualMachine-vm-16 
    } 
  VmName = vCenter 
}

class VMGuestImpl 

  OSFullName = Microsoft Windows Server 2003 (64 位) 
  IPAddress = 
    [ 
      x.x.x.y   ]

  State = Running 
  Disks = 
    [ 
      class DiskInfoImpl 
      { 
        Path = C:\ 
        Capacity = 32201936896 
        FreeSpace = 15573364736 
      } 
    ]

  HostName = vcenter.view.test 
  Nics = 
    [ 
      class NicInfoImpl 
      { 
        Connected = True 
        Device = 
          class NetworkAdapterImpl 
          { 
            MacAddress = 00:0c:,,, 
            WakeOnLanEnabled = True 
            NetworkName = VM Network 
            Type = Vmxnet 
            ConnectionState = 
              class ConnectInfoImpl 
              { 
                AllowGuestControl = True 
                Connected = True 
                StartConnected = True 
              } 
            Id = VirtualMachine-vm-121/4000 
            Name = 网络适配器 1 
          } 
        IPAddress = 
          [ 
            x.x.x.y          ]

        MacAddress = 00:0c:…

        NetworkName = VM Network 
      } 
    ]

  ScreenDimensions = 
    class Size 
    { 
      IsEmpty = False 
      Width = 800 
      Height = 600 
    } 
  VmId = 
    class MoId 
    { 
      Id = VirtualMachine-vm-121 
    } 
  VmName = vCenter 
}

  • 新建虚拟机的命令

New-vm -vmhost esxi01.vmanager.cn -name svr01 -template win2008r2 win2008r2_template -datastore datastore1 -oscustomizationspec win2008r2_template

-vmhost:VM生成的目标ESXi主机; 
-Name:生成的VM的名字; 
-Template:用于生成VM的模板主机; 
-Datastore:生成的虚拟机的存放数据存储; 
-OSCustomizationspec:定制化部署VM的prep目录;

(网上看到虚拟人的文档,谢啦)

以上都是些比较单一的命令,其功能强大之处体现在批量执行脚本,达到大规模配置的目的,后面会更新批量部署脚本的记录,谢谢。






本文转自 tim2009 51CTO博客,原文链接:http://blog.51cto.com/virtualbox/978907,如需转载请自行联系原作者
目录
相关文章
|
数据库 数据安全/隐私保护 数据库连接
|
虚拟化 数据安全/隐私保护 Windows
|
存储 网络安全 Go