View a markdown version of this page

AWS Lambda MicroVMs - AWS Lambda

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

AWS Lambda MicroVMs

如果您正在建置應用程式,其中多個使用者或 AI 代理器連接到運算環境並執行程式碼 (例如互動式開發環境、CI/CD 系統或 AI 沙盒) – 您需要快速啟動的運算環境、在租用戶之間保持隔離,而且不需要管理伺服器或聯網。

AWS Lambda MicroVMs專為這些使用案例而打造。它們是無伺服器運算環境,可提供具有完整作業系統功能的 VM 層級隔離 (例如安裝系統套件或掛載檔案系統)、以快照為基礎的快速啟動速度,以及對輸入聯網 (連接埠存取、支援 HTTP/2、gRPC、WebSockets) 和輸出聯網 (公有網際網路存取和 VPC 存取) 的精細控制。

對於互動式使用案例,例如互動式開發環境和 AI 沙盒,當最終使用者的內容切換到其他任務或等待 AI 時,環境可能會經歷長時間的閒置。閒置時可暫停 MicroVMs,同時保留記憶體和磁碟狀態,同時降低成本。當流量到達時,它們會恢復。您可以啟用自動或程式設計暫停-恢復,以降低閒置成本,同時在最終使用者返回時保持近乎即時的準備。

AWS Lambda MicroVMs Firecracker 虛擬化提供這些核心功能,為 Lambda Functions 每月超過 15 兆次的調用提供支援。

若要開始使用,請參閱建立您的第一個 MicroVM。如需定價資訊,請參閱 AWS Lambda 定價

Lambda MicroVMs的運作方式

  1. 您可以將應用程式碼和 封裝Dockerfile為 zip 封存檔,並將其上傳至 Amazon S3。

  2. 您可以呼叫 Lambda API 來建立 MicroVM 映像。Lambda 會執行您的 Dockerfile、啟動您的應用程式,並擷取完全初始化環境的快照。

  3. 當您的應用程式需要隔離的環境時,對於使用者工作階段、任務或沙盒,您可以呼叫 run-microvm。Lambda 會從快照啟動具有快速啟動時間的 MicroVM。

  4. 用戶端會透過其專用 HTTPS 端點連線至執行中的 MicroVM。不需要負載平衡器或輸入基礎設施。

  5. 閒置時,MicroVM 會暫停、保留記憶體和磁碟狀態,同時降低成本。當流量傳回時,它會繼續保持記憶體和磁碟狀態不變。暫停-恢復行為可以透過生命週期政策自動設定,或透過對 suspend-microvm和 的 API 調用直接觸發resume-microvm

  6. 當工作階段結束時,您會終止 MicroVM 以釋出所有資源。

何時使用 Lambda MicroVMs

Lambda MicroVMs 非常適合執行使用者或 AI 產生程式碼的使用案例,並且需要提供強大隔離、快速啟動和恢復延遲,以及開發人員控制環境生命週期和狀態保留的執行環境。典型的使用案例包括:

  • 互動式程式碼環境 – 開發使用者即時撰寫和執行程式碼的環境。

  • AI 程式碼執行沙盒 – 用於安全執行 AI 產生的程式碼的暫時性沙盒。

  • 資料分析應用程式 – 執行使用者提供的指令碼的 Jupyter 筆記本和暫時性資料處理工作負載。

  • 安全性掃描 – 需要隔離執行環境的漏洞評估工具。

  • 強化學習環境 – AI 代理器評估和訓練的隔離沙盒,其中新的環境會在每次執行時啟動。

  • 多租戶 CI/CD – 需要在租戶之間隔離的任務執行器。

  • 遊戲伺服器 – 託管環境,以高度隔離執行使用者提供的指令碼。

主要功能

  • 快速啟動 – MicroVMs預先初始化的快照繼續,略過應用程式初始化。請參閱 MicroVM 映像

  • 生命週期控制 – 透過可設定的閒置政策,以程式設計方式或自動暫停、繼續和終止 MicroVMs。請參閱 執行 MicroVMs

  • 彈性聯網 – MicroVMs支援可設定連接埠上的傳入 HTTPS 流量,並使用服務提供的 JWE 身分驗證。傳出存取是可設定的。存取公有網際網路或您的 VPC。如需詳細資訊,請參閱 上的 章節聯網

  • 彈性資源分配 – 為每個 MicroVM 佈建基準或平均用量,並在尖峰活動期間靈活地垂直擴展至設定的基準的 4 倍。在 MicroVM 執行時支付基準費率,且只需支付超過基準的作用中使用費用。