Hyper-V 库中的 Ubuntu 桌面,Canonical 和微软的访谈
上个月底,Canonical 发布了一个令人震惊的公告:一个优化的 Ubuntu 桌面镜像现在可以从微软的 Hyper-V 库中获得。这个出色的新功能主要面向需要运行 Ubuntu 桌面客户虚拟机的 Windows 10 专业版桌面用户。
虽然公告本身有点出人意料,尤其是当你考虑到微软和 Linux 之间漫长而动荡的历史时,但这确实表明时代(和公司)一直在变化。近年来,微软一直在努力拥抱开源和开源技术。
这个公告确实让我产生了一些疑问,所以我借此机会与 Canonical 的 Ubuntu 桌面工程总监 Will Cooke 和微软的项目经理 Sarah Cooley 进行了交流。
Petros Koutoupis: 请介绍一下您自己,并描述您在贵公司和本项目中的主要角色。
Will Cooke: 我是 Canonical Ubuntu 桌面工程总监。我们的团队负责整合每个 Ubuntu 桌面版本,选择我们要发布的软件包和功能,确保每个版本都具有适当的质量,并与合作伙伴合作开展围绕 Ubuntu 桌面的项目——例如,OEM 在其硬件上发布 Ubuntu 桌面,以及在本例中与 Microsoft 合作,以改善 Windows 10 上 Ubuntu 桌面的虚拟客户体验。对于这个项目,我与我们的内部团队合作,确定支持增强会话的要求,并确保我们需要的功能包含在 18.04 LTS 中,并与 Microsoft 的工程师和产品经理合作,以确保我们始终同步最新的进展。
Sarah Cooley: 我是微软虚拟化团队的项目经理。我们一直与微软的开发平台团队、Canonical 的 Will Cooke 团队以及 xRDP 社区密切合作,以改善 Windows 10 上 Linux 虚拟机的体验——从 Ubuntu 开始。为了提供您今天看到的体验,Hyper-V 开发人员为 xRDP 贡献了代码,以确保开源社区可以在增强会话模式下运行 Linux 虚拟机,同时与 Canonical 合作提供 Ubuntu 在 Hyper-V 上良好运行所需的所有工具,而无需额外的设置。除了这项工作之外,我还致力于 Windows Linux 子系统和 Windows 上的 Linux 容器。
PK: 为什么选择 Hyper-V,为什么选择 Ubuntu 桌面?
WC: Canonical 开始要求 Ubuntu 用户在 18.04 LTS 中提供一些系统信息,从这些数据中,我们能够看到从虚拟机运行 Ubuntu 是一个非常受欢迎的选择。自然,我们希望尽可能简化安装和使用 Ubuntu 作为虚拟机的整个体验。Microsoft 在将 hv_sock 引入 Linux 内核并确保 xRDP 可以与之配合使用方面做了大量工作,因此通过为 Hyper-V 库制作定制镜像,我们可以提供更好的用户体验,并使发现和安装 Ubuntu 更加容易。
SC: 多年来,我们一直在努力在 Windows 10 上提供出色的 Ubuntu 体验。Windows Linux 子系统使开发人员能够从命令行运行 Ubuntu,而支持 Linux 容器的 Docker for Windows 使使用 Windows 的开发人员可以拥有一致的开发/测试管道。但是,没有什么能完全取代完整的虚拟机体验,因此我们也在确保开发人员拥有出色、轻松的完整 Ubuntu 虚拟机体验。
PK: Ubuntu 和 Hyper-V 是如何优化的?我的意思是,为了增强用户体验,进行了哪些功能或更改?
WC: 在 Ubuntu 方面,我们有 N 个主要的改进。在最低级别,这意味着在我们的通用内核中启用 hv_sock。这在主机和客户机之间提供了高带宽总线。这已在主要的 Ubuntu 内核中启用,因此即使您不安装 Hyper-V 优化版本,您仍然可以使用 hv_sock。在堆栈的顶部,我们启用了替代设置工具,以便在您安装 Hyper-V 库镜像后,Ubuntu 会“预安装”,然后在您启动它时,您将完成配置安装的过程,而不是必须完成完整的安装过程。此外,我们还为 xRDP 添加了自定义配置,以自动切换到增强会话模式。
SC: Ubuntu 的库镜像具有专门为该镜像量身定制的一组虚拟机设置。在本例中,Ubuntu 镜像配置为第 2 代虚拟机(基于 UEFI),使用 hv_sock 和 xRDP 进行图形处理,使用 Linux 安全启动模板,并与 Windows 主机动态共享资源,从而为 Ubuntu 提供更像应用程序的体验。所有这些与基于 NAT 的默认交换机和虚拟机库相结合,提供了一种内置于 Windows 10 的一键式新 Ubuntu 虚拟机体验。
PK: 请介绍一下 XRDP?它到底是什么,它为这项工作带来了什么价值?
SC: xRDP 是 RDP(远程桌面协议)的开源实现。对于这项工作,我们在 Ubuntu 中使用 xRDP 服务器来提供许多共享功能,例如高 DPI 支持、文件夹共享和剪贴板共享。
PK: 您是否认为整个工作更像是一个开发人员功能?
WC: 它肯定会引起开发人员的极大兴趣。这是一种快速简便的方法来设置测试环境,例如,确保您的网站在 Ubuntu 上的 Firefox 上正常运行,或者在使用公司网络(Windows 是首选桌面操作系统)时创建针对 Linux 的构建环境。但我也相信,它会将新用户介绍给 Ubuntu 桌面,因为它在 Hyper-V 库中得到了很好的展示,并且易于查找和安装。我希望人们有兴趣尝试一下。
SC: 虚拟机在开发人员中很受欢迎,但并非每个需要访问 Linux 虚拟机的人都是开发人员,也不是每个人都知道如何创建虚拟机。我们认为这项工作可以帮助每个想要使用 Linux 虚拟机的人。我们希望每个人都觉得新的体验更快、更轻松,并使他们能够更高效地工作。
PK: 我们是否会在 Windows Server 的 Hyper-V 中看到未来的更改,以增强 Ubuntu Server 的部署/编排?
SC: 我们一直在寻找改进方法,但今天没有更多信息可以分享。
PK: 我们还可以期待 Canonical 和 Microsoft 之间进行哪些其他联合努力?
WC: 我希望在发布后不久就能在 Hyper-V 库中提供 18.10 镜像。我们将不得不看看社区的兴趣如何。如果人们真正想要的是 LTS 版本,也许那才是我们努力的重点,但找出答案会很有趣。
SC: 正如 Will 所说,我们正在努力发布 18.10 版本,我们期待继续努力,但今天没有更多信息可以分享。
PK: 对于 Microsoft:未来是否会有更多 Linux 发行版?
SC: 目前我们没有更多信息可以宣布。