SCVMM 2016 UR5 で利用可能なコマンドレット (Update-SCService) について

スポンサーリンク
Surface Pro 4

System Center 2016 – Virtual Machine Manager (SCVMM 2016) に触れる機会が多くなり、Virtual Machine Manager Command Shell を使った設定や、情報取得、および管理することが増えてきたので、備忘録として各コマンドレットの概要を日本語化 (意訳) しました。

ここでは Update-SCService コマンドレットのヘルプ情報について、SCVMM2016 UR5 の Virtual Machine Manager Command Shell 上で「Update-SCService」コマンドレットの -Full オプションを用いて実行した結果を元に記載しています。
※SCVMM 2016 UR5 で利用可能なコマンドレット一覧については、「System Center 2016 – Virtual Machine Manager で利用できるコマンドレットについて」を参照。

Update-SCService コマンドレット

名前

Update-SCService

概要

VMM サービス インスタンスを更新します。

構文

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

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

説明

Update-SCService コマンドレットは、Virtual Machine Manager (VMM) サービス インスタンスを更新します。 使用できるサービスの種類には、従来のサービスと画像ベースのサービスの 2 種類があります。

従来のサービスは、サービスを再展開することなく、展開された仮想マシンの更新を適所に適用します。高速ですが、仮想ハード ディスクの変更、ネットワーク アダプターの削除、もしくは OS の設定変更はできません (Windows Server の役割と機能を除く)。

画像ベースのサービスは、更新されたサービスに新しい仮想マシンを展開します。この種類のサービスは、プログラム ディスクにソフトウェア更新を適用するなど、層の VHD を更新した後で最も頻繁に使用されます。

パラメーター

-JobVariable <String>

ジョブの進行状況を追跡し、このパラメーターで指定された変数に格納する場合に指定します。

必須false
位置named
既定値None
パイプライン入力を許可するFalse
ワイルドカード文字を許可するfalse

-OnBehalfOfUser <String>

ユーザー名を指定します。このコマンドレットは、このパラメーターが指定するユーザーの代わりに操作します。

必須false
位置named
既定値None
パイプライン入力を許可するFalse
ワイルドカード文字を許可するfalse

-OnBehalfOfUserRole <UserRole>

ユーザー ロールを指定します。ユーザー ロールを取得するには、Get-SCUserRole コマンドレットを用います。このコマンドレットは、このパラメーターで指定するユーザー ロールの代わりに操作します。

必須false
位置named
既定値None
パイプライン入力を許可するFalse
ワイルドカード文字を許可するfalse

-PROTipID <Guid>

このアクションにトリガーされるパフォーマンスとリソースの最適化のヒント (PRO ヒント) を指定します。このパラメーターは、PRO ヒントを監査することができます。

必須false
位置named
既定値None
パイプライン入力を許可するFalse
ワイルドカード文字を許可するfalse

-RunAsynchronously [<SwitchParameter>]

ジョブが非同期で実行、制御がすぐにコマンド シェルに戻されるかどうかを指定します。

必須false
位置named
既定値None
パイプライン入力を許可するFalse
ワイルドカード文字を許可するfalse

-Service <Service>

VMM サービス オブジェクトを指定します。

必須true
位置0
既定値None
パイプライン入力を許可するTrue (ByValue)
ワイルドカード文字を許可するfalse

-ShowActions [<SwitchParameter>]

実行されるすべてのサービスとオーケストレーションのアクションを表示します。このパラメーターはデバッグに役立ちます。

必須false
位置named
既定値None
パイプライン入力を許可するFalse
ワイルドカード文字を許可するfalse

-VMMServer <ServerConnection>

VMM サーバー オブジェクトを取得します。

必須false
位置named
既定値None
パイプライン入力を許可するTrue (ByValue)
ワイルドカード文字を許可するfalse

-WhatIf [<SwitchParameter>]

コマンドレットを実行する場合の挙動について表示します。コマンドレットは、実際には実行されません。

必須false
位置named
既定値False
パイプライン入力を許可するFalse
ワイルドカード文字を許可するfalse

