只需 6 步,你就可以搭建一个云原生操作系统原型

article/2025/7/12 16:28:59

编者按:过去的三年对基础软件领域来说是不平凡的三年,是波涛汹涌的三年。随着国际形势和行业格局的变化,大家一定充分感受到了云原生和操作系统这两个话题的热度。那么当云原生和操作系统这两个热点话题相遇的时候,会发生什么故事?本文整理自 2022 年阿里巴巴开源开放周技术演讲,让作者带我们走进这场技术盛宴。

本次的分享主题围绕三个方面展开:

首先简要介绍一下龙蜥云原生 SIG(Special Interest Group) 的前世今生。我们为什么要成立云原生 SIG?想解决什么样的问题?它如何解决这些问题?接下来进一步分享如何基于开源社区和组织,从头开始一步一步构建一个云原生操作系统的原型。最后介绍云原生 SIG 的运作机制,并诚挚地邀请大家一起来参与龙蜥云原生 SIG 的建设。

 

一、龙蜥社区云原生 SIG

回头看我在操作系统和云原生两个领域的一些经历是非常有意义的,因为它可以让我从不同的视角来看这两个领域的发展。基于我在操作系统和云原生领域的职业经历,最近我开始思考云原生和操作系统是什么关系?应该如何推动这两个领域的共同发展?所以我协同行业的合作伙伴一起推动成立了龙蜥云原生 SIG,为研发一套龙蜥云原生操作系统做准备。上面提到了龙蜥云原生操作系统,那么大家可能会好奇,什么是云原生?云原生和操作系统有什么关系?我们如何才能构建一个云原生操作系统?

云原生就是充分利用云基础设施来开发软件应用的一种模式,也就是站在巨人的肩膀上,充分利用成熟稳定的云基础设施来开发、发布、运行和维护一个应用,以保障我们应用的弹性、性能、容器、成本等诸多方面的诉求。

(图/龙蜥云原生系统架构)

如上图所示,是一个典型的云原生系统的架构,其包含四个部分:

第一个最底下的是云原生的基础设施。它提供诸如虚拟机、服务器等诸多的物理资源,以及告警、日志等诸多的服务。

第二在这之上龙蜥会构建一套云原生管控。云原生管控者主要提供定义云原生应用的机制,以及为云原生应用服务的一些通用框架,比如说 service mesh 等类似的服务框架。当然,云原生管控系统里面最核心的则是云原生编排系统,它负责感知底层的资源,调度底层的资源来服务于云原生应用,最后它会把云原生应用调度到一个具体的云原生节点上来执行。

第三个系统则是云原生节点系统。它功能看起来很简单,只需要负责高效地执行被调度到本节点的云原生应用,但其实这个任务并不简单。

第四个最上层则是云原生应用。这层负责实现用户的业务逻辑和交付商业服务。

上面提到:简单的节点系统其实并不简单,它也面临诸多的挑战。为什么?因为从最开始的无状态应用到现在的大数据、AI、数据库等各种严肃应用的云原生化,业务对云原生节点系统提出了严苛的诉求。比如如何保证我们节点的资源利用率?如何保证云原生应用的 QoS?如何隔离多个应用之间的故障?以及保障各个应用的数据安全?

这些挑战都是云原生节点系统需要去面对和解决的问题。

上面提到云原生节点系统面临诸多的技术挑战,可能大家也意识到了这些挑战恰恰是操作系统所擅长的领域,因此我们自然而然地就诞生了一个这样的想法,那就是需要为云原生节点系统打造一套方便、易用、完善的云原生操作系统。那么如何来打造这个系统?

基于以上思考,我们成立了龙蜥云原生 SIG。龙蜥云原生 SIG 有三个核心的定位,就是桥梁、组件以及系统。

