Customize Consent Preferences

We use cookies to help you navigate efficiently and perform certain functions. You will find detailed information about all cookies under each consent category below.

The cookies that are categorized as "Necessary" are stored on your browser as they are essential for enabling the basic functionalities of the site. ... 

Always Active

Necessary cookies are required to enable the basic features of this site, such as providing secure log-in or adjusting your consent preferences. These cookies do not store any personally identifiable data.

No cookies to display.

Functional cookies help perform certain functionalities like sharing the content of the website on social media platforms, collecting feedback, and other third-party features.

No cookies to display.

Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics such as the number of visitors, bounce rate, traffic source, etc.

No cookies to display.

Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.

No cookies to display.

Advertisement cookies are used to provide visitors with customized advertisements based on the pages you visited previously and to analyze the effectiveness of the ad campaigns.

No cookies to display.

0

北京时间 2025 年 1 月 24 日,微软正式宣布开源其 Hyperlight WebAssembly 虚拟机项目。这一举动不仅标志着微软在云原生安全领域迈出了重要一步,也预示着无服务器计算和边缘计算等领域将迎来新的变革。Hyperlight 的开源,将为开发者提供一种全新的、高效且安全的运行不受信任代码的方式,其微秒级的启动速度和基于虚拟化的安全隔离机制,有望彻底改变我们对虚拟机和沙箱的认知。

引言:传统虚拟机之困与 Hyperlight 的诞生

长期以来,虚拟机一直是云原生基础设施的基石,为主机和客机环境提供了必要的安全隔离。然而,在无服务器计算等事件驱动的场景中,传统虚拟机的启动速度往往成为瓶颈。每次函数调用都需要启动一个完整的虚拟机,这不仅耗时,也增加了资源开销。微软 Azure 首席工程师 Rita Zhang 在去年 11 月的 KubeCon+CloudNativeCon 大会上就指出了这一痛点:“在无服务器计算等事件驱动的场景中,传统虚拟机启动速度实在太慢。那么,我们如何在保证应用程序安全运行的同时减少这种延迟呢?”

为了解决这一难题,微软的 Azure Core Upstream 团队开发了 Hyperlight。Hyperlight 的核心理念是利用轻量级的微型虚拟机(microVM)来运行 WebAssembly (Wasm) 模块。这些 microVM 可以在微秒级时间内创建,并且每个函数请求都有其独立的虚拟化层进行保护,从而在保证安全性的同时,极大地降低了启动延迟。

Hyperlight 的核心技术:微型虚拟机与 WebAssembly 的结合

Hyperlight 的核心技术在于将微型虚拟机和 WebAssembly 这两大技术巧妙地结合起来。

微型虚拟机(microVM)

Hyperlight 采用微型虚拟机(microVM)技术,这是一种比传统虚拟机更轻量级的虚拟化方案。与传统虚拟机需要加载完整的操作系统不同,microVM 只需加载运行 WebAssembly 模块所需的最小组件。这种轻量化的设计使得 microVM 的启动速度极快,可以在微秒级时间内完成。

微软 Azure 首席工程师 Rita Zhang 在演示中展示了 Hyperlight 的惊人速度:应用可以从虚拟机中顺序调用主机功能,并将主机返回的值传回客机。Hyperlight 为每次调用创建一个新的 microVM,平均每个请求仅耗时 900 微秒。这远低于传统虚拟机的启动时间,甚至不到一毫秒。

WebAssembly (Wasm)

WebAssembly 是一种可移植的、高效的字节码格式,可以在各种平台上运行。它最初是为了在 Web 浏览器中运行高性能应用程序而设计的,但现在也广泛应用于服务器端和边缘计算等领域。WebAssembly 的一个重要特点是其沙箱安全性,它可以有效地隔离运行在其中的代码,防止恶意代码对系统造成损害。

Hyperlight 利用 WebAssembly 的沙箱安全性,为每个函数请求提供额外的安全保障。通过将函数封装在 WebAssembly 模块中,Hyperlight 可以确保每个函数都在一个隔离的环境中运行,即使其中一个函数出现问题,也不会影响其他函数或整个系统。

基于虚拟化的保护机制

除了 WebAssembly 的沙箱安全性之外,Hyperlight 还采用了基于虚拟化的保护机制。每个函数请求都有其独立的虚拟化层进行保护,这意味着即使一个函数被攻击者攻破,攻击者也无法访问其他函数或整个系统的资源。这种多层次的安全保护机制,使得 Hyperlight 能够安全地运行不受信任的代码,即使在多租户环境中也能保证安全性。

Hyperlight 的应用场景:无服务器计算、边缘计算与更多

Hyperlight 的出现,为无服务器计算、边缘计算等领域带来了新的可能性。

无服务器计算

在无服务器计算中,函数通常是短暂的,需要在短时间内启动和执行。传统虚拟机的启动延迟使得无服务器计算的性能受到限制。Hyperlight 的微秒级启动速度可以显著降低无服务器应用的冷启动延迟,提高应用的响应速度和效率。

