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 層という名前のコンピューター層オブジェクトを取得し、そのオブジェクトを $WebTier 変数に格納します。
5 番目のコマンドは、$WebTierに格納されているコンピューター層の仮想マシン テンプレートにメモリを追加します。
6 番目のコマンドは、Win2k8R2BaseDisk_Patched.vhd という名前の仮想ハード ディスク オブジェクトを取得し、$BaseDisk 2 変数にオブジェクトを格納します。 この仮想ハード ディスクには、オペレーティング システムの更新バージョンが含まれています。
7 番目のコマンドは、$WebTemplateに格納されている仮想マシン テンプレート上の仮想ディスク ドライブ オブジェクトを取得し、そのオブジェクトを $VHD 変数に格納します。
8 番目のコマンドは、$VHDに格納されている仮想ディスク ドライブ オブジェクトを削除します。
9 番目のコマンドは、$BaseDisk 2 に格納されている仮想ハード ディスク オブジェクトを、$WebTemplateに格納されている仮想マシン テンプレート オブジェクトに追加します。
10 番目のコマンドは、サービス インスタンスの保留中のテンプレートを、$PendingTemplateに格納されている更新されたサービス テンプレートに設定します。
最後のコマンドは Service02 を更新します。
パラメーター
-JobVariable
ジョブの進行状況を追跡し、このパラメーターによって指定された変数に格納することを指定します。
型: | String |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-OnBehalfOfUser
ユーザー名を指定します。 このコマンドレットは、このパラメーターが指定したユーザーに代わって動作します。
型: | String |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-OnBehalfOfUserRole
ユーザー ロールを指定します。 ユーザー ロールを取得するには、Get-SCUserRole コマンドレットを使用します。 このコマンドレットは、このパラメーターが指定するユーザー ロールに代わって動作します。
型: | UserRole |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-PROTipID
このアクションをトリガーしたパフォーマンスとリソースの最適化のヒント (PRO ヒント) の ID を指定します。 このパラメーターを使用すると、PRO のヒントを監査できます。
型: | Guid |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-RunAsynchronously
コントロールがコマンド シェルにすぐに戻るように、ジョブが非同期的に実行されることを示します。
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Service
VMM サービス オブジェクトを指定します。
型: | Service |
配置: | 0 |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
-ShowActions
実行されるすべてのサービスおよびオーケストレーション アクションを表示します。 このパラメーターは、デバッグに役立ちます。
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-VMMServer
VMM サーバー オブジェクトを指定します。
型: | ServerConnection |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
-WhatIf
コマンドレットを実行した場合の動作を示します。 コマンドレットは実行されません。
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
出力
Service
このコマンドレットは、Service オブジェクトを返します。
メモ
- Get-SCService コマンドレットを使用して取得できる VMM サービス オブジェクトが必要です。