首先,龙蜥云原生 SIG 是一个桥梁,或者说是大家坐在一起聊天的地方,让我们一起来交流用户的需求、业务所面临的挑战,以及我们会邀请上游技术社区的核心开发人员来参与这个过程,看看上游社区能为我们的应用、业务提供什么样的帮助,提供什么样的解决方案。

另外一个方面,云原生 SIG 也会负责拉通龙蜥社区内部的其他相关的技术 SIG。比如会协同机密容器 SIG、高性能存储 SIG、容器网络 SIG 以及容器 OS SIG,大家共同来打造一套易用的云原生操作系统。

当然,云原生 SIG 的具体交付件则是稳定好用的云原生组件和系统。

二、从零开始构建云原生 OS

接下来我会和大家一起基于开源社区和开源组件,从头开始构建一个云原生操作系统的原型。

第一步,我们需要量体裁衣,为云原生应用构建一个容器优化的 OS。当然,为了方便大家,也可以利用现有的操作系统来支持云原生的应用,但是我们会面临诸如操作系统体积特别庞大,安装运维特别耗时等问题。随着这个系统的运行越来越长,整个系统当中的操作系统的版本越来越零散,版本越来越多,我们还会面临系统维护困难的问题。更重要的是,由于传统的操作系统里面内置的软件比较多,从而也导致了比较大的安全风险敞口。随着云原生应用的普及以及应用占比的日益提升,我们值得为云原生应用打造一套专用的操作系统。

基于这样的考量,云原生 SIG 利用安全的 rust 语言从头开发了一套全新的为容器优化的操作系统,我们称之为 Lifsea OS。Lifsea OS 会内置很多云原生所需要的组件,从而免去用户自己选择安装、配置各个云原生组件的烦恼。同时这些组件都会以只读的方式安装使用,从而避免了在运行过程当中被恶意软件篡改的风险。

另外为了简化大家运维大规模集群的烦恼,Lifsea OS 提供了基于 API 的运维管控的接口,也就是说也可以以编程的方式来运维整个系统中的节点。当然,这样一个系统看起来是深度定制化的,但是龙蜥也提供了非常强大的定制化能力。比如说用户可以根据自己的业务需求往 Lifsea OS 系统当中添加必要的组件,修改相应的配置,从而让我们这个操作系统能够真正的适应各个用户场景的需求。

第二步在操作系统之上,我们需要一个能够运行容器的运行时。传统上,云原生和容器有非常强的关系,也就是说云原生是通过容器催生出来的。Linux 操作系统通过提供 cgroup 、namespace 等机制,支持了原生的 RunC 容器。这样的容器运行时拥有资源利用效率高、使用方便、弹性能力强等诸多优势。

随着大数据、AI、数据库等重 IO 应用的云原生化,传统 Linux 云原生容器的不足便逐步暴露出来。比如安全隔离能力不够、应用之间相互产生性能干扰。基于这样的考虑,我们研发了基于硬件虚拟化的安全容器,安全容器最核心的能力是提供单向的保护能力,它能保护基础设施不受云原生应用的干扰,同时提供安全故障配置和性能方面的隔离能力。

在安全容器之上,我们进一步研发了机密容器。机密容器相对于安全容器有一个巨大的进步,也就是它把单向保护演进成了双向保护,不但保护基础设施不受应用容器的干扰,同时也保护应用不受基础设施的干扰。因为我们知道数据是用户最核心的资产,用户把数据搬上云以后,如何能保护我们的核心资产?机密容器为我们提供了非常好的解决方案。基于硬件的数据保护机制,我们可以保证,用户的数据对于基础设施来说是透明的,基础设施是没法看见用户的数据的,从而保障用户数据的安全性和隐私性。

可能当大家看见这三种云原生运行的时候,一定会担心,我的这个系统怎么集成了这么多运行时,使用起来得多麻烦呀?这里有个好消息分享给大家,你完全不用担心多个容器运行时的使用和运维问题。因为我们基于 containerd 打造了一套统一的管控运维接口,让大家可以根据业务需求任意的选择需要的容器运行时,比如我需要资源高效利用,那我就选择原生的容器;我希望实现多种保护,那可以选择安全容器;我需要保护我的金融数据,那我可以选择机密容器。这些都只需要通过一个简单的修改容器配置就可以实现。

