最新发布《数智时代的AI人才粮仓模型解读白皮书(2024版)》,立即领取! 了解详情
写点什么

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

  • 2015-12-30
  • 本文字数:1400 字

    阅读完需:约 5 分钟

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

HyperHQ 在十月份发布了 Hypernetes。InfoQ 采访了该公司的前开发大使 Thibault Bronchain VisualOps 创始人兼 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 而不是 Mesos Swarm 的原因:

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

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

OpenStack 是一个用于构建和管理云的 IaaS 框架,Hypernetes 使用了它的部分组件。它使用 OpenStack 的身份和服务目录提供程序 Keystone 进行身份验证和授权。它还使用了其他的 OpenStack 组件,如用于存储的 Cinder Ceph ,用于网络管理的 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

2015-12-30 18:004624
用户头像

发布了 1008 篇内容, 共 374.1 次阅读, 收获喜欢 340 次。

关注

评论

发布
暂无评论
发现更多内容

恒源云(Gpushare)_如何查看显卡占用的情况?技巧大放送2!

恒源云

算法 GPU服务器 显卡

10年资深架构师分享 | 普通程序员向架构师进阶之路

云智慧AIOps社区

程序员人生 高薪 架构师 技术分享 职场发展

模块二作业

HZ

架构实战营 「架构实战营」

开发者手册之如何成为 OceanBase Contributor

OceanBase 数据库

oceanbase OceanBase 开源 OceanBase 社区版

车载小程序快马加鞭突围车联网生态系统

FinClip

“远见者”特斯拉AI主管Karpathy|深度学习崛起十年

OneFlow

人工智能 深度学习 计算机视觉 特斯拉 openai

设备资产管理系统解决方案

低代码小观

资产管理 CRM系统 企业设备管理 设备巡检管理系统 企业管理软件

Java培训-实现定时任务的几种方式

@零度

Java

【Zeekr_Tech】初谈我们共同的目标 NPDS + Agile

Zeekr_Tech

人工智能 敏捷开发 智能驾驶

【直播回顾】OpenHarmony知识赋能第四期第四课——音频驱动开发

OpenHarmony开发者

OpenHarmony HDF框架 音频驱动开发

大数据培训-如何连通 Hive 数仓和ClickHouse

@零度

大数据 hive Clickhouse Seatunnel

web前端培训-检测Javascript类型的4种方式

@零度

JavaScript 前端开发

TiFlash 开源了

PingCAP

ICDE 2022|Apache ShardingSphere:一个功能全面和可插拔的数据分片平台

SphereEx

数据库 ShardingSphere 论文 SphereEx

轻盈潇洒卓然不群,敏捷编辑器Sublime text 4中文配置Python3开发运行代码环境(Win11+M1 mac)

刘悦的技术博客

Python ide 编辑器 Python3 Sublime

高效使用Java构建工具,Maven篇|云效工程师指北

阿里云云效

云计算 maven 阿里云 java 并发 构建工具

【直播回顾】OpenHarmony 知识赋能第四期第四课——音频驱动开发

Anna

OpenHarmony

直播预告 | 如何在有限数据下实现资讯类网站海量信息自动分类

百度开发者中心

提升 Hybrid 体验:饿了么双十一 PHA 框架技术实践

阿里巴巴终端技术

App 用户体验 Hybrid PHA

对话LigaAI创始人周然:在研发SaaS赛道,「颠覆」Jira | PLG十人谈

LigaAI

SaaS LigaAI 研发协作平台

架构标准TOGAF实践最重要的三件事

博文视点Broadview

博文推荐|深入解析 BookKeeper 多副本协议(一)

Apache Pulsar

开源 云原生 中间件 bookKeeper Apache Pulsar

腾讯AI Lab姚建华博士当选 2022 美国医学与生物工程院会士

科技热闻

教你VUE中的filters过滤器2种用法

CRMEB

We are learning by contributing!访 StarRocks Committer 周康、冯浩桉

StarRocks

数据库 开发者社区 StarRocks

突破数据分析瓶颈,寻因生物单细胞测序数据分析迈入云时代

阿里云弹性计算

虚拟化 持久内存 基因测序

清华自研时间序列数据库Apache IoTDB原理解析

云智慧AIOps社区

数据库 时序数据库 消息队列 智能运维

Kubernetes官方java客户端之三:外部应用

程序员欣宸

Kubernetes java client

阿里云:已有10000家企业在云上构建数据湖

Apache Flink

云计算 阿里云 数据湖 云原生

产品知识在线培训的解决方案

小炮

企业知识管理

恒源云(Gpushare)_如何防止训练不中断?技巧大放送1!

恒源云

算法 服务器 训练

Hypernetes实现多租户CaaS,且无需客户操作系统_Linux_Hrishikesh Barua_InfoQ精选文章