Digital Appendix
『AIエージェントが見つけたサーバーレス』のデジタル付録
四社のエージェントサンドボックス
四社のエージェントサンドボックス
対象本文
序章、第4章、第5章で扱うAWS Lambda MicroVMs、GKE Agent Sandbox、Azure Container Apps dynamic sessions、Cloudflare Sandboxesの比較です。製品推薦ではなく、収斂する方向と設計思想による実行モデルの違いを読むための表です。
収集方法
2026年7月10日にA-22〜A-25の検証を現行一次資料へ再照合しました。比較軸は、論理単位、隔離、作成、非活動時、再接続、保持状態、network、課金境界です。ベンチマーク値は同条件でないため横並びにしません。
現在の答え
四社が収斂する方向は明確です。機械が生成したコードを、利用者やsessionごとのOSに近い環境へ閉じ込め、その割当と生涯をAPIで管理する方向です。FaaSで磨かれた高速な割当、作り捨て、利用者からの基盤隠蔽が、対話的で状態を持つ仕事へ拡張されています。
| 観点 | AWS Lambda MicroVMs | GKE Agent Sandbox | Azure Container Apps dynamic sessions | Cloudflare Sandboxes |
|---|---|---|---|---|
| 論理単位 | MicroVM | AgentSandboxとClaim | session poolから割り当てるsession | Sandbox IDに結び付くDurable Object |
| 主な隔離 | Firecracker microVM | gVisorによるkernel isolation | Hyper-V isolation | Cloudflare Containers上のcontainer |
| 作成 | 初期化済みsnapshotからMicroVMを起動 | CRDで環境を宣言し、Claimで取得 | 準備済みpoolからsessionを割当 | IDへの最初の操作でcontainerを起動 |
| 非活動時 | policyまたはAPIでsuspend可能 | warm poolやPod Snapshotを構成として選ぶ | cooldown後にsessionを破棄し、資源をpoolへ戻す | idle timeout後にcontainerを停止 |
| 次回 | 同じMicroVMのmemory/diskをresume可能 | 同一claim、snapshot復元、再作成を要件に応じて構成 | 新しいsessionをpoolから再割当。破棄済み環境のresumeではない | fresh container。前のlocal filesystem/process stateは戻らない |
| network | 専用HTTPS+JWE、public/VPC egress connector | stable identity、default-denyを含むKubernetes network policy | poolのnetwork設定とsession endpoint | Sandbox SDKとcontainer network policy。論理IDはDurable Object側 |
| 課金の読み方 | running baseline/超過、suspend snapshot項目 | GKE/Autopilot clusterと周辺資源の提供条件 | pool管理とsession利用の提供条件 | containerのactive useと関連サービスの提供条件 |
設計思想の差は「何を再利用するか」に出ています。AWSは環境そのものの休止・再開を資源モデルにします。GoogleはKubernetesの宣言、claim、snapshot、warm poolという部品を組み合わせます。Microsoftは準備済みpoolの経済を前面に出し、使用後の環境は破棄します。Cloudflareは論理IDをDurable Objectへ残しながら、containerのlocal stateは使い捨てます。
この差は優劣ではありません。必要なのがmemoryまで含む続きからの再開か、毎回清潔な環境か、Kubernetesの統制面との統合か、edge上の論理IDかで適合が変わります。比較するときは「sandboxがある」で止めず、七軸のライフサイクル比較表へ分解します。
一次資料
- AWS Lambda MicroVMs: https://docs.aws.amazon.com/lambda/latest/dg/lambda-microvms-guide.html
- GKE Agent Sandbox: https://docs.cloud.google.com/kubernetes-engine/docs/concepts/machine-learning/agent-sandbox
- GKE Pod Snapshots: https://docs.cloud.google.com/kubernetes-engine/docs/concepts/pod-snapshots
- Azure Container Apps dynamic sessions: https://learn.microsoft.com/en-us/azure/container-apps/sessions
- Cloudflare Sandbox lifecycle: https://developers.cloudflare.com/sandbox/concepts/sandboxes/
記入用の雛形——ライフサイクル比較表(空欄版)
書籍第5章5.4の比較表を自分の候補で作るための空欄版です。候補ごとに複製して使います。「不明」は埋めず、検証項目として残してください。
候補:
検証日:
軸 要件 候補の挙動 根拠の種類 証拠
隔離対象と信頼境界: [契約/ベストエフォート/利用者実装]
割り当て時の起動待ち:
アイドル時の状態遷移:
再接続時に同じ環境が戻る保証:
保持されるメモリ・ディスク・外部状態:
ネットワークの入口・出口制御:
課金の開始・停止・保持・復元:
譲れない軸:
障害注入・再接続試験:
退出時に持ち出す設定と状態:
既知の未知
- 提供リージョン、容量、単価、idle既定値、GA状態は変更されます。
- GKEのPod SnapshotはAgent Sandboxそのものの自動保証ではなく、組み合わせる別機能です。
- Azureのpool再割当とCloudflareのfresh containerを、AWSの同一環境resumeと同義にしません。
- 隔離方式の名称だけではtenant threat model、side channel、運用者権限を比較できません。
変更履歴
- 0.10.0 (2026-07-28): 書籍のJIS B5・本文112ページ対応にともない、第5章5.4の記入用雛形(空欄版)を本文から移設。
- 0.9.0 (2026-07-10): 四社を同じ休止再開モデルへ丸めず、共通方向と四つの実行モデルを対で示す初版ドラフトを作成。