Bestony 发布的文章

故事的开始

自从 CentOS 宣布 CentOS 8 将成为绝响,业界在一片叹息和抗议之后,纷纷易弦更张,寻找别的替代品。这之后,开源社区和业界对 CentOS Stream 的讨论并没有如预期的增加。除了偶尔成立的几个 Stream SIG 还能引来一些关注,很多人都已经将目光放到了其它的替代品上了,尤其是采用了兼容 RHEL/CentOS 技术路线的几个国内外 Linux 发行版,在很短的时间内就获得了快速发展和极大关注。

在这个形势之下,国内有几家以企业服务市场为目标的“新” Linux 发行版纷纷涌现。其实说“新”也不新,这些发行版大多沿袭自它们的发行商原本的企业内的定制分支,甚至有的发行版在 CentOS 停更之前就公开发布过。但说它们“新”是因为在新的机遇之下,这些发行版一改过去低调发展、克制迭代的风格,更主动地拥抱了市场和迭代新技术,并将其投放到更大的用户市场。

这里,我们要谈谈其中一个值得注意的企业级操作系统:龙蜥操作系统(Anolis OS)。作为由阿里巴巴所孵化出来,并迅速拥有了多家核心企业支持的 Linux 发行版,显然是很具有话题性和影响力的,也不可避免的会遇到一些争议和观察。为此,我带上问题和龙蜥社区的理事长马涛聊了聊关于龙蜥操作系统背后的那些事情。

磨一剑,需十年

龙蜥操作系统并不是一个凭空诞生的发行版,相反,龙蜥操作系统更像是阿里巴巴十年磨一剑的产物,也是阿里巴巴和以统信及三大运营商等为代表的多家企业的技术沉淀。

早在十年前,淘宝内核组就基于 Linux 内核打造了一个阿里云内部使用的 Linux 发行版。而随着阿里巴巴集团业务的扩大,淘宝内核组从过去只服务于淘宝内部,变成了如今的阿里云智能基础软件部,将过去只为阿里巴巴内部提供服务的技术,开放给了更广泛的开发者使用。也正是因为这样的变化,促成了龙蜥操作系统的诞生。

龙蜥操作系统最大的特色是除了社区多家生态企业的联合推动,还有不少来自阿里巴巴及其用户的多年技术实践的沉淀。

在系统安全方面,除了基于阿里云在网络安全领域的积累而做的操作系统层面的加固外,龙蜥操作系统还提供了基于 OpenSSL 衍生的 BabaSSL,为龙蜥操作系统提供了诸如国密算法、QUIC API 等特性。它还内置了首个机密计算开源容器 Inclavare Containers,后者刚刚被捐赠给 CNCF 基金会孵化。这样,在安全方面龙蜥操作系统从根本上奠定了解决可信、可控问题的基础。

在系统管理方面,龙蜥操作系统则提供了一个全栈覆盖内核与核心组件的跟踪和诊断工具 sysAK,增强龙蜥操作系统在系统层面和应用层面的可观测性和可靠性,让业务的监控和诊断更加简单易用。

此外, 还有 Java 虚拟机 Dragonwell、PolarDB、OceanBase等一系列阿里巴巴自研的技术,都可以在龙蜥操作系统中找到身影。

可以看出,阿里巴巴是想将龙蜥操作系统打造成一艘承载着阿里巴巴在 Linux 技术方面多年积淀的旗舰。

一个字,“稳”

对于龙蜥操作系统来说,稳定是第一要素。那就要看,龙蜥操作系统为何这么稳定?

得益于淘宝和阿里云多年的打磨,历经多年的双十一大促、阿里云流量暴涨等事件的打磨,如今的龙蜥操作系统在稳定这件事情上,做到了极致。

龙蜥操作系统,是在国家有关主管部委的指导下,以阿里云为牵头单位,联合统信软件等多家专业操作系统厂商、多家芯片厂商和大行业用户共同推出的。这意味着它的演进速度、演进场景完全不同。相比于传统的操作系统场景,龙蜥操作系统的演进往往是在各种大型流量和大量用户群的场景下催生的。

