AWS 增加對巢狀虛擬化的支援

Hacker News·

Amazon Web Services (AWS) 宣布在其 EC2 執行個體上增加了對巢狀虛擬化的支援。此功能允許使用者在 EC2 執行個體內運行 Hypervisor,從而實現諸如直接在 AWS 上運行 Docker 或其他虛擬化平台等場景。

背景

AWS 近期在 SDK 更新中正式加入對巢狀虛擬化(Nested Virtualization)的支持,允許用戶在非裸機(Non-bare metal)的 EC2 執行個體中運行虛擬機。這項功能首波支援 Intel 第八代處理器執行個體,包含 C8i、M8i 與 R8i 等型號,標誌著 AWS 在虛擬化技術靈活性上的重要進展。

社群觀點

針對 AWS 終於支援巢狀虛擬化,Hacker News 社群的反應呈現兩極化。部分資深技術人員對此感到「姍姍來遲」,指出 Google Cloud (GCP) 與 Azure 早在 2017 年左右就已提供類似功能,甚至有評論戲稱 AWS 終於趕上了 2018 年的技術水準。然而,曾任職於 AWS 的專家則為其辯護,強調在雲端規模下實現巢狀虛擬化並非單純開啟一個設定位元,而是涉及極其複雜的工程挑戰。這包括必須確保虛擬化網路(VPC)在多層架構下仍能正常運作,以及在不犧牲 Nitro 系統嚴苛安全標準的前提下,防止巢狀環境削弱 EC2 的隔離特性。

在實際應用價值上,開發者普遍認為這對微型虛擬機(Micro-VM)沙盒方案如 Firecracker、E2B 或 Kata Containers 是一大福音。過去若要運行這些技術,用戶被迫租用昂貴的裸機執行個體,現在則能選擇成本較低的虛擬化執行個體。此外,這項更新也解決了 CI/CD 流程中的長期痛點,例如在雲端環境中運行 Android 模擬器或進行系統映像檔的自動化測試,過去這些任務在標準 EC2 上難以達成。

關於效能損耗的討論也相當熱烈。根據社群成員的經驗與預估,巢狀虛擬化的效能損耗大約落在 5% 到 15% 之間,具體取決於工作負載。雖然純 CPU 運算受影響較小,但 I/O 密集型任務可能會因為多層虛擬機退出(VM-exits)與記憶體管理單元(MMU)的額外開銷而面臨挑戰。有趣的是,有來自 Azure 的工程師提到,業界正朝向「直接虛擬化」或「同級虛擬化」發展,試圖透過邏輯上的分層而非物理上的巢狀堆疊來消除這層效能稅。

最後,社群也觀察到 AWS 此次僅限於 Intel 第八代晶片的策略。這被解讀為一種謹慎的工程取向,利用新一代硬體在 VMCS shadowing 等微架構上的改進,來確保虛擬化的穩定性與可靠性。儘管有人批評 AWS 傾向於自行開發封閉堆疊而導致進度落後,但支持者認為這種對硬體與軟體高度整合的追求,正是 AWS 能在安全性與效能上維持領先的原因。

延伸閱讀

  • Firecracker:AWS 開源的微型虛擬機監控器,常用於 Lambda 與 Fargate。
  • gVisor:Google 開發的容器運行環境,提供類似虛擬機的隔離性但不需要巢狀虛擬化支援。
  • Nitro 系統架構:AWS 官方技術演講,深入探討其硬體加速虛擬化的底層邏輯。
  • Azure Boost:Azure 類似 Nitro 的硬體加速方案。
  • E2B:專為 AI Agent 打造的雲端沙盒平台,是此次更新的直接受益者。

Hacker News

相關文章

  1. 在初創公司負責基礎設施四年後,我所支持或後悔的幾乎每一項決策

    2 個月前

  2. Show HN:利用寫入時複製(CoW)記憶體分叉技術實現亞毫秒級虛擬機沙盒

    大約 1 個月前

  3. MiniStack:LocalStack 的免費替代方案,本地 AWS 模擬器

    22 天前

  4. NVIDIA 為全球關鍵基礎設施帶來 AI 驅動的網路安全防護

    Nvidia Blog · 大約 2 個月前

  5. LocalStack 封存 GitHub 儲存庫並轉向統一映像檔

    大約 1 個月前