zoukankan      html  css  js  c++  java
  • C#调PowerShell在SCVMM中创建虚拟机时,实时显示创建进度 天高地厚

    环境:

      Win server 2008 R2 + Hyper-v + SCVMM2008 R2

    目的:

      C#调PowerShell在SCVMM中创建虚拟机时,实时显示创建进度

    在SCVMM2008R2中手动创建一个vm(虚拟机)时,作业界面中会显示很详细的创建进度,包括有哪些子任务,每个任务的完成度、状态等信息。SCVMM的界面操作是基于Powershell的,所以肯定有ps脚本可以实现上述目的。

    microsoft提供的创建虚拟机的ps脚本中,提到如下内容(为显示PS脚本中部分内容被回车

    $NewVMTasks= [System.Array]::CreateInstance("Microsoft.SystemCenter.VirtualMachineManager.Task", $NumVMs)
    $NewVMs= [System.Array]::CreateInstance("Microsoft.SystemCenter.VirtualMachineManager.VM", $NumVMs)
    $i=0
    # Loop that creates each VM asynchronously.
    while($NumVMs-gt0)
    {
    # Generate a unique VM name.
    $VMRnd=$Random.next()
    $NewVMName=$VMName+$VMRnd
    # Get the ratings for each host and sort the hosts by ratings.
    $Ratings=@(Get-VMHostRating -Template $Template-VMHost $VMHosts-DiskSpaceGB $DiskSizeGB
     -VMName $NewVMName| where { $_.Rating -gt0} | Sort-Object -property Rating -descending)
    if ($Ratings.Count -gt0)
    {
    $VMHost=$Ratings[0].VMHost
    $VMPath=$Ratings[0].VMHost.VMPaths[0]
    # Create a new VM from the template and add an additional VHD
    # to the VM.
    $NewVMJobGroup= [System.Guid]::NewGuid()
    $VMAdditionalVhd| Add-VirtualHardDisk -Bus 0-Lun 1-IDE -JobGroup $NewVMJobGroup
    $NewVMs
     
     
  • 相关阅读:
    桂电在线-转变成bootstrap版
    PHP开发APP接口---返回数据的封装类
    angularjs入门整理
    桂电在线_微信公众平台开发之-运用angularjs显示学校公告新闻列表和详情页面
    AngularJS学习-初识
    Nonsense Alphabet
    Even and Odd Functions
    研究生应该怎么学习?
    王菲观点
    Paul and Joyce are going to a movie(More listening of Unit 2)
  • 原文地址:https://www.cnblogs.com/net2012/p/2881296.html
Copyright © 2011-2022 走看看