CentOS 主流版本与Anolis OS 衍生版宕机率对比 出处:阿里云

通过在真实的业务流量场景下运行龙蜥操作系统,并在发现问题后及时修复,将更新推送到最新的龙蜥操作系统。它背后的阿里云,为龙蜥操作系统的迭代和升级提供了海量的修复案例,帮助它在更多问题发生之前就将其解决掉。

如果我们将龙蜥操作系统和一些传统发行版的厂商相比,龙蜥操作系统更像是通过开源的范式来开发的一个操作系统:通过将操作系统放在海量的应用场景和实战场景下,去尽可能多地发现问题、修复问题。而传统发行版厂商则更像是发现一个问题,修复一个问题,见招拆招地处理问题。虽然也会有定期的修复升级,但发现问题的频率和对迭代的诉求,显然和拥有海量应用场景的龙蜥操作系统不同。

套壳还是换芯?

作为一个追求稳定的发行版,龙蜥操作系统成为 CentOS 转为 Stream 模式后的一个不可忽视的选择。也让 龙蜥操作系统成为了众矢之的:“既然宣称兼容 CentOS,那是不是就是 CentOS 套壳?”

我用这么一个尖锐的问题,来寻求马涛的答复。他没有顾左右而言他,直接了当地给出了他的答复:兼容不仅仅不是套壳,更是技术能力强的体现,并进一步解释到:兼容性并不是一句简单的大白话,背后包括了一整套兼容性分析体系,比如对语言运行时的分析、对系统参数和行为的分析、对内核的接口分析等等,是一个贯穿操作系统、从上到下的超级工程。另一方面,龙蜥操作系统是一个面向企业提供服务的发行版,稳定是第一要素。而对于目前的 CentOS 用户来说,我们如果无法提供对 CentOS 的兼容,又有哪个企业敢于选择龙蜥操作系统呢?

其实每一次提起国产的 Linux 发行版,难免都会提及“套壳”这个话题。也正好借着龙蜥操作系统的话题,来聊聊这个事情。

到底什么才是“套壳”?我们似乎一直都没有一个明确的定义,难道说用了 Linux 内核就是 Linux 的“套壳”么?显然不是的。那所有使用 RPM 包的发行版都是 CentOS “套壳”么?答案显然也是否定的。

其实从 Linux 的发行版的发展来看,所有的发行版几乎都可以称之为“套壳”,除了 Arch Linux 、Gentoo 等几个少数的发行版以外,大部分都在使用 Deb 、RPM 打包系统,很难跳出这两个包管理器的世界,难道说这世界上只有两个发行版么?

对于 Linux 发行版来说,我们如果真的要定义“套壳”,应该说那些是“基于某一个发行版,替换一下主题,更新一下软件,替换一些字眼”的发行版才是“套壳”,而我们看到的,像 SESL、openSUSE 之类的这些发行版,它们更多是延续社区的成功经验,沿袭 CentOS 既有的技术方向,但独立发展,独立迭代的独立发行版。

Anolis OS != Another Linux OS

所以,我们认为,龙蜥操作系统不是“又一个 Linux 操作系统”。一方面,这不是“又一个简单复制”,套个壳的 Linux 发行版;另一方面,龙蜥操作系统承载的也不仅仅是 Linux 操作系统,在其上还搭载着各种安全、容器、应用服务等最新技术,是一艘久经风浪的、稳定的不沉之舟。

花絮:我问马涛,到底龙蜥操作系统的英文名称 “Anolis OS” 是什么缩写?他说:Anolis is Not Only LInux System。嗯,这很 GNU(is Not Unix)!

支持,还是支持

CentOS Linux 的落幕,源自其失去了企业的支持,源自单方面的付出没有回报让企业失去了支持下去的勇气。而这个问题,其实对于任何一个发行版来说,都是存在的。龙蜥操作系统能够获得什么样的长期支持,才是它长期发展下去的原生动力。

就此问题,我对马涛进行了“逼问”,龙蜥操作系统可以承诺多少年的支持?

马涛给了我一个明确的承诺:10 年!

