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>]
説明
Update-SCService コマンドレットは、Virtual Machine Manager (VMM) サービスのインスタンスを更新します。 使用できるサービスの種類は、従来のサービスとイメージ ベースのサービスの 2 つです。
従来のサービスでは、サービスを再デプロイすることなく、デプロイされた仮想マシンに更新プログラムが適用されます。 高速ですが、仮想ハード ディスクの変更、ネットワーク アダプターの削除、オペレーティング システムの設定の変更 (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変数にオブジェクトを格納します。
2 番目のコマンドは、ServiceTemplate01 という名前のサービス テンプレート オブジェクトを取得し、$SvcTemplate変数にオブジェクトを格納します。
3 番目のコマンドは、$SvcTemplateに格納されているサービス テンプレートの RTM リリースを作成します。
5 番目のコマンドは、サービス インスタンスの保留中のテンプレートを、$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変数にオブジェクトを格納します。
2 番目のコマンドは、ServiceTemplate02 という名前のサービス テンプレート オブジェクトを取得し、そのオブジェクトを $SvcTemplate 変数に格納します。
3 番目のコマンドは、$SvcTemplateに格納されているサービス テンプレートの新しいリリースを作成し、ServiceTemplate02 という名前を付け、RTM のリリースを提供し、テンプレートを$PendingTemplateに格納します。
4 番目のコマンドは、$PendingTemplateに格納されているサービス テンプレートの Web Tier という名前のコンピューター層オブジェクトを取得し、$WebTier変数にオブジェクトを格納します。
5 番目のコマンドは、$WebTierに格納されているコンピューター層の仮想マシン テンプレートにメモリを追加します。
6 番目のコマンドは、Win2k8R2BaseDisk_Patched.vhd という名前の仮想ハード ディスク オブジェクトを取得し、$BaseDisk 2 変数にオブジェクトを格納します。 この仮想ハード ディスクには、オペレーティング システムの更新バージョンが含まれています。
7 番目のコマンドは、$WebTemplateに格納されている仮想マシン テンプレート上の仮想ディスク ドライブ オブジェクトを取得し、そのオブジェクトを $VHD 変数に格納します。
8 番目のコマンドは、$VHDに格納されている仮想ディスク ドライブ オブジェクトを削除します。
9 番目のコマンドは、$BaseDisk 2 に格納されている仮想ハード ディスク オブジェクトを、$WebTemplateに格納されている仮想マシン テンプレート オブジェクトに追加します。
10 番目のコマンドは、サービス インスタンスの保留中のテンプレートを、$PendingTemplateに格納されている更新されたサービス テンプレートに設定します。
最後のコマンドは Service02 を更新します。
パラメーター
-JobVariable
ジョブの進行状況を追跡して、このパラメーターで示す名前の変数に保管するように指定します。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-OnBehalfOfUser
ユーザー名を指定します。 このコマンドレットは、このパラメーターで指定されたユーザーに代わって動作します。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-OnBehalfOfUserRole
ユーザー ロールを指定します。 ユーザー ロールを取得するには、 Get-SCUserRole コマンドレットを 使用します。 このコマンドレットは、このパラメーターが指定するユーザー ロールに代わって動作します。
Type: | UserRole |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PROTipID
このアクションをトリガーしたパフォーマンスとリソースの最適化のヒント (PRO ヒント) の ID を指定します。 このパラメーターを使用すると、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
コマンドレットの実行時に発生する内容を示します。 このコマンドレットは実行されません。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
出力
Service
このコマンドレットは 、Service オブジェクトを返します。
メモ
- Get-SCService コマンドレットを使用して取得できる VMM サービス オブジェクトが必要です。