微软的 Azure Core Upstream 团队表示,Hyperlight 可将无服务器应用的冷启动延迟降低一倍以上。这意味着开发者可以更高效地构建和部署无服务器应用,而无需担心启动延迟带来的性能问题。

边缘计算

在边缘计算中,设备通常资源有限,对性能和安全性要求较高。Hyperlight 的轻量级和安全特性使其非常适合在边缘设备上运行。通过在边缘设备上部署 Hyperlight,开发者可以安全地运行各种应用程序,例如数据处理、人工智能推理等,而无需担心安全风险。

微软 Azure 首席技术官兼技术院士 Mark Russinovich 在微软 Ignite 用户大会上表示:“我们现在可以利用这些轻量级沙箱,在网络流量进入系统时直接进行处理。这为实时、高效的网络处理打开了全新的可能性。”

其他应用场景

除了无服务器计算和边缘计算之外,Hyperlight 还可以应用于其他需要运行不受信任代码的场景,例如:

  • 用户自定义函数: 在存储服务中,用户可以自定义函数来处理数据。Hyperlight 可以安全地运行这些用户自定义函数,而无需担心安全风险。
  • 网络流量处理: Hyperlight 可以用于实时处理网络流量,例如过滤、路由等。
  • 插件系统: Hyperlight 可以用于构建安全的插件系统,允许用户安装和运行第三方插件,而无需担心安全风险。

Hyperlight 的开源与未来展望

微软开源 Hyperlight 的举动,不仅体现了微软对开源社区的承诺,也预示着 Hyperlight 将在更广泛的领域得到应用。微软计划将 Hyperlight 捐赠给 CNCF(云原生计算基金会),这将进一步促进 Hyperlight 的发展和普及。

微软高级开发倡导者 Yosh Wuyts 和 Azure Core Upstream 负责人 Ralph Squillace 在博客中写道:“我们的目标是提升整个社区,让每个人都能使用微型虚拟机技术。Hyperlight 是我们通过安全沙箱提供这一能力的方式。”

Hyperlight 的开源,将为开发者提供一个强大的工具,用于构建更安全、更高效的云原生应用。随着 Hyperlight 的不断发展和完善,我们有理由相信,它将在未来的云原生领域发挥越来越重要的作用。

微软在 WebAssembly 领域的布局

虽然微软鲜有公开讨论其在 WebAssembly 方面的早期工作,但可以确认,该公司已在多个业务场景中使用 WebAssembly,并持续为 Wasm 社区的发展做出贡献。事实上,微软早在多年前就开始研究 WebAssembly。例如,《微软飞行模拟器》游戏一直在使用 WebAssembly 来保护游戏 Mod,这不仅提升了安全性,还增强了插件的可移植性。此外,Excel Online 也采用 WebAssembly 计算 Lambda 函数。

目前,微软的主要工作集中在推动即将到来的 WebAssembly 组件模型和 WASI(WebAssembly System Interface)。例如,微软正在扩展 Azure Kubernetes 服务的 WASI NodePool 预览版,并通过 Hyperlight 项目在 Wasm 沙箱基础上为每个请求提供额外的虚拟化保护。

除了 Edge 浏览器之外,微软的 WebAssembly 重点投资方向主要在服务器端 Wasm 及围绕 Bytecode Alliance 构建的 Wasm 组件生态,同时也在基础设施和语言工具方面进行投资,以促进 WASI 的高效应用。此外,微软还在开发 Containerd 相关项目 Runwasi,该项目是 SpinKube 计划的一部分。

结论:云原生安全的新篇章

微软开源 Hyperlight WebAssembly 虚拟机,不仅是一个技术上的突破,更是一场云原生安全领域的革命。Hyperlight 的微秒级启动速度、基于虚拟化的安全隔离机制以及与 WebAssembly 的完美结合,为无服务器计算、边缘计算等领域带来了新的可能性。

Hyperlight 的开源,将促进微型虚拟机技术的发展和普及,为开发者提供更安全、更高效的工具。随着 Hyperlight 的不断发展和完善,我们有理由相信,它将在未来的云原生领域发挥越来越重要的作用,开启云原生安全的新篇章。

参考文献

  • Microsoft’s Hyperlight WebAssembly for VMs Is Open Source. (n.d.). The New Stack. Retrieved from https://thenewstack.io/microsofts-hyperlight-webassembly-for-vms-is-open-source/
  • InfoQ. (n.d.). 微软的 Hyperlight WebAssembly 虚拟机现已开源. Retrieved from InfoQ.
  • KubeCon+CloudNativeCon. (n.d.).
  • Microsoft Ignite. (n.d.).
  • WebAssembly. (n.d.).
  • CNCF. (n.d.).
  • Bytecode Alliance. (n.d.).
  • WASI. (n.d.).
  • Containerd. (n.d.).
  • SpinKube. (n.d.).


>>> Read more <<<

Views: 0

0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注