Share via


Azure Automation のランタイム環境 (プレビュー)

この記事では、ランタイム環境、範囲、その機能の概要について説明します。

ランタイム環境について

ランタイム環境では、ジョブの実行環境を構成でき、要件に応じてランタイム言語とランタイム バージョンを柔軟に選択できます。 これは、ジョブが実行される環境を定義および管理するための信頼できる唯一の情報源です。 Runbook には、次の 2 つのコンポーネントがあります。

  • スクリプト コード:
  • ランタイム環境 - ジョブ実行時に必要なランタイム言語、ランタイム バージョン、パッケージを定義します。

他のコンポーネントに影響を与えることなく、これらのコンポーネントを別々に変更できます。

Note

各ランブックは 1 つのランタイム環境に関連付けることができます。 ただし、1 つのランタイム環境を複数のランブックにリンクすることができます。

ランタイム環境のコンポーネント

ランタイム環境は、ジョブの実行環境に関する次の詳細をキャプチャします。

  • 言語 - ランブックの実行対象になるスクリプト言語。 たとえば、PowerShell や Python などがあります。

  • ランタイム バージョン - Runbook の実行用に選択された言語のバージョン。 たとえば、PowerShell 7.2 や Python 3.8 などがあります。

  • パッケージ - パッケージは、インポートするアセンブリと .dll ファイルであり、Runbook で実行するために必要です。 ランタイム環境でサポートされているパッケージは 2 種類あります。

    パッケージの種類 説明
    既定のパッケージ パッケージを使用すると、Azure リソースを管理できます。 たとえば、Az PowerShell 8.0.0 や Azure CLI 2.56.0 などがあります
    カスタマー指定のパッケージ これらは、Runbook の実行中に必要なカスタム パッケージです。 パッケージは次から選択できます:
    - 公開ギャラリー:PSGallery、pypi
    - 自作。

Note

Azure CLI コマンドは、PowerShell 7.2 ランタイム環境に関連する Runbook でサポートされています (パブリック プレビュー)。 Azure CLI コマンド バージョン 2.56.0 は、PowerShell 7.2 ランタイム環境の既定のパッケージとして利用可能です。

ランタイム環境における Azure CLI パッケージ

Azure CLI コマンドは、PowerShell 7.2 ランタイム環境に関連する Runbook でサポートされています (パブリック プレビュー)。 Azure CLI バージョン 2.56.0 は、PowerShell 7.2 ランタイム環境の既定のパッケージとして利用可能です。 Azure Automation は、Azure CLI の新バージョンのリリース周期に密接に従い、Runbook でサポートします。

PowerShell 7.2 ランタイム環境にリンクされた Runbook は、Azure Automation でサポートされる最新の Azure CLI バージョンで常に実行されます。 同様に、親製品である Azure CLI がサポート終了を宣言したバージョンは、バグやセキュリティ脆弱性の可能性があるため、Azure Automation ではサポートされなくなります。 Runbook が新しいバージョンの Azure CLI でシームレスに実行できるように設計されていることを確認してください。

システム生成ランタイム環境

Azure Automation は、Azure Automation アカウントに存在するランタイム言語、バージョン、パッケージ/モジュールに基づいて、システム生成ランタイム環境を作成します。 システム生成ランタイム環境には、次の 6 つがあります。

  • PowerShell-5.1
  • PowerShell-7.1
  • PowerShell-7.2
  • Python-2.7
  • Python-3.8
  • Python-3.10

これらのランタイム環境は編集できません。 ただし、Automation アカウントのモジュール/パッケージで行われた変更は、これらのシステム生成ランタイム環境に自動的に反映されます。

システムによって生成されたランタイム環境を示すスクリーンショット。

Note

システム生成ランタイム環境に存在するパッケージは、Azure Automation アカウントに固有であり、異なるアカウント間では違いがある場合があります。

主な利点

  • 詳細な制御 - ランタイム言語、そのバージョン、依存モジュールを選択してスクリプト実行環境を構成できます。
  • Runbook の更新 - PowerShell と Python の最新リリースに合わせて Runbook のランタイム環境を更新することで、異なるランタイム バージョン間で Runbook を簡単に移植できるようになります。 運用環境に公開する前に、更新をテストできます。
  • モジュール管理 - モジュールの更新中に互換性をテストし、運用シナリオの実行に影響を与える可能性のある予期しない変更を回避できます。
  • ロールバック機能 - Runbook を以前のランタイム環境に簡単に戻すことができます。 Runbook の更新によって問題や予期せぬ動作が発生した場合。
  • 効率化されたコード - 複数の Automation アカウントを作成する必要なく、Runbook を異なるランタイム環境にリンクすることで、コードを簡単に整理できます。

制限事項

  • 現在、ランタイム環境は、インド中部、ドイツ北部、イタリア北部、イスラエル中部、ポーランド中部、アラブ首長国連邦中部、ガバメント クラウドを除くすべてのパブリック リージョンでサポートされています。
  • 以前のエクスペリエンスからランタイム環境のエクスペリエンスに自動的に移行された既存の Runbook は、クラウドとハイブリッドの両方のジョブとして実行できます。
  • PowerShell ワークフロー、グラフィカル PowerShell、グラフィカル PowerShell ワークフロー Runbook は、システム生成された PowerShell-5.1 ランタイム環境でのみ動作します。
  • ランタイム バージョン PowerShell 7.2 のランタイム環境エクスペリエンスで作成された Runbook は、以前のエクスペリエンスでは PowerShell 5.1 Runbook として表示されます。
  • ランタイム環境に RBAC アクセス許可を割り当てることはできません。
  • ランタイム環境は、Visual Studio Code の Azure Automation 拡張機能を通じて構成することはできません。
  • 削除されたランタイム環境は復旧できません。
  • この機能は、Azure portal と REST API を通じてのみサポートされます。

新旧のエクスペリエンスを切り替える

新しいランタイム環境エクスペリエンスをお勧めしますが、いつでも既定のエクスペリエンスに切り替えることもできます。 2 つのエクスペリエンスを切り替える方法については、こちらを参照してください。

Note

Runbook の更新は、新旧のランタイム環境エクスペリエンス間で保持されます。 Runbook にリンクされたランタイム環境で行われた変更は、以前のエクスペリエンスで Runbook の実行中に保持されます。

次のステップ