<CommonParameters>

このコマンドレットは、次の共通パラメーターをサポートします: Verbose、Debug、ErrorAction、ErrorVariable、WarningAction、WarningVariable、OutBuffer, PipelineVariable、および OutVariable。詳細については、about_CommonParameters を参照してください。

入力

出力

  • Service
    • このコマンドレットは、Service オブジェクトを返します。

メモ

Get-SCService コマンドレットを用いて取得可能な VMM サービス オブジェクトが必要となります。

例 1 : 従来のサービスを用いてサービスを更新する

コマンド
$Service = Get-SCService -Name "Service01"
$SvcTemplate = Get-SCServiceTemplate -Name "ServiceTemplate01"
$PendingTemplate = New-SCServiceTemplate -ServiceTemplate $SvcTemplate -Name "ServiceTemplate01" -Release "RTM"
Set-SCService -Service $Service -PendingServiceTemplate $PendingTemplate
Update-SCService -Service $Service
コマンドの説明

最初のコマンドは、展開されたサービスであるサービス オブジェクト “Service01” を取得し、そのオブジェクトを $Service 変数に格納します。

2 番目のコマンドは、サービス テンプレート オブジェクト “ServiceTemplate01” を取得し、そのオブジェクトを $SvcTemplate 変数に格納します。

3 番目のコマンドは、$SvcTemplate に格納されているサービス テンプレートの RTM リリースを作成します。

4 番目のコマンドは、サービス インスタンスの保留中のテンプレートを $PendingTemplate に格納されている更新済みサービス テンプレートに設定します。

最後のコマンドは、Service01 を更新します。

例 2 : 画像ベースのサービスを用いてサービスを更新する

コマンド
$Service = Get-SCService -Name "Service02"
$SvcTemplate = Get-SCServiceTemplate -Name "ServiceTemplate02"
$PendingTemplate = New-SCServiceTemplate -ServiceTemplate $SvcTemplate -Name "ServiceTemplate02" -Release "RTM"
$WebTier = Get-SCComputerTierTemplate -ServiceTemplate $PendingTemplate -Name "Web Tier"
$WebTemplate = Get-SCVMTemplate -ComputerTierTemplate $WebTier | Set-SCVMTemplate -MemoryMB 2048
$BaseDisk2 = Get-SCVirtualHardDisk -Name "Win2k8R2BaseDisk_Patched.vhd"
$VHD = Get-SCVirtualDiskDrive -VMTemplate $WebTemplate 
Remove-SCVirtualDiskDrive -VirtualDiskDrive $VHD
New-SCVirtualDiskDrive -VirtualHardDisk $BaseDisk2 -VMTemplate $WebTemplate -BootVolume -SystemVolume -Bus 0 -LUN 0 -IDE -VolumeType BootAndSystem
Set-SCService -Service $Service -PendingServiceTemplate $PendingTemplate 
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” を取得し、そのオブジェクトを $BaseDisk2 変数に格納します。 この仮想ハード ディスクには、OS の更新版が含まれています。

7 番目のコマンドは、$WebTemplate に格納されている仮想マシン テンプレート上の仮想ディスク ドライブ オブジェクトを取得し、そのオブジェクトを $VHD 変数に格納します。

8 番目のコマンドは、$VHD に格納されている仮想ディスク ドライブ オブジェクトを削除します。

9 番目のコマンドは、$BaseDisk2 に格納されている仮想ハード ディスク オブジェクトを $WebTemplate に格納されている仮想マシン テンプレート オブジェクトに追加します。

10 番目のコマンドは、サービス インスタンスの保留中のテンプレートを、$PendingTemplate に格納されている更新済みのサービス テンプレートに設定します。

最後のコマンドは、Service02 を更新します。

関連するリンク

  • Get-SCService
  • New-SCService
  • Read-SCService
  • Remove-SCService
  • Resume-SCService
  • Set-SCService
  • Start-SCService
  • Stop-SCService
  • Suspend-SCService

参考