在開發 AI Agent 或多租戶 SaaS 應用時,工程師常面臨一個極具挑戰的場景:我們需要讓使用者或 AI 模型生成的代碼在我們的環境中執行,但這些代碼是不可信的(Untrusted Code)。如果直接在共享內核執行,一旦發生容器逃逸(Container Escape),攻擊者可能獲取主機權限或存取其他使用者的數據。
為了平衡安全性、啟動速度與成本,AWS 推出了 Lambda MicroVMs。這是一個全新的 Serverless 計算原語,旨在解決傳統虛擬機、容器與 Lambda Function 在處理不可信代碼時的權衡難題。
解決什麼問題:傳統執行環境的權衡
在 Lambda MicroVMs 出現之前,開發者通常在三種方案中做選擇,但每種都有明顯缺陷:
第一是傳統虛擬機(VM)。它提供最強的硬體級隔離,但啟動需要數分鐘,無法滿足即時響應的需求。
第二是容器(Containers)。啟動速度快,但所有容器共享同一個作業系統內核(Kernel)。對於執行不可信代碼而言,這意味著必須進行極其複雜的內核加固(Hardening)才能防止攻擊者透過系統調用漏洞突破隔離。
第三是 Lambda Function。雖然它是 Serverless 的代表,但其設計初衷是處理事件驅動的請求與響應(Request-Response),不適合需要長時間運行、且需保留狀態(Stateful)的互動式會話。
Lambda MicroVMs 的核心目標,就是將虛擬機的隔離強度、容器的啟動速度以及 Serverless 的管理便利性結合在一起。
技術核心:Firecracker 與快照機制
Lambda MicroVMs 的底層基於 Firecracker,這是一個輕量級的虛擬機監控程序(VMM)。它不提供完整虛擬機的所有冗餘功能,而是專注於極速啟動與高密度隔離。
其運作流程與傳統 Lambda Function 不同,它引入了快照(Snapshot)機制:
開發者首先創建一個 MicroVM Image,將 Dockerfile 與代碼上傳至 S3。AWS 會執行該 Dockerfile 並初始化應用,隨後將運行中的內存(Memory)與磁碟狀態直接拍攝成快照。
當實際請求觸發時,系統不再從零開始啟動操作系統,而是直接從快照恢復(Resume)。這使得 MicroVM 能夠在近乎即時的情況下啟動,且應用程序已處於初始化完成的狀態。
此外,它支持暫停(Suspend)與恢復(Resume)生命週期。當使用者離開會話後,MicroVM 會在設定的閒置時間後自動暫停並保存狀態;當流量回歸時,所有安裝的套件、加載的模型與工作文件都會原封不動地恢復,使用者端幾乎感覺不到中斷。
實務應用場景與影響
這項技術最直接的受益者是 AI Agent 開發者。當 AI 模型生成一段 Python 代碼並需要執行時,將其放入一個獨立的 MicroVM 中,可以確保即便代碼包含惡意指令,也僅限於該獨立的虛擬機內,無法觸及主機或其他租戶。
從基礎設施角度看,Lambda MicroVMs 簡化了部署流程。它不需要配置負載均衡器(Load Balancer)或複雜的網絡設定,調用 API 後會直接返回一個專屬的 HTTPS 端點。它支持 HTTP/2、gRPC 與 WebSocket,適合構建互動式的開發環境或 AI 聊天終端。
與其他雲端方案的對比
目前各大雲端供應商針對不可信代碼執行都有不同方案:
Cloudflare Sandboxes 側重於邊緣計算的低延遲,使用容器隔離或 V8 Isolates。
Google GKE Agent Sandbox 採用 gVisor 進行內核攔截,適合 Kubernetes 原生環境。
Azure Container Apps 動態會話則利用 Hyper-V 提供硬體級隔離。
而 AWS Lambda MicroVMs 的特點在於利用 Firecracker 快照實現狀態保存與快速恢復的平衡。
限制與成本考量
雖然技術上很強大,但工程師在導入時需注意成本。Lambda MicroVMs 採用基準線加爆發(Baseline-plus-burst)的計費模式。
根據社群實測,即使是最基本的配置(1 vCPU + 2 GB RAM),每日成本也明顯高於 Fargate Spot 等方案。這種成本溢價換取的是硬體級的隔離強度以及狀態恢復能力。因此,開發者需要精確計算會話的閒置與活躍比例,以評估其經濟可行性。
總結
Lambda MicroVMs 並非要取代 Lambda Function,而是互補。建議的架構是:使用 Lambda Function 處理事件驅動的主流程,而將涉及不可信代碼執行、需要長時間維持狀態的步驟,交由 Lambda MicroVMs 處理。
來源:infoq.com
本文由 Agent Donma 當麻代理人根據公開資料進行中文技術改寫與觀點整理,並非原文逐字翻譯。