次の方法で共有


Service Management Automation を使用して Microsoft Azure Pack 操作を自動化する

Service Management Automation (SMA) Runbook を使用して、Microsoft Azure Pack for Windows Server 環境での日常的な操作を自動化できます。 SMA Runbook には、次の 2 種類があります。

説明
PowerShell ワークフロー Windows PowerShell ワークフローに基づくテキスト Runbook です。
PowerShell Windows PowerShell スクリプトに基づくテキスト Runbook です。

PowerShell ワークフロー Runbook

PowerShell ワークフロー Runbook は、Windows PowerShell ワークフローに基づいています。 管理ポータルのエディターを使用して、Runbook のコードを直接編集できます。 また、任意のオフライン テキスト エディターを使用して、Runbook を SMA にインポートすることもできます。

長所

  • PowerShell ワークフロー コードを使用して、すべての複雑なロジックを実装します。
  • エラーが発生した場合、 チェックポイント を使用して Runbook を再開できます。
  • 並列処理 を使用して複数のアクションを並列に実行できます。
  • その他の PowerShell ワークフロー Runbook を子 Runbook として含め、高度なワークフローを作成します。

制限事項

  • PowerShell ワークフローについて理解している必要があります。
  • Runbook では、逆シリアル化されたオブジェクトなど、PowerShell ワークフローの追加の複雑さに対処する必要があります。
  • グラフィカル Runbook は、実行する前にコンパイルする必要があるため、PowerShell Runbook より開始に時間がかかります。
  • PowerShell Runbook は、新しいジョブを作成する Start-SMARunbook コマンドレットを使用して子 Runbook としてのみ含めることができます。

PowerShell Runbook

PowerShell Runbook は、Windows PowerShell に基づきます。 管理ポータルのエディターを使用して、Runbook のコードを直接編集できます。 また、任意のオフライン テキスト エディターを使用して、Runbook を SMA にインポートすることもできます。

長所

  • PowerShell ワークフローの複雑さを増すことなく、PowerShell コードを使用してすべての複雑なロジックを実装します。
  • 実行前にコンパイルする必要がないため、PowerShell ワークフロー Runbook より開始に時間がかかりません。

制限事項

  • PowerShell スクリプトについて理解している必要があります。
  • パラメーター処理を使用して複数のアクションを並列で実行することはできません。
  • checkpoints を使用して、エラーが発生したときに Runbook を再開することはできません。
  • PowerShell Workflow Runbook は、新しいジョブを作成する Start-SMARunbook コマンドレットを使用して子 Runbook としてのみ含めることができます。

SMA が Runbook を実行する方法

Runbook を開始する要求は、サービス管理ポータルまたは windows PowerShell コマンドレット Start-SmaRunbook を使用して SMA Web サービスによって実行されます。 Web サービスは、この要求を Automation データベースに書き込みます。この要求は、Automation Worker サーバーのいずれかによって取得されます。

Runbook の RunbookWorker プロパティが設定されている場合、その Worker サーバーはジョブをサービスします。 ワーカー サーバーが使用できない場合、ジョブはエラーで失敗します。 Runbook の RunbookWorker プロパティが設定されていない場合、SMA は要求に対応するために使用可能な Worker サーバーをランダムに選択します。

Worker サーバーは、要求を処理する Worker サーバー上で実行されるジョブを作成し、操作するコンピューターまたはその他のリソースにリモートでアクセスします。 これらのリソースをリモートでアクセスできるようにするには、Runbook のコマンドレットが必要です。 代わりに、Runbook には PowerShell Remoting を使用してターゲット コンピューターにコマンドをローカルで実行するため、InlineScript コマンドを含めることができます。 次の図で説明しています。

Runbook の実行図。

ジョブが一時停止または中断された場合、別の Worker サーバーで再開する可能性があります。 このため、ローカル コンピューター上のファイルなど、すべての Worker サーバーからアクセスできないローカル リソースの使用には注意する必要があります。 Variables などGlobal Assets checkpoints間で情報を共有するには、できるだけ使用する必要があります。

アクセス許可

Runbook で必要な操作を実行するためには、対象となるリソースへのアクセス許可が必要です。 SMA の Runbook は、Automation Runbook サービスのサービス アカウントのコンテキストで常に実行されます。 このアカウントに必要なアクセス許可がない場合は、Runbook で Credentials または Connection グローバル リソースを使用して、必要なアクセス許可を持つ資格情報を使用して必要なコマンドを実行できます。 これらの資格情報は、パラメーターを通じて資格情報指定できるコマンドレットか、別の資格情報を使ってコード ブロックを実行する InlineScript のいずれかで使用できます。

次のステップ