今日阿里云 · 云栖大会 2021 正式开幕, Linux 中国应邀前往杭州云栖小镇,参与云栖大会。

以下是本次云栖大会首日看点:

阿里巴巴旗下半导体公司平头哥发布自研云芯片倚天 710

倚天 710 是业界性能最强的 ARM 服务器芯片,性能超过业界标杆 20%,能效比提升 50% 以上。倚天 710 是阿里云推进“一云多芯”策略的重要一步,也是阿里第一颗为云而生的 CPU 芯片,将在阿里云数据中心部署应用。

倚天 710 针对云场景的高并发、高性能和高能效需求而设计,将领先的芯片设计技术与云场景的独特需求相结合,最终实现了性能和能效比的突破。目前,阿里云已全面兼容 x86、ARM、RISC-V 等主流芯片架构,自研的倚天 710 进一步丰富了阿里云的底层技术架构,并与飞天操作系统协同,为云上客户提供高性价比的云服务。

阿里云正式推出面向云原生时代的采用了倚天 710 的“磐久”自研服务器系列

阿里云将在今年内部署首款搭载自研芯片倚天 710 的磐久高性能计算服务器。

磐久服务器系列采用灵活模块化设计,可实现计算存储分离,包括高性能计算系列、大容量存储系列、高性能存储系列,且拥有风冷、液冷不同散热模式和归一化的主板,整机柜的设计让交付效率提升 50%,

阿里云开源玄铁 RISC-V 系列处理器并开放系列工具及系统软件

玄铁 RISC-V 系列处理器采用自研技术,覆盖从低功耗到高性能的各类场景,支持 AliOS、FreeRTOS、RT-Thread、Linux、Android 等操作系统,并已成功应用于微控制器、工业控制、智能家电、智能电网、图像处理、人工智能、多媒体和汽车电子等领域。

此次开源的玄铁系列 RISC-V 处理器,包括玄铁 E902、E906、C906、C910 等 4 款量产处理器 IP,以及基于玄铁的多操作系统的全栈软件及工具。开发者可通过平头哥 GitHub 和 芯片开放社区 Open Chip Community 下载玄铁源代码,在此基础上,实现开源 EDA 协同,创新硬件架构,丰富软件应用生态。

总结

本次云栖大会看起来不那么“云”,但又是那么的”云“。说他不像云,是因为发布的都是芯片相关的产品。但像云是因为芯片背后是阿里云对于云计算产业变革的思考。

在阿里云看来,新型计算体系结构正在形成,未来计算将云上迁移。在这种情况下,基于传统场景下设计的芯片就存在了大量的问题。针对云计算场景设计的芯片,将会为整个云计算产业带来不同。

一直以来,云、管、边、端操作系统领域的碎片化,都是切实存在但又不得不面对的问题。在服务器上使用一个系统,在云计算集群上使用另一个系统,而在边缘计算设备和嵌入式设备则又是一个新的系统。似乎天经地义的,不同场景的设备就该使用不同的操作系统。

但在计算机技术和计算基础设施以指数级发展的今天,是否还应该墨守成规?在消费者领域,我们已经看到越来越明显的系统融合趋势,比如,苹果公司希望全线都使用同一套系统,以提供给用户最好的体验;再比如华为的鸿蒙也通过将不同的操作系统融合,让普罗大众也能感受到万物互联互通的多彩生活。

此时我们不禁要问:“是否应该在更大、更宏观的场景,对更多的计算场景进行融合?”就如同欧拉公式揭示的那样,世界本是统一的,计算世界是否也已经迎来了大一统的契机?

欧拉:以开源主导的大一统技术社区

商业公司由于人力有限,往往只会选择在一个领域做深耕投入,以期获得更大的收益;而与之相比,开源社区则不同,大家会基于对于开放理念的追求,而不断迭代一款产品。开源社区近乎无限的开发者参与,以及它开放的模式,也让一款统一而一致的产品成为了可能。

Linux 内核便是一个十分典型的例证。最初的 Linux 内核只是一个用于个人电脑的小玩具,而随着全世界开源贡献者持续三十年的不懈投入,如今的 Linux 已经遍及了从超算、云计算、服务器、个人桌面、物联网、智能终端等各种大相径庭的不同使用场景,跨越了从 x86、ARM、RISC 等十数种计算架构,从某种意义上奠定了大一统的计算基础。

但是另外一方面,虽然 Linux 及其生态已经构筑了一个平实而广泛的基础,但是我们也看到,即便是在源出一门的内核之上,由于商业利益、计算能力限制、用户体验等因素,往往我们见到的是在操作系统层面的割裂。

而这一次,欧拉(openEuler)希望立足于开源社区,与社区共同建设一个“数字基础设施的开源操作系统”,从而,不仅仅是底层的内核,而在更高层面也达成大一统的融合和互联。

新的欧拉操作系统可广泛部署于服务器、云计算、边缘计算、嵌入式等各种形态设备,应用场景覆盖 IT( 信息技术 Information Technology )、CT( 通信技术 Communication Technology )和 OT( 运营技术 Operational Technology ),实现统一操作系统支持多设备,应用一次开发覆盖全场景。

和过去归属于公司的操作系统不同,欧拉是一个开发者的操作系统。虽然欧拉发轫于华为公司,但其成长得益于开发者的参与和投入,也反过来促进了开发者的发展。目前已有 100 多家企业、机构等组织加入,汇聚了超过 6000 多名开发者,10 多家国内主流的 OSV 基于欧拉发布了商业发行版。对于开发者来说,云、管、边、端的融合,有助于开发者降低开发成本。开发者可以基于同一个技术底座,开发出一个能够应用在不同场景下的应用程序,从而获得更多的用户和可能。

欧拉:由工具主导的发行版变化

过去的 openEuler 重点关注在鲲鹏生态,而现在的欧拉将涵盖从 x86、ARM、RISC 等不同架构,以支持更广泛的计算场景。

过去的 openEuler 着重于服务器操作系统,主要应用于服务器场景,而随着新欧拉的发布,openEuler 将会扩展其场景,覆盖服务器、云计算、边缘计算和嵌入式设备。从只处理服务器的问题,延展到可以解决更多场景、更全设备的新操作系统。

这样的升级,是为了更好的利用不同的设备和不同场景下的算力,通过操作系统层面的统一,让计算能力可以更加容易调度,实现计算能力利用的最大化。

不仅如此,为了更好更快的抵达这个目标,欧拉社区还提供了一系列的工具和能力,让开发者可以根据自己的需要,裁剪配置自己需要的系统。诸如,可以通过配置和设置来打包操作系统的全栈原子化的能力,更加简单地完成系统的裁剪,以应对面向边缘计算、嵌入式设备等计算和存储资源都较少的场景,更好的服务这些设备。

当然,也不止于此。

对于开发者来说,操作系统的融合固然是好事,但对于开发者来说,感知不大,因为操作系统层面的变动往往是底层工具的变化,落实到开发者层面,还需要很多的时间。但欧拉社区这次的发布除了操作系统的升级,还提供了北冥技术架构 —— 北冥架构是为多样性计算硬件及集群打造的使能软件栈,简化多样性计算环境下的开发和部署,充分释放算力性能。通过北冥,开发者想要在安装了欧拉的多个设备中去开发应用程序,也变得更加简单。

欧拉:与鸿蒙共享技术结晶

本次欧拉的升级,除了架构和计算场景的升级,还有一个很大的升级便是欧拉将与鸿蒙共享底层技术,共建用户生态

鸿蒙作为一个面向智能终端的设备,可以通过海量的设备覆盖和丰富的操作体验,为开发者提供更多的机会。而欧拉作为一个专注于服务器端场景,追求安全性和稳定性的操作系统,可以通过与鸿蒙的结合,更好的为用户场景提供服务。

鸿蒙和欧拉的结合一个更大的好处在于,随着底层基础的打通,我们身边的智能设备,和云端的服务器、边缘计算设备,可以拥有更好的交互方式,从过去的通过 API 实现数据的同步,变成可以借助于分布式软总线,让智能设备可以从身边的设备去借用计算能力、进行管控,这将更加的简单和直接。

