Azure Container Apps動的セッションを使用すると、セキュリティで保護されたサンドボックス環境にすばやくアクセスできます。これは、他のワークロードからの強力な分離を必要とするコードやアプリケーションの実行に最適です。
動的セッションは、ミリ秒単位でコンテナーを開始し、オンデマンドでスケールし、強力な分離を維持する セッション プール を介して、事前温められた環境を提供します。 これにより、対話型ワークロード、LLM で生成されたスクリプトの実行、カスタム コードの安全な実行に最適です。
メリット
セッションでは、次の情報が得られます。
- 安全な分離: Hyper-Vの分離とオプションのネットワーク制御によって環境が保護されます。 セッションは互いに分離され、ホスト環境から分離され、エンタープライズ レベルのセキュリティと分離が提供されます。
- サンドボックス環境: 各セッションは独自の分離された環境で実行され、ワークロードが互いに干渉しないようにします。
- インスタント スタートアップ: 事前ウォーミングされたプールにより、対話型ワークロードの 1 秒未満の起動時間が有効になります。 準備が整っているが割り当てられていないセッションのプールにより、新しいセッションがミリ秒単位で割り当てられます。
- スケーラブルな設計:手動介入なしで数百または数千の同時セッションを処理します。
- マネージド ライフサイクル: セッションは、使用後または構成可能なクールダウン期間後に自動的にプロビジョニング解除され、リソースの効率的な使用が保証されます。
一般的なシナリオ
動的セッションは、次のようなさまざまな状況で役立ちます。
- AI/LLM ワークフロー: 運用システムを危険にさらすことなく、分離された環境で AI によって生成されたコードを安全に実行します。
- 対話型開発: 完全なアプリをプロビジョニングすることなく、スクリプトやプロトタイプをテストするための高速で使い捨て可能な環境を開発者に提供します。
- セキュリティで保護されたコード実行: セキュリティで保護された環境で、信頼されていないコードまたはユーザーが送信したコードを、強力な分離で実行します。
- カスタム コンピューティング タスク: 起動時間が長くなく、カスタム依存関係またはランタイム環境を必要とする有効期間の短いジョブを実行します。
- バースト ワークロード: セッションを自動的にスケールアップおよびスケールダウンすることで、予測できない需要の急増に対処します。
主な概念
セッション プール: セッション プールは、動的セッションの基礎です。 これには、ほぼ瞬時に起動できる、事前に準備されたすぐに使用できるセッションのセットが含まれています。 要求が発生すると、システムはゼロからセッションを作成する代わりにプールからセッションを割り当てます。これにより、待機時間が大幅に短縮されます。
セッション: セッションは、コードまたはコンテナーが実行される実際の実行環境です。 セッションはエフェメラルで分離され、有効期間の短いタスク用に設計されています。 セッションを作成すると、セッション プールから割り当てられ、高速な起動が保証されます。 タスクが完了するか、クールダウン期間が経過すると、セッションが破棄され、リソースがクリーンアップされます。
セッション ライフサイクル: アプリケーションがセッション識別子を持つ要求を送信すると、セッション プールによってセッションが自動的に割り当てられます。 要求が続行される限り、セッションはアクティブなままです。 クールダウン期間がアクティビティなしで期限切れになると、セッションは破棄され、そのリソースは自動的にクリーンアップされます。
要求ルーティングと識別子: セッションは、セッション プール管理エンドポイントを介してアクセスされます。 要求には クエリ パラメーターが含まれており、プールは要求を既存のセッションにルーティングするか、必要に応じて新しいセッションを割り当てます。 管理エンドポイントの後の要求パスがセッション コンテナーに転送されます。
セッション プールの種類
- コード インタープリター セッション プール: これらは、AI によって生成されたスクリプトを含む、コードを実行するための事前構成済み環境を提供するプラットフォーム組み込みコンテナーを使用します。 LLM 駆動型ワークフローや安全なコード実行などのシナリオに最適です。
- カスタム コンテナー セッション プール: 特定の依存関係またはランタイム環境を必要とするカスタム ワークロード用のコンテナー持ち込み。
セッション プールの種類の比較
| コード インタープリター セッション プール | カスタム コンテナー セッション プール | |
|---|---|---|
| 最適な用途 | ランタイム環境を管理せずに、AI によって生成されたコード、ユーザーが送信したスクリプト、または迅速にセキュリティで保護されたコード実行を実行する。 | 組み込みのインタープリターでサポートされていないカスタム ランタイム、ライブラリ、バイナリ、または特殊なツールを必要とするワークロード。 |
| 環境 | 共通のランタイムとツールで事前構成済み。コンテナーのビルドやイメージの発行は必要ありません。 | 独自の依存関係、パッケージ、構成を含む完全にカスタマイズ可能なコンテナー イメージ。 |
| 選択するタイミング | このオプションを選択すると、簡単で高速な起動と最小限のセットアップが可能になります。 | 実行環境を完全に制御する必要がある場合、またはカスタム依存関係に依存する場合は、これを選択します。 |
| 理想的なユース ケース | LLM ワークフロー、コード解釈、教育/サンドボックス シナリオ、ユーザー コードの安全な実行。 | 特定の OS/ライブラリ要件を持つカスタム コンピューティング タスク、独自のインタープリター、特殊な環境、またはワークロード。 |
| 言語とプロトコル | コード インタープリターによって提供される組み込みのランタイムと REST API サーフェスに限定されます。 | 公開することを選択した TCP プロトコルを使用して、コンテナーでサポートされている任意の言語またはスタック。 |
| イメージの要件 | なし— プラットフォームの組み込みインタープリター環境を使用します。 | 必須 - 独自のコンテナー イメージ URI を指定します。 |
詳細については、「使用」を参照してください。
サポートされているリージョン
動的セッションは、次のリージョンで使用できます。 コード インタープリターとカスタム コンテナー セッションの両方が、一覧表示されているすべてのリージョンでサポートされています。
| 南北アメリカ | ヨーロッパ | アジア太平洋 | 中東 & アフリカ |
|---|---|---|---|
| ブラジル南部 | フランス中部 | オーストラリア東部 | 南アフリカ北部 |
| カナダ中部 | フランス南部 | オーストラリア南東部 | アラブ首長国連邦北部 |
| カナダ東部 | ドイツ中西部 | インド中部 | |
| 米国中部 | イタリア北部 | 東アジア | |
| 米国東部 | 北ヨーロッパ | 東日本 | |
| 米国東部 2 | ノルウェー東部 | 西日本 | |
| 米国中北部 | ポーランド中部 | 韓国中部 | |
| 米国中西部 | スペイン中部 | インド南部 | |
| 米国西部 | スウェーデン中部 | 東南アジア | |
| 米国西部 2 | スイス北部 | ||
| 米国西部 3 | スイス西部 | ||
| 英国南部 | |||
| 英国西部 | |||
| 西ヨーロッパ |
注
リージョンの可用性は変更される可能性があります。 現在の可用性を確認するには、Azure ポータルでセッション プールを作成するときに、Location ドロップダウンを確認します。
セキュリティ
動的セッションは、分離された環境で信頼されていないコードを実行するように設計されています。 セッションのセキュリティ保護については、「 セキュリティ」を参照してください。
請求書
カスタム コンテナー セッションは、セッション プールが使用したリソースに基づいて請求されます。 詳細については、Azure Container Apps課金を参照してください。
次のステップ
- セッション プールを構成する方法について説明します
- セキュリティとベスト プラクティスを含む 動的セッションの使用方法について説明します