Configuration Manager (現在のブランチ) に適用
オーケストレーション グループを使用すると、パーセンテージ、特定の数、または明示的な順序に基づいてデバイスを柔軟に更新できます。 デバイスで更新プログラムの展開を実行する前後に PowerShell スクリプトを実行することもできます。
オーケストレーション グループのメンバーは、サーバーだけでなく、任意の Configuration Manager クライアントにすることができます。 オーケストレーション グループのルールは、オーケストレーション グループ メンバーを含むコレクションへのすべてのソフトウェア更新プログラム展開のデバイスに適用されます。 その他の展開動作は引き続き適用されます。 たとえば、メンテナンス期間や展開スケジュールなどです。
オーケストレーション グループの作成
オーケストレーション グループの 前提条件、アクセス許可、制限 事項を確認します。
Configuration Manager コンソールで、[資産とコンプライアンス] ワークスペースに移動し、[オーケストレーション グループ] ノードを選択します。
リボンで、[ オーケストレーション グループの作成] を選択して、 オーケストレーション グループの作成ウィザードを開きます。
[ 全般 ] ページで、オーケストレーション グループに [名前 ] を付け、必要に応じて [説明] を付けます。 次の項目の値を指定します。
- オーケストレーション グループのタイムアウト (分単位): すべてのグループ メンバーが更新プログラムのインストールを完了するための時間制限。
- オーケストレーション グループ メンバーのタイムアウト (分単位): グループ内の単一デバイスで更新プログラムのインストールを完了できる時間制限。
[ メンバーの選択 ] ページで、最初に サイト コードを指定します。 次に 、[追加] を選択し、このオーケストレーション グループのメンバーとしてデバイス リソースを追加します。 デバイスを名前で検索し、[追加] を選択します。 [ コレクションで検索] を使用して、検索を 1 つのコレクションにフィルター処理することもできます。 選択したリソースの一覧へのデバイスの追加が完了したら、[ OK ] を選択します。
- グループのリソースを選択すると、有効なクライアントのみが表示されます。 サイト コード、クライアントがインストールされていること、およびリソースが重複していないことを確認するためにチェックが行われます。
[ ルールの選択 ] ページで、次のいずれかのオプションを選択します。
一定の割合のマシンを同時に更新できるようにしてから、この割合の数値を選択または入力します。 オーケストレーション グループのサイズを将来的に柔軟に調整できるようにするには、この設定を使用します。 たとえば、オーケストレーション グループに 50 個のデバイスが含まれていて、この値を 10 に設定します。 ソフトウェア更新プログラムの展開中、Configuration Manager により 5 台のデバイスで同時に展開を実行できます。 後でオーケストレーション グループのサイズを 100 台のデバイスに増やした場合は、一度に 10 台のデバイスが更新されます。
多数のマシンを同時に更新できるようにしてから、この特定の数の数値を選択または入力します。 この設定を使用すると、オーケストレーション グループの全体的なサイズに関係なく、常に特定の数のデバイスに制限されます。
メンテナンス順序を指定し、選択したリソースを適切な順序で並べ替えます。 この設定を使用して、デバイスでソフトウェア更新プログラムの展開を実行する順序を明示的に定義します。
必要に応じて、[スクリプト ピッカー] ページで、オーケストレーション グループのプレインストール スクリプトとインストール後スクリプトを選択します。
- 事前スクリプト: デプロイが実行 される前に 各デバイスで実行する PowerShell スクリプト。
- [スクリプトの後] ページで、デプロイが実行され、再起動 (必要な場合) が発生した後に各デバイスで実行する PowerShell スクリプトを入力します。 それ以外の動作は PreScript と同じです。
スクリプトは、成功した場合に値
0を返す必要があります。 0 以外の値は、スクリプトの失敗と見なされます。 パラメーターを含むスクリプトは使用できず スクリプトの最大長は 50,000 バイト (Unicode エンコードを使用しているため) 25,000 文字です。 [ スクリプト ピッカー ] ページでスクリプトを追加または変更するときに、次のオプションから選択します。-
追加: 追加するスクリプトを選択できます。 ウィンドウに PowerShell スクリプトを入力または貼り付けるか、次のオプションのいずれかを使用します。
-
開く: 特定の
.ps1ファイルを開く - 参照: [スクリプト] の一覧から既に承認されているスクリプトを選択します。 パラメーターを含むスクリプトは一覧から非表示になります。
- クリア: スクリプト ウィンドウの現在のスクリプトをクリアします
-
開く: 特定の
- 編集: 現在選択しているスクリプトを編集します
- 削除: 現在のスクリプトを削除します
- スクリプト タイムアウト (秒単位): スクリプトがタイムアウトする前に実行される許容時間 (秒)
ウィザードを終了します。
警告
- バージョン 2111 以降、事前スクリプトと事後スクリプトを有効にするには承認 が必要です 。 承認後にスクリプトを編集すると、承認状態は [承認待ち] にリセットされます。 承認されていないスクリプトは、クライアントでは実行されません。
- バージョン 2103 以降では、パラメーターを持つスクリプトはサポートされておらず スクリプトの最大長は 50,000 バイト (Unicode エンコーディングを使用しているため) 25,000 文字です。
- Configuration Manager 2010 以前では、[スクリプト前] ページと [スクリプト後] ページでオーケストレーション グループにスクリプトを追加します。
- 事前スクリプトと事後スクリプトをオーケストレーション グループに使用する前に、必ずテストしてください。 事前スクリプトと事後スクリプトはタイムアウトせず、オーケストレーション グループのメンバーのタイムアウトに達するまで実行されます。 パラメーターを持つスクリプトはサポートされておらず スクリプトの最大長は 5,000 文字です。
オーケストレーション グループ スクリプトの承認
(バージョン 2111 で導入)
バージョン 2111 以降、オーケストレーション グループの事前スクリプトと事後スクリプトを有効にするには承認が必要です。 ファイルからスクリプトを選択したり、独自のスクリプトを作成または変更したりする場合は、別の管理者からのスクリプトの承認が必要です。[ スクリプト] ライブラリから承認済みスクリプトを選択する場合、追加の承認は必要ありません。 既定では、ユーザーは自分が作成したスクリプトを承認できません。 これらの役割により、監視なしでスクリプトを実行することに対する追加のセキュリティ レベルが提供されます。 テストを容易にするために、階層設定を変更することで、環境に対する スクリプトの承認を無効 にすることができます。
スクリプトの承認を支援するために、バージョン 2111 の オーケストレーション グループ の詳細ウィンドウに次の 2 つのタブが追加されました。
- 概要: スクリプトの 承認状態 など、選択したオーケストレーション グループに関する情報が含まれます。
- スクリプト: 各スクリプトのタイムアウト、承認者、承認状態など、事前スクリプトと事後スクリプトに関する情報を一覧表示します。
事前スクリプトと事後スクリプトの承認状態
各スクリプトの承認状態が [スクリプト] タブに表示されます。承認後にスクリプトを編集すると、承認状態がリセットされます。 各スクリプトの 承認状態 は次のとおりです。
-
承認済み: スクリプトは承認されています。 承認は、次のいずれかの方法で付与されます。
- 承認済みの PowerShell スクリプトの一覧からスクリプトを選択する
- リボンまたは右クリック メニューから [ 承認 ] を選択してスクリプトを手動で承認します。
-
承認待ち: スクリプトは承認待ちです。 コード エディターで直接記述または編集されたスクリプト、または
.ps1ファイルからインポートされたスクリプトは、この承認状態で開始されます。 - 拒否: 承認プロセス中にスクリプトが拒否されました。
警告
承認後にスクリプトを編集すると、承認状態は [承認待ち] にリセットされます。 これは、スクリプトが "承認待ち" 状態にある間にグループでオーケストレーションを開始すると、以前に承認されたバージョンのスクリプトが実行されないことも意味します。 承認されていないスクリプトは、クライアントでは実行されません。
ヒント
中断せずにスクリプトを更新する 1 つの方法は、 スクリプト ライブラリ で新しいスクリプトを作成し、承認を得ることです。 次に、 オーケストレーション グループの事前スクリプトまたは事後スクリプトを編集するときに、ライブラリから承認済みスクリプトを選択します。 既に承認済みの新しいスクリプトは、既存のスクリプトにすぐに置き換えられます。
スクリプトを承認するためのアクセス許可
オーケストレーション グループのスクリプトを承認するには、次のいずれかのセキュリティ ロールが必要です。
- 完全な管理者
- 運用管理者
オーケストレーション グループのスクリプトを承認または拒否する
- Configuration Manager コンソールから、[資産とコンプライアンス] ワークスペース >概要>オーケストレーション グループに移動します。
- オーケストレーション グループを選択し、そのグループの [スクリプト] タブ を選択します。
- いずれかのスクリプトを選択し、リボンまたは右クリック メニューから [ 承認/拒否 ] を選択します。
- スクリプトの承認または拒否ウィザードの [スクリプトの詳細] ページでスクリプトを確認します。 スクリプトのレビューが完了したら、[ 次へ ] を選択します。
- ウィザードの [スクリプトの承認 ] ページで、[ 承認 ] または [拒否] を選択します。 必要に応じて、[ スクリプト の詳細] ウィンドウに表示されるコメントを入力します。
- ウィザードを完了して承認プロセスを完了します。
オーケストレーション グループを編集または削除する
オーケストレーション グループを削除するには、そのグループを選択し、リボンまたは右クリック メニューから [削除 ] を選択します。 オーケストレーション グループを編集するには、そのグループを選択し、リボンまたは右クリック メニューから [プロパティ ] を選択します。 次のタブから設定を変更します。
全般:
- 名前: オーケストレーション グループの名前
- 説明: オーケストレーション グループの説明 (オプション)
- オーケストレーション グループのタイムアウト (分単位): すべてのグループ メンバーが更新プログラムのインストールを完了するための時間制限。
- オーケストレーション グループ メンバーのタイムアウト (分単位): グループ内の単一デバイスで更新プログラムのインストールを完了できる時間制限。
メンバーの選択:
- [サイト コード]: オーケストレーション グループのサイト コード。
- メンバー: [追加] を選択して、オーケストレーション グループ用のデバイスをさらに選択します。 [ 削除] を選択して、選択したデバイスを削除します。
ルールの選択:
- 一定の割合のマシンを同時に更新できるようにしてから、この割合の数値を選択または入力します。 オーケストレーション グループのサイズを将来的に柔軟に調整できるようにするには、この設定を使用します。 たとえば、オーケストレーション グループに 50 個のデバイスが含まれていて、この値を 10 に設定します。 ソフトウェア更新プログラムの展開中、Configuration Manager により 5 台のデバイスで同時に展開を実行できます。 後でオーケストレーション グループのサイズを 100 台のデバイスに増やした場合は、一度に 10 台のデバイスが更新されます。
- 多数のマシンを同時に更新できるようにしてから、この特定の数の数値を選択または入力します。 この設定を使用すると、オーケストレーション グループの全体的なサイズに関係なく、常に特定の数のデバイスに制限されます。
- メンテナンス シーケンスを指定します: 選択したリソースを適切な順序に並べ替えます。 この設定を使用して、デバイスでソフトウェア更新プログラムの展開を実行する順序を明示的に定義します。
必要に応じて、オーケストレーション グループの プレインストール スクリプト と インストール後スクリプト を選択します。 スクリプトは、成功した場合に値
0を返す必要があります。 0 以外の値は、スクリプトの失敗と見なされます。 パラメーターを含むスクリプトは使用できず スクリプトの最大長は 50,000 バイトで、25,000 文字 (Unicode エンコードを使用している場合) です。Configuration Manager バージョン 2103 以降の場合は、[スクリプト ピッカー] ページで [インストール前スクリプト] と [インストール後スクリプト] を選択します。 スクリプトを追加または変更するときに、次のオプションから選択します。
-
追加: 追加するスクリプトを選択できます。 ウィンドウに PowerShell スクリプトを入力または貼り付けるか、次のオプションのいずれかを使用します。
-
開く: 特定の
.ps1ファイルを開く - 参照: [スクリプト] の一覧から既に承認されているスクリプトを選択します。 パラメーターを含むスクリプトは一覧から非表示になります。
- クリア: スクリプト ウィンドウの現在のスクリプトをクリアします
-
開く: 特定の
- 編集: 現在選択しているスクリプトを編集します
- 削除: 現在のスクリプトを削除します
- スクリプト タイムアウト (秒単位): スクリプトがタイムアウトする前に実行される許容時間 (秒)
-
追加: 追加するスクリプトを選択できます。 ウィンドウに PowerShell スクリプトを入力または貼り付けるか、次のオプションのいずれかを使用します。
Configuration Manager バージョン 2010 以前の場合、[スクリプト前] タブと [スクリプト後] タブでオーケストレーション グループにスクリプトを追加します。
警告
- バージョン 2111 以降、事前スクリプトと事後スクリプトを有効にするには承認 が必要です 。 承認後にスクリプトを編集すると、承認状態は [承認待ち] にリセットされます。 承認されていないスクリプトは、クライアントでは実行されません。
- バージョン 2103 以降では、パラメーターを持つスクリプトはサポートされておらず スクリプトの最大長は 50,000 バイトで 25,000 文字 (Unicode エンコードを使用している場合) です。
- Configuration Manager 2010 以前では、[スクリプト前] タブと [スクリプト後] タブでオーケストレーション グループにスクリプトを追加します。
- 事前スクリプトと事後スクリプトをオーケストレーション グループに使用する前に、必ずテストしてください。 事前スクリプトと事後スクリプトはタイムアウトせず、オーケストレーション グループのメンバーのタイムアウトに達するまで実行されます。 パラメーターを持つスクリプトはサポートされておらず スクリプトの最大長は 5,000 文字です。
オーケストレーション グループとメンバーを表示する
[ 資産とコンプライアンス ] ワークスペースで、[ オーケストレーション グループ ] ノードを選択します。 メンバーを表示するには、オーケストレーション グループを選択し、リボンの [メンバーの表示] を選択します。 ノードで使用可能な列の詳細については、「 オーケストレーション グループとメンバーの監視」を参照してください。
オーケストレーションを開始する
オーケストレーション グループのメンバーを含むコレクションにソフトウェア更新プログラムを展開します。
オーケストレーションは、グループ内のクライアントが期限またはメンテナンス期間中にソフトウェア更新プログラムをインストールしようとしたときに開始されます。 これはグループ全体に対して開始され、オーケストレーション グループの規則に従ってデバイスが確実に更新されます。
オーケストレーションを手動で開始するには、[ オーケストレーション グループ ] ノードから選択し、リボンまたは右クリック メニューから [ オーケストレーションの開始 ] を選択します。
必要に応じて、メンバーがインストールを直ちに開始し、メンテナンス ウィンドウをバイパスするために、[ 該当するすべてのウィンドウを無視 する] を選択します。
- このオプションは、Configuration Manager バージョン 2103 で導入されました
オーケストレーション グループが 失敗 状態の場合:
- オーケストレーションが失敗した理由を特定し、問題を解決します。
- グループ メンバーのオーケストレーション状態をリセットします。
- オーケストレーション グループ ノードで、[オーケストレーションの開始] ボタンを選択してオーケストレーションを再開します。
ヒント
- オーケストレーション グループは、ソフトウェア更新プログラムの展開にのみ適用されます。 他のデプロイには適用されません。
- オーケストレーション グループ メンバーを右クリックし、[ オーケストレーション グループ メンバーのリセット] を選択できます。 これにより、オーケストレーションを再実行できます。
グループ メンバーのオーケストレーション状態をリセットする
グループ メンバーでオーケストレーションを再実行する場合は、完了や失敗などの状態をクリアできます。 状態をクリアするには、オーケストレーション グループ メンバーを右クリックし、[ オーケストレーション グループ メンバーのリセット] を選択します。 リボンから [オーケストレーション グループ メンバーのリセット] を選択することもできます。 状態をリセットする前に、クライアントをチェックして失敗の理由を確認し、見つかった問題を修正する必要があります。
Windows PowerShell で自動化する
次の PowerShell コマンドレットを使用すると、これらのタスクの一部を自動化できます。
Get-CMOrchestrationGroup: このコマンドレットを使用して、オーケストレーション グループ オブジェクトを名前または ID で取得します。 このオブジェクトを使用して、オーケストレーション グループを開始、削除、または構成できます。
Invoke-CMOrchestrationGroup: オーケストレーションを開始するには、このコマンドレットを使用します。
New-CMOrchestrationGroup: このコマンドレットを使用して、新しいオーケストレーション グループを作成します。
Remove-CMOrchestrationGroup: オーケストレーション グループを削除するには、このコマンドレットを使用します。
Set-CMOrchestrationGroup: オーケストレーション グループを構成するには、このコマンドレットを使用します。