共用方式為


Update-SCService

更新 VMM 服務實例。

Syntax

Update-SCService
      [-VMMServer <ServerConnection>]
      [-Service] <Service>
      [-ShowActions]
      [-RunAsynchronously]
      [-PROTipID <Guid>]
      [-JobVariable <String>]
      [-OnBehalfOfUser <String>]
      [-OnBehalfOfUserRole <UserRole>]
      [<CommonParameters>]
Update-SCService
      [-VMMServer <ServerConnection>]
      [-Service] <Service>
      [-WhatIf]
      [-RunAsynchronously]
      [-PROTipID <Guid>]
      [-JobVariable <String>]
      [-OnBehalfOfUser <String>]
      [-OnBehalfOfUserRole <UserRole>]
      [<CommonParameters>]

Description

Update-SCService Cmdlet 會更新 Virtual Machine Manager (VMM) 服務的實例。 您可以使用兩種服務類型:傳統服務與映射型服務。

傳統服務會將更新套用至已部署的虛擬機器,而不需重新部署服務。 雖然快速,但不允許變更虛擬硬碟、移除網路介面卡,或變更作業系統設定 (,但 Windows Server 角色和功能除外) 。

以映射為基礎的服務會使用更新,將新的虛擬機器部署到服務。 在更新層的 VHD 之後,最常使用這種類型的服務,例如將軟體更新套用至程式磁片。

範例

範例 1:使用傳統服務更新服務

PS C:\> $Service = Get-SCService -Name "Service01"
PS C:\> $SvcTemplate = Get-SCServiceTemplate -Name "ServiceTemplate01"
PS C:\> $PendingTemplate = New-SCServiceTemplate -ServiceTemplate $SvcTemplate -Name "ServiceTemplate01" -Release "RTM"
PS C:\> Set-SCService -Service $Service -PendingServiceTemplate $PendingTemplate
PS C:\> Update-SCService -Service $Service

第一個命令會取得名為 Service01 的服務物件,這是已部署的服務,並將物件儲存在$Service變數中。

第二個命令會取得名為 ServiceTemplate01 的服務範本物件,並將物件儲存在$SvcTemplate變數中。

第三個命令會建立儲存在 $SvcTemplate 的服務範本 RTM 版本。

第五個命令會將服務實例上的擱置範本設定為儲存在 $PendingTemplate 的已更新服務範本。

最後一個命令會更新 Service01。

範例 2:使用以映射為基礎的服務來更新服務

PS C:\> $Service = Get-SCService -Name "Service02"
PS C:\> $SvcTemplate = Get-SCServiceTemplate -Name "ServiceTemplate02"
PS C:\> $PendingTemplate = New-SCServiceTemplate -ServiceTemplate $SvcTemplate -Name "ServiceTemplate02" -Release "RTM"
PS C:\> $WebTier = Get-SCComputerTierTemplate -ServiceTemplate $PendingTemplate -Name "Web Tier"
PS C:\> $WebTemplate = Get-SCVMTemplate -ComputerTierTemplate $WebTier | Set-SCVMTemplate -MemoryMB 2048
PS C:\> $BaseDisk2 = Get-SCVirtualHardDisk -Name "Win2k8R2BaseDisk_Patched.vhd"
PS C:\> $VHD = Get-SCVirtualDiskDrive -VMTemplate $WebTemplate 
PS C:\> Remove-SCVirtualDiskDrive -VirtualDiskDrive $VHD
PS C:\> New-SCVirtualDiskDrive -VirtualHardDisk $BaseDisk2 -VMTemplate $WebTemplate -BootVolume -SystemVolume -Bus 0 -LUN 0 -IDE -VolumeType BootAndSystem

PS C:\> Set-SCService -Service $Service -PendingServiceTemplate $PendingTemplate 
PS C:\> Update-SCService -Service $Service

第一個命令會取得名為 Service02 的服務物件,並將物件儲存在$Service變數中。

第二個命令會取得名為 ServiceTemplate02 的服務範本物件,並將物件儲存在$SvcTemplate變數中。

第三個命令會建立儲存在 $SvcTemplate 的新版服務範本,將它命名為 ServiceTemplate02、提供 RTM 版本,並將範本儲存在$PendingTemplate中。

第四個命令會針對儲存在 $PendingTemplate 的服務範本取得名為 Web 層的電腦層物件,並將物件儲存在$WebTier變數中。

第五個命令會將記憶體新增至儲存在 $WebTier 的電腦層虛擬機器範本。

第六個命令會取得名為 Win2k8R2BaseDisk_Patched.vhd 的虛擬硬碟物件,並將物件儲存在 $BaseDisk 2 變數中。 此虛擬硬碟包含更新版本的作業系統。

第七個命令會取得儲存在 $WebTemplate 虛擬機器範本上的虛擬磁片磁碟機物件,並將物件儲存在$VHD變數中。

第八個命令會移除儲存在 $VHD 中的虛擬磁片磁碟機物件。

第九個命令會將儲存在 $BaseDisk 2 中的虛擬硬碟物件新增至儲存在 $WebTemplate 中的虛擬機器範本物件。

第十個命令會將服務實例上的擱置範本設定為儲存在 $PendingTemplate 的已更新服務範本。

最後一個命令會更新 Service02。

參數

-JobVariable

指定追蹤工作進度,並將工作進度存放在這個參數命名的變數中。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-OnBehalfOfUser

指定使用者名稱。 此 Cmdlet 代表此參數指定的使用者運作。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-OnBehalfOfUserRole

指定使用者角色。 若要取得使用者角色,請使用 Get-SCUserRole Cmdlet。 此 Cmdlet 代表此參數所指定的使用者角色運作。

Type:UserRole
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-PROTipID

指定觸發此動作之 PRO 提示 (PRO 提示的識別碼) 。 此參數可讓您稽核 PRO 秘訣。

Type:Guid
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-RunAsynchronously

表示作業會以非同步方式執行,讓控制項立即返回命令殼層。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Service

指定 VMM 服務物件。

Type:Service
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-ShowActions

顯示將執行的所有服務與協調流程動作。 此參數適用于偵錯。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-VMMServer

指定 VMM 伺服器物件。

Type:ServerConnection
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-WhatIf

顯示執行 Cmdlet 後會發生的情況。 Cmdlet 並不會執行。

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

輸出

Service

此 Cmdlet 會傳回 Service 物件。

備註

  • 需要可以使用 Get-SCService Cmdlet 擷取的 VMM 服務物件。