而这种云、管、边、端融合,将服务器、网络设备、物联网设备、智能终端等互相连接的方式,也必将带来一波新的应用开发浪潮,大家可能会发现,过去难以实现的场景,现在可以通过一个更简单的方式来实现。随着技术的进步,带来使用体验、操作体验、管理体验的进一步提升。

我们可以畅想一下,在未来,当鸿蒙与欧拉结合,我们拿着鸿蒙的手机走进机房,马上就可以看到不同的服务器之间的信息,而且这些信息可以通过分布式软总线来传递,我们可以更加简单、直接的操作服务器上的数据和功能。

可以想象,欧拉+鸿蒙将渗透到我们身边的每一个应用,所以,我认为,欧拉社区也许是朝着“元”操作系统在发展,从底层,到数据,从 API 到 AI,在更大的层面进行了统一、融合。

那个要统一数字基础设施的操作系统

完美的欧拉公式,呈现了数学的统一之美,欧拉操作系统,能否统一数字基础设施?我想这个问题,应该由开源社区来揭示。

Shell 作为 Linux 中的第一语言,几乎每一个使用 Linux 的人都用到或用过 Shell,但绝大多数人都并不能掌握 Shell 编程的基本能力和技巧。

但如果你的工作涉及到与 Linux 进行操作和交互,Shell 编程对于你来说,都是一个必学的选项。今天,Linux 中国将为大家带来系列公益训练营之 《Shell 编程训练营》,以帮助大家掌握 Shell 编程的精髓和奥义。本次训练营得到了阿里云开发者社区的大力支持。

在本次训练营当中,你将会学习到体系化的 Linux Shell 编程内容,从 0 开始,掌握 Shell 编程的各项基本信息。

本次课程将会分三天进行授课:

  • DAY 1:Shell 的基本介绍、常用命令以及 Shell 的流程控制
  • DAY 2:Shell 中的数组应用、参数处理和函数的应用
  • DAY 3:Shell 的编码规范、调试 Debug 方案以及公共函数库

在授课过程中, 老师将以实战与理论相结合的方式,带着你学习基础知识,并掌握实战能力。

在本次训练营中,训练营导师将会带着你用三天的时间,从 Shell 的基础开始,一起开发一个 Shell 脚本,帮助你掌握 Shell 编程的精髓,提升你的 Shell 编程能力。

此外,通过 Linux 中国专属渠道报名并完成训练营学习的同学,还将获得一张由 Linux 中国颁发的训练营结业证书、全网可查询的电子证书。并有机会获得一本赠送的最新计算机书籍(共计 30 本,直播时抽取赠送)。

课程安排

授课时间:2021年 9 月 6 日 - 2021 年 9 月 8 日 21:00 - 22:00(为期 3 晚)

授课方式:直播授课,有回放

授课费用:免费授课,无任何费用

上课地点:报名后进入专属钉钉群

报名链接:https://developer.aliyun.com/learning/trainingcamp/linux/2?utm_content=g_1000289929

Ansible 作为企业运维领域的必备工具,成为各企业招募运维工程师的必备技能。而对于每一个运维工程师来说,学习 Ansible 可以大大节省时间,提升你的工作效率,降低你的工作时间,一本万利。

Linux 中国聚集了大量的运维工程师,也关注到了这个需求,于是联合阿里云开发者社区,开启了 “Ansible 训练营”,帮助 Linux 中国的读者学习 Ansbile。

本次训练营全程免费,不含任何收费项目!

训练营采取直播的方式进行,并提供群内答疑。

学习过程中有任何问题,均可以在群内反馈,老师将在线答疑。

训练营形式

钉钉直播(视频)+社群(答疑)

授课老师介绍

Bestony,Linux 中国核心合伙人,多年运维工程师,曾就职于网易杭州研究院;Ansible 课程作者。

面向人群

  • 有一定 Linux 基础,想要针对 Ansible 进行深入进阶
  • 对 IT 自动化方向感兴趣,想要成为自动化运维&初中级运维工程师
  • 学过 Ansible ,但是知识结构不成体系
  • 想要进入大型互联网公司,获得更好的发展,掌舵自己的人生

课程内容

直播课程学习:Ansible 基础信息、Ansible 配置、Ansible AdHoc 的使用、Ansible Playbook 的使用、Ansible 核心模块学习

群内答疑: Bestony 老师还将在钉钉群内,为你提供社群答疑工作,帮助你更好的学会 Ansible 。

课程安排

  • 7.19 日,正式开营,学习 Ansible 的基础知识
  • 7.20 日,基础学习,学习 Ansible 的工作模式、Invertory 等信息
  • 7.21 日,实战学习,掌握 Ansbile 的 Plabook 和 adHoc 的用法
  • 7.22 日,基础学习,了解 Ansible 的核心模块

每天晚上 20:30 开课;40 分钟授课时间 + 20 分钟答疑时间;

训练营部分 PPT 预览

训练营部分 PPT 预览 1

训练营部分 PPT 预览 2

训练营部分 PPT 预览 3

训练营部分 PPT 预览 4

那么,晚上 20:30 见?

进营入口在此,请提前进营~

和个人使用服务器不同, 在企业中往往使用大量的服务器,这需要更高的效率、更多的运维自动化,甚至智能化运维等等。

对于企业来说,所有这些运维过程中的每一个人工处理的环节,都存在可以优化的空间和方式。 而一个合格的运维工程师,必须要掌握这些运维自动化的手段。

Ansible —— 就是解决批量化运维,自动化运维和提升运维效率的必备工具。有了 Ansible ,你就可以轻松的将你的运维工作,从一台服务器扩展到成百数千台服务器当中,让你用一分钟,完成过去需要数个小时的工作。

Ansible 也被广泛应用在各种中大型企业当中,比如我们所熟悉的字节跳动、美团、快手等,都在使用 Ansible,它的重要性,毋庸置疑。

为了帮助大家更好的掌握 Ansible ,我们联合阿里云开发者社区,一同打造了这一门精品训练营 —— 《运维自动化学习训练营》,并邀请一线资深工程师在线授课,帮助学生掌握 Ansible 的使用和开发。

参加 Ansible 训练营的好处

很多人最初都是尝试看视频、电子书来自学,但是一旦实验中遇到意外错误就没法解决,遇到不懂的技术点也只知其然,而不知其所以然,更有可能错过本应该重点掌握的技术关键。初学者几乎都会或多或少走一些技术弯路,有些人更是自学一年了还是进步不大,后悔入门时选错了学习方法。

通过参加 Ansible 训练营,你既可以掌握这些基本的技能,还可以在出现了问题后,及时获得老师的解答和帮助。相比于自学,可以让你更快的学会 Ansible。

Ansible 训练营计划

训练营形式

钉钉直播(视频)+社群(答疑)

授课老师介绍

Bestony,Linux 中国核心合伙人,多年运维工程师,曾就职于网易杭州研究院;Ansible 课程作者。

面向人群

  • 有一定 Linux 基础,想要针对 Ansible 进行深入进阶
  • 对 IT 自动化方向感兴趣,想要成为自动化运维&初中级运维工程师
  • 学过 Ansible ,但是知识结构不成体系
  • 想要进入大型互联网公司,获得更好的发展,掌舵自己的人生

课程内容

  1. 直播课程学习:Ansible 基础信息、Ansible 配置、Ansible AdHoc 的使用、Ansible Playbook 的使用、Ansible 核心模块学习
  2. 群内答疑: Bestony 老师还将在钉钉群内,为你提供社群答疑工作,帮助你更好的学会 Ansible 。

课程安排

  • 7.19 日,正式开营,学习 Ansible 的基础知识
  • 7.20 日,基础学习,学习 Ansible 的工作模式、Invertory 等信息
  • 7.21 日,实战学习,掌握 Ansbile 的 Plabook 和 adHoc 的用法
  • 7.22 日,基础学习,了解 Ansible 的核心模块

每天晚上 8:30 开课;40 分钟授课时间 + 20 分钟答疑时间;

报名链接

https://developer.aliyun.com/learning/trainingcamp/linux/1?utm_content=g_1000282661

报名以后,可以查看钉钉群公告,进行课前学习。