当我们拥有了一个操作系统和云原生运行时之后,我们是不是就可以很平滑的把应用云原生化了,答案:还不是。第三步就是丰富多姿的云原生存储技术方案。

当我们真正的把一些应用迁移到云原生之上,特别是迁移到安全容器和机密容器之后,会发现存储的性能成为一个非常巨大的挑战。我们如何解决这些挑战?继续为大家带来一个好消息,云原生为我们提供了对数据分类的机制。因为云原生显示的把用户的数据分成了只读数据、临时数据以及是我的用户业务需要持久化的数据。根据用户访问数据的不同模式,我们可以提供不同的技术解决方案。比如针对只读数据,龙蜥云原生 SIG 提供了一套非常完善的方案。从我们基于virtiofs 、Nydus 和 EROFS 内核文件系统,打造了一套能同时支持云原生容器、安全容器和机密容器的存储方案,从而实现高效的存储性能。

但是对于用户的业务数据,我们如何提升性能?龙蜥云原生 SIG 也为大家提供了一个叫做 Fluid 的数据编排组件,它可以根据用户使用数据的方式显示的定义数据集,再使用不同技术方案来优化不同的数据集。比如说对于只读的用户数据,我们可以用刚才提到的 Nydus 、EROFS 或者 Fluid 类似的技术方案来提升性能。

对于可写的用户数据,可以利用阿里的 JindoFS、英特尔的 SPDK 等技术来提升可写数据的性能。

当我们拥有了运行时和存储解决范畴,下一步我们则需要面对最复杂的容器网络互联互通的问题。这儿还在继续探索中,因为这个领域是相对复杂度非常高。

大家知道在混合云这样的条件下面,我们会面临千变万化的网络环境。如何为这些网络环境提供一套云延伸网络方案?如何实现 IaaS 和 PaaS 的网络互通?如何让我们的底层网络基础设施能满足高速创建、销毁云原生应用的诉求?这些都是我们目前面临的挑战。我们还在和社区伙伴们一起来定义这些问题,并寻求相应的技术解决方案。

非常欢迎大家一起来参与龙蜥云原生 SIG 网络相关的技术的研讨以及建设。

我们现在拥有了一个完善的计算存储网络的云原生系统,如何才能利用起来?下一步我们需要一个 ACNS(Anolis Cloud-Native Suite),龙蜥云原生套件。

龙蜥云原生 SIG 基于阿里的 ACK 系统,开源了一套叫做 ACK Distro 的 ACNS(Anolis Cloud-Native Suite),龙蜥云原生套件。基于这样的龙蜥云原生套件,可以很方便的把你的应用搬迁上来,因为这个版本是经过阿里云的生产验证的,而且我们会在生产版本和开源版本之间保持足够的同步,让大家能尽早的使用到最新的 k8s 技术,所以有了龙蜥云原生套件之后,大家就可以很方便的利用云原生技术来实施部署自己的云原生应用。

但是下一步我们会发现,即使我们把我们的应用云原生化了,我们的节点的资源利用率还是不够高,那怎么办?

不同的应用对资源的诉求不一样。有的需要很多的 CPU 计算能力,有的需要很大的 IO 带宽、有的需要及时响应。我们可以把这些应用通过技术手段混合部署到一个节点上,从而充分利用这个节点上的各种资源,这就是我们所谓的混部系统。

