BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

Hypernetes实现多租户CaaS,且无需客户操作系统

| 作者 Hrishikesh Barua 关注 5 他的粉丝 ,译者 谢丽 关注 5 他的粉丝 发布于 2015年12月31日. 估计阅读时间: 4 分钟 | QCon北京2018全面起航:开启与Netflix、微软、ThoughtWorks等公司的技术创新之路!

亲爱的读者:我们最近添加了一些个人消息定制功能,您只需选择感兴趣的技术主题,即可获取重要资讯的邮件和网页通知

Hypernetes使用一个最小Linux内核取代了虚拟机中的客户操作系统作为容器的宿主,这样就避免了运行全功能操作系统的开销。

HyperHQ在十月份发布了Hypernetes。InfoQ采访了该公司的前开发大使Thibault BronchainVisualOps创始人兼Hyper投资人Peng Zhao,他们详细谈论了Hypernetes的工作原理。

Hypernetes使用Hyper项目作为容器宿主,并使用了OpenStack(一种基础设施即服务软件)的一些组件和Kubernetes(一种管理Linux集群的框架)。Hypernetes由Kubernetes派生而来。

Hypernetes的其中一个组件——Hyper项目——提供了一个裸机上的容器运行时。通常,容器要在虚拟机里的一个客户操作系统上启动。Hyper使用一个名为HyperKernel的小型Linux内核启动VM,将客户OS/VM层“扁平化”。这是Hyper与其他容器运行时的主要不同之处。关于这一点,Bronchain补充说:

Hyper正是使用一个单独的Linux内核取代了“客户操作系统”。这样配置出来的VM是超轻量级的,而且配置非常快。它们的启动时间是亚秒级的,不会过多增加Linux容器的启动时间。

在Hyper启动内核以后,名为HyperStart的初始化服务会创建一个Pod。一个Pod是一个容器镜像集合,而这些镜像是同一个逻辑组的一部分。这是从谷歌借用的一个概念。例如,在一个微服务架构中,一个Pod可能包含多个辅助程序,如日志和监控。Bronchain解释了他们选择Kubernetes而不是MesosSwarm的原因:

我们认为,Kubernetes是最可靠、最容易使用的调度器。我们对使用其他调度器实现Hyper持开放态度,但我们仍然要制定我们的路线图。

按照Bronchain的说法,可以使用其他任何Linux内核取代定制的Hyper内核,但目前并没有文档说明,而且也不容易做。

OpenStack是一个用于构建和管理云的IaaS框架,Hypernetes使用了它的部分组件。它使用OpenStack的身份和服务目录提供程序Keystone进行身份验证和授权。它还使用了其他的OpenStack组件,如用于存储的CinderCeph,用于网络管理的Neutron。对于OpenStack而言,这是一个独特的用法,因为其组件通常都不在OpenStack部署之外使用。

作为一个容器运行时,Docker已经成熟并被广泛采用。那么为什么会有人想要使用一种尚处于发展初期的替代方案呢?Zhao是这样说的:

世界正在向公有云靠近。不管Linux容器的性能有多好,人们都是在虚拟机里运行容器。因此,使虚拟机像容器一样运行,以便简化基础设施栈,实现新服务,这是有意义的。而且,很难想象,在一个基于容器的公有云上,每个人都被迫使用一个单独的内核版本。

在这个生态系统里还有其他的玩家,如Ubuntu的LXD就被称为“Linux容器管理程序”。在回答InfoQ关于Hypernetes与LXD相比怎么样的问题时,Zhao说:

LXD仍然是基于Linux容器,但能够模拟一个完整的VM,并且具有额外的安全特性。不过,Hyper试图提供的是一种以应用为中心的Docker体验。虽然Hyper使用“管理程序(hypervisor)”,但它不会像一个完整的VM那样运行。

另一个类似的产品是CoreOS,这是一个基于Linux的、轻量级的操作系统,专门设计用于托管使用诸如Docker、rkt这样的运行时的容器。不过,Hyper只启动一个最小的内核用于托管容器,而CoreOS是一个操作系统,内置支持服务发现,并且运行在上面的容器可以共享配置

GitHub提供了Hypernetes的源代码以及部署说明

查看英文原文:Hypernetes Enables Multi-Tenant CaaS Without a Guest OS

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT