【编者的话】本文简单介绍了 Unikernels,并列举了 5 个炫酷的 Unikernels 项目。
unikernels 正成为微服务领域继 Docker 容器之后的下一个大热门。这里我们看一下能用 unikernels 来做哪些炫酷的事。
首先,我们为初学者简单介绍下什么是 unikernels。unikernels 有点类似于容器,允许用户在一个可移植、软件定义的环境里运行应用。但是它们比容器更进一步,直接将运行应用所需要的所有库文件打包进unikernel。
结果就是,应用能通过自己引导并启动自己,它不再需要任何一种主机。这使得它比容器更精简,因为容器还需要通过一个容器引擎,比如 Docker,以及一个主机操作系统,比如 Linux 来运行。
今年早些时候,Docker 收购了一家名叫 Unikernels 的公司
,它专门研究 unikernels 技术(这里不要被公司名字误导,Unikernels 不是唯一一家研究 unikernels 技术的公司或研究机构)。而现在,Docker 在生产环境上不再发布任何与 unikernels 相关的消息。但是还有其他人正在用 unikernels 做一些酷酷的事情。
炫酷的 Unikernels 项目
这些项目包括如下几个:
-
jitsu
,一个能自动启动 unikernels 的 DNS 服务器。这个项目还是实验性质的,但是它凸显了一个基于 unikernels 的基础设施可以变得多么有用及敏捷。在 jitsu 场景,简单的 DNS 请求可以触发完全运行在自包含环境里的应用启动。这里炫酷的地方是,编排及部署应用时,几乎不需要额外的消耗。你只需要一个 unikernels 集,及少量的 DNS 网络流量。
-
MirageOS
,一个 Linux 基金会和 Xen 支持的项目,旨在用 unikernels 替换基于云的虚拟服务器。这很酷,因为 unikernels 比虚拟服务器允许更多的微调。加上 unikernels 使用最低限度的资源消耗,它们比虚拟服务器更高效也更安全。
-
Rump Kernels
,一种使用 NetBSD 驱动来构造 unikernels 的 unikernel 实现。它的炫酷之处在于,如果你愿意,软件也会允许你在用户空间运行驱动。假如你只有唯一的选择,即将驱动直接编译进内核,那么 Rump Kernels 可以提供更多的灵活性,也就是说,它允许你拥有自己的 unikernel 并自己控制,或者提供类似的功能。
-
ClickOS
,使用 unikernels 来构建网络功能虚拟化(NFV)应用。它酷的地方在于它承偌将会把软件定义网络(SDN)的效率提高一个层次。SDN 的革命已将物理网络设备变成历史。ClickOS 也会将虚拟的基于服务器的网络交互机淘汰。
-
Clive
,它开发那些被设计用来当作云应用运行的 unikernels 。和 MirageOS 一样,Clive 准备替换当前云主机上供职的臃肿且复杂的软件栈,代之以更精简、更简单、更安全的选项。
这些项目都还不能在生产环境上使用,大部分都仍是学术研究主导,离企业应用还有很长一段路。
这些项目更强调 unikernels 的创新性,如果你想知道 Docker 容器后什么会成为潮流,这就是答案。
原文链接: 5 Cool Unikernels Projects
(翻译:池剑锋)
原文
http://dockone.io/article/1666