在 2022 年年初,阿里云开源了 Koordinator 的业务混部编排系统,它核心是增强 k8s 的调度系统来支持业务的分布。这也是我们基于阿里系统多年的生产经验所研发出来的一套系统,现在分享给大家。再进一步,当我们能从软件层面来进行业务分布以后,我们会发现再从硬件层面来看,使用资源还是不够高。这里英特尔提供的基于硬件层面的优化调度组件,叫做 CRI Resource Manager,也就是说,可以根据业务的特征和硬件的配置情况来深度优化业务调度能力。

最后一步,当我们拥有了这样的一套系统,我们如何才能把它安装部署起来?

设想一下,当我们面临一千台虚拟机的集群需要部署一个云原生系统的时候,我们该怎么做?难道我们需要一台一台地安装各种软件吗?不,你不需要那样做。龙蜥社区为你提供了sealer 一键式集群打包分发系统。也就是说你可以为整个集群制作一个镜像,再把这一个集群镜像分发到一千台机器上。下一步,当我需要分发的节点,很多软件包的分发可能就成为我一个非常大的挑战。我们也提供了 Dragonfly P2P 的文件分发系统。这样一个P2P 分发系统,它可以用于分发软件包、软件库、容器镜像操作系统、AI模型数据等。从我们实际生产经验来看,P2P 能大幅提升云原生系统的数据分发能力。

以上介绍了龙蜥操作系统对云原生应用的支持。那么云原生技术对操作系统有什么影响吗?答案肯定是的。

因为操作系统本身也是一种软件,我们用分发云延伸软件的方式来分发操作系统,这种方式也给我们带来了非常大的想象力。比如我们可以用内核 EROFS 文件系统和 FsCache 系统来实现操作系统数据的按需加载,或者我们可以基于 Nydus 来定义新型的软件包格式。我们也可以利用管理容器镜像的技术来管理操作系统镜像,从而提升易用性和安全性。

总之,云原生的技术从另外一个方面也可以反向推动操作系统自身的演进。从而实现云原生和操作系统的协同发展、共同进步、共同演进。

三、龙蜥云原生 SIG 的运作机制

最后我们来一起聊聊龙蜥云原生 SIG 的运作机制。

经过以上介绍的 6 大步,和大家一起从头开始搭建了一个云原生操作系统的原型。当然大家也知道这个原型还是很粗糙的,还有很多等待大家一起来建设。如果我对云原生 SIG 很感兴趣,我如何才能参与进来?很简单,龙蜥云原生 SIG 的核心运作机制是圆桌会议机制。也就是说只要你对社区感兴趣,对任何一个话题、任何一个技术或者任何一个使用场景感兴趣,你就可以参与到 SIG,大家一起来交流探讨我们所面临的问题、我们可能的技术解决方案以及我们的研发进展,同时龙蜥云原生 SIG 也会秉承坚持桥梁的定位。因为龙蜥云原生 SIG 拥有很多上游社区的核心开发者,只要大家参与到这个社区来,我们一定能在上游和用户之间搭建一条非常通畅的桥梁,让大家一起来推动云原生底层系统的发展。最后再次诚挚邀请大家来参与龙蜥云原生 SIG 的建设工作。

相关链接:

龙蜥云原生 SIG 地址:https://openanolis.cn/sig/cloud-native

2022阿里巴巴开源开放周演讲视频:https://openanolis.cn/video/#643729391503840851

—— 完 ——


http://chatgpt.dhexx.cn/article/qv7OqOMn.shtml

相关文章

Linux 内核源代码情景分析(四)

系列文章目录 Linux 内核设计与实现 深入理解 Linux 内核 Linux 设备驱动程序 Linux设备驱动开发详解 深入理解Linux虚拟内存管理 Linux 内核源代码情景分析(一) Linux 内核源代码情景分析(二) Linux 内核源代码情景分析&#xff…

TWS蓝牙耳机推荐哪个?2022国产无线蓝牙耳机推荐

随着各大手机厂商逐渐取消了传统的耳机插孔后,就有越来越多的人开始使用蓝牙耳机了。即使是过去一直觉得蓝牙耳机不太实用,最后也无法摆脱“真香理论”!!在蓝牙技术的快速发展的今天,蓝牙耳机在连接性能和音质方面取得…

