共用方式為


Update-SCService

更新 VMM 服務實例。

語法

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

指定作業進度會追蹤並儲存在此參數所命名的變數中。

類型:String
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-OnBehalfOfUser

指定用戶名稱。 這個 Cmdlet 代表此參數指定的用戶運作。

類型:String
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-OnBehalfOfUserRole

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

類型:UserRole
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-PROTipID

指定觸發此動作之效能和資源優化提示 (PRO 提示) 的識別碼。 此參數可讓您稽核 PRO 秘訣。

類型:Guid
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-RunAsynchronously

表示作業會以異步方式執行,讓控件立即返回命令殼層。

類型:SwitchParameter
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-Service

指定 VMM 服務物件。

類型:Service
Position:0
預設值:None
必要:True
接受管線輸入:True
接受萬用字元:False

-ShowActions

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

類型:SwitchParameter
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-VMMServer

指定 VMM 伺服器物件。

類型:ServerConnection
Position:Named
預設值:None
必要:False
接受管線輸入:True
接受萬用字元:False

-WhatIf

顯示 Cmdlet 執行時會發生什麼事。 Cmdlet 未執行。

類型:SwitchParameter
Position:Named
預設值:None
必要:True
接受管線輸入:False
接受萬用字元:False

輸出

Service

此 Cmdlet 會傳回 Service 物件。

備註

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