Azure Container Apps Dynamic Sessions とは
Microsoftは、Azure Container AppsのDynamic Sessions機能にビルトインのMCP(Model Context Protocol)エンドポイントを追加した。これにより、AIエージェントがPython・Node.js・シェルスクリプトなどのコードを、Hyper-V隔離されたサンドボックス環境でミリ秒単位に起動して安全に実行できるようになる。
LLM(大規模言語モデル)がコードを生成し、そのコードを即座に実行して結果を返すパイプラインの構築が、これまで以上に容易になった。
主な特徴
Hyper-V による強固な分離
各セッションはHyper-Vによる仮想化で互いに完全に隔離されており、ホスト環境にも影響を与えない。信頼できないユーザー提出コードや、AIが生成したスクリプトを本番システムのリスクなしに実行できるエンタープライズグレードのセキュリティを備える。
プリウォームによるミリ秒起動
セッションプールと呼ばれる仕組みで、あらかじめウォームアップされた未割り当てセッションを大量に待機させておく。リクエストが来た時点でプールから割り当てるため、コンテナをゼロから起動するコストが不要となり、サブ秒(ミリ秒オーダー)での起動が実現する。
自動スケールと自動クリーンアップ
同時に数百〜数千セッションを手動介入なしにスケール可能。セッションはタスク完了後またはアイドルタイムアウト後に自動で破棄され、リソースが解放される。
想定ユースケース
- AI/LLMワークフロー: ChatGPTやClaude等が生成したコードを本番環境に触れさせることなく検証・実行
- インタラクティブ開発: スクリプトやプロトタイプを使い捨て環境で素早くテスト
- セキュアなコード実行: ユーザー提出の任意コードを隔離環境で安全に処理
- バーストワークロード: 予測困難なアクセス急増に対してセッションを自動スケールで対応
セッションプールの種類
Dynamic Sessionsには2種類のプールが用意されている。
- コードインタープリタープール: Python・Node.js・シェルなどの実行環境がプリインストールされたマネージドコンテナ。LLM駆動のワークフローや安全なコード実行に最適。
- カスタムコンテナープール: 独自の依存関係や実行環境が必要なケース向けに、任意のコンテナイメージを使用できる。
MCPエンドポイントとの統合で広がるAIエージェント活用
今回追加されたMCPエンドポイントにより、Claude・GPT-4・Geminiなどのモデルを組み込んだAIエージェントフレームワークから、Dynamic Sessionsのサンドボックスを標準プロトコルで呼び出せるようになった。「コード生成 → 安全な実行 → 結果のフィードバック」というループをエージェント内で完結できる点が大きな強みだ。
Azureを活用した開発者やエンタープライズシステム担当者にとって、LLMベースのコーティングエージェントや社内自動化ツールへの応用が期待される機能追加といえる。
元記事: Dynamic sessions in Azure Container Apps | Microsoft Learn