女生小清新高颜值蓝牙耳机分享,低延迟高性价比TWS蓝牙耳机推荐

在电子竞技空前火热的今天,玩家对于游戏耳机的要求不仅仅停留在能听见声音的层面。特别是目前比较火热的射击类游戏对于游戏耳机的要求更加高,一款出色的游戏耳机可以让玩家在战场上“如虎添翼”,不仅如此,对于玩家而言,游戏时间基本两三个小时起步,因此长期佩戴的舒适性…

真无线蓝牙耳机什么牌子好?TWS蓝牙耳机推荐

蓝牙耳机的形态可以说是多种多样了,随着时代的发展,蓝牙耳机变成了我们不可或缺的东西,左右耳两只小小的耳机,搭配一个耳机仓。整个过程仅需要打开蓝牙就行,非常方便。那么在蓝牙耳机的带领下,什么款式的蓝…

2022TWS蓝牙耳机推荐,盘点600元真无线蓝牙耳机

近年来,随着蓝牙技术的发展和续航能力的提升,蓝牙耳机开始进入了"真"无线时代。在短短的几年内,TWS耳机成为了大家竞相占领的重要“城池”,各类蓝牙耳机如雨后春笋般出现。今天就来说说被各大网友推荐上榜单的音质好的蓝…

TWS蓝牙耳机哪些品牌好?TWS蓝牙耳机品牌排行榜

或许有很多人在挑选蓝牙耳机时候有所困扰,因为有一些蓝牙耳机动辄上千元,对于预算不足,对我朋友来说实在是头疼。每个人的需求不同,所以在挑选蓝牙耳机时候也会有所侧重。推荐几款平价蓝牙耳机,不足千元的价格&#xf…

PT2050(TWS 蓝牙耳机二合一触摸 IC)

1. 产品概述 PT2050 是一款应用于双入耳检测或单入耳检测的 TWS 蓝牙耳机二合一触摸检测芯片。该芯片内建稳压电路,提供稳定电压给触摸感应电路使用,同时内部集成高效完善的触摸检测算法,使得芯片具有稳定的触摸检测效果,具有宽工…

2021年TWS蓝牙耳机哪个好?tws蓝牙耳机排名!

自从各大手机取消了3.5mm耳机孔后,随身音频行业的发展速度就相当快,因此,TWS蓝牙耳机成为了更普遍的选择。越来越多的厂家也都涉足到这一领域,使得大家的选择越来越丰富,可谓乱花渐欲迷人眼,那么多的耳机&a…

TWS蓝牙耳机推荐,新手入门高性价比高音质蓝牙耳机

对于新手来说,买真无线蓝牙耳机确实是一个头痛的问题,毕竟近年来真无线蓝牙耳机市场特别火爆,各个品牌上市的真无线蓝牙耳机型号层出不穷。所以,笔者今天就以自身经验,盘点全网最火爆的三款蓝牙耳机品牌。 第一款:网易云音乐定制款--Music Pods 做工质感: 防滑防指纹…

苹果6s解除耳机模式_百元TWS蓝牙耳机i27小试

前言 我是个上下班通勤时间以小时计算的苦逼上班族,上个班差点横跨武汉三镇!步行地铁模式,入耳式耳机戴久了会有些不舒服,听诊器效应你懂的,所以我的铁三角CK90长期在家里待命。急需一款佩戴舒适、音质尚可且价格亲民的…

耳机不分主从是什么意思_可以信赖的游戏队友,红魔TWS蓝牙耳机入手试听

你需要一个什么样的游戏耳机 蓝牙耳机的细分是越来越详细了,就拿游戏来说,为了提高游戏体验,游戏竞技蓝牙耳机应运而生。和普通蓝牙耳机相比,竞技蓝牙耳机在提升声音效果的同时更加注重游戏体验的提升,如声音还原更加到…

TWS蓝牙耳机喇叭全自动生产线

我们都知道,苹果AirPods推动TWS耳机的发展,在很大程度上也改变了用户习惯,“以前人们戴着耳机很不舒服,但现在戴耳机的时间越来越长,人们对于耳机的各方面能力要求也越来越高。 目前大部分的厂家的产品要符合以下几个要…

百款 TWS蓝牙耳机 蓝牙天线拆机分析与仿真

上一篇:贴片陶瓷天线原理 与 HFSS模型建立和仿真分析总结 (原创文章,转载请与作者联系) 0.前言 TWS是英文True Wireless Stereo的缩写,即真正无线立体声的意思,TWS技术同样也是基于蓝牙芯片技术的发展。 …

中科蓝讯、杰里、BES等常用的tws蓝牙耳机平台NTC处理

tws蓝牙耳机或者音响为了省成本、要过认证等原因往往就要考虑在耳机端加NTC充电保护,特别对于中科、杰里啊这样的本身就是两块钱左右的芯片,几分钱一毛钱都是需要计较的。 话说重点,NTC充电保护主要作用无非就是要在充电的时候假如电池温度过高了就要做停止充电的处理。 补…

tws耳机哪个品牌好?双十二tws蓝牙耳机推荐

TWS意为真正无线立体声,现如今有很多tws耳机品牌,人们在选择时不免会有疑问,不知道现在的tws耳机哪个品牌好。针对这个问题,我来给大家推荐几款好用的tws蓝牙耳机,刚好双十二快到了,希望能为大家的选择出一…

基于络达SOC AB1562A TWS蓝牙耳机设计

V hezkz17进数字音频答疑 一 原理框图 二 电子电路设计 (1)SOC主芯片 (2) 最小系统晶振电路设计26MHZ (3) 电池电路设计 4 充电电路与充电保护设计 5 LED输出电路设计</

市场的各大TWS蓝牙耳机芯片方案汇总

一、漫步者GM4真无线蓝牙游戏耳机 HECATE是EDIFIER漫步者旗下电竞品牌,品牌产品造型设计科技炫酷,追求声音的低延迟,旨在提升游戏影音体验,同时注重舒适的佩戴体验,专为游戏玩家量身打造。近期,漫步者又发布了GM4真无线蓝牙游戏耳机,主打游戏音效及游戏模式下的低延迟。…

哪个品牌的tws蓝牙耳机好用?好用的tws蓝牙耳机排名

蓝牙耳机因为没有耳机线的束缚&#xff0c;便捷性大大提升&#xff0c;近几年越来越受大众的欢迎&#xff0c;已然取代了有线耳机。市面上蓝牙耳机品牌数不胜数&#xff0c;哪个品牌的蓝牙耳机好用&#xff1f;下面&#xff0c;我们来盘点几款好用的tws蓝牙耳机&#xff0c;一起…

真无线蓝牙耳机推荐,八款口碑最好的真无线蓝牙耳机排行榜

真无线&#xff08;TWS&#xff09;耳机是近年来最流行的耳机品类&#xff0c;与传统有线或蓝牙耳机相比&#xff0c;它们具有更好的自由度和移动性。而除了常规的柄状和豆状形态的产品&#xff0c;现在市面上出现了越来越多拥有特殊形态的TWS耳机&#xff0c;它们在设计上更加…

基于OpenCV的人脸识别系统的pyhon源代码

本论文主要阐述了基于OpenCV的人脸识别原型系统。基于生物特征识别的身份认证方法有指纹、掌纹、眼睛虹膜、人脸等&#xff0c;其中&#xff0c;由于人脸的稳定性和可见性&#xff0c;人脸识别的研究与应用成为热点&#xff0c;本文针对出租公寓安全管理需求&#xff0c;设计和…