从openEuler生态的发展看基础软件的崛起之路

原创
2021/01/04 17:49
阅读数 1W

Red Hat 对 CentOS 发行策略的改变,使得 CentOS 不再是一个稳定的生产环境操作系统,这个曾经风靡全球的服务器操作系统完成了自己的历史使命。在感谢 CentOS 社区这些年来为开发者群体所贡献的一切的同时,众多在生产环境中使用 CentOS 作为服务器系统的公司和开发者不得不寻找 CentOS 替代品。

其中,Ubuntu、SUSE、Debian 等已经非常成熟的 Linux 发行版成为了开发者群体中呼声最高的替代品。当然,在开源社区中永远不缺马上行动的人。很快,CentOS 创始人 Gregory Kurtzer 宣布从 CentOS 8 中分支新项目 Rocky 以延续稳定版的 CentOS,此后又有多个国外的技术团队宣布将构建基于 CentOS 8 的稳定版开源分支。

从目前的形势来看,当前 CentOS的替代方案更多来自于国外的团队,对于国内很多需要从 CentOS 迁移到其他服务器系统的厂商来说,未来仍然存在受限的隐患。因此,像 openEuler 这样开放多元且包容的开源操作系统就显得尤为难得。

openEuler于 2019 年 12 月 31 日正式开源,并成立了 openEuler 社区。

据openEuler 技术委员会委员熊伟博士透露,openEuler有两个目标,首先是做一个服务器的发行版操作系统,在云和服务器上都能使用;其次是构建一套完整的工具,能够从 openEuler 标准发行版中剪裁、定制出适合不同场景的小OS。

围绕 openEuler社区,个人开发者可以获得开源且免费的 openEuler 社区版操作系统,同时可以用贡献代码或文档的形式回馈开源社区,参与到开源操作系统生态建设中;企业用户可以获得 openEuler 生态下完善的企业级应用工具链,也能根据自身行业需要获得由各大专业基础软件厂商基于 openEuler 推出的特色商业发行版;openEuler 的生态合作伙伴则可以基于 openEuler 定制基于不同硬件架构的操作系统,在满足不同行业需求的同时丰富 openEuler 社区的生态,实现整个开源社区的良性循环。

用 openEuler开源社区理事会理事长江大勇的话来说,openEuler是一个底座,在此之上用户可以根据自己的场景、市场、行业去增加差异化的内容,这样既能实现高效协作,也有差异化部分来够满足不同行业客户的需要,实现真正的创新。

过去,中国软件产业“重应用,轻基础”局面的形成,与经济和产业的发展水平是强相关的。在经济高速成长阶段,千行百业更需要能够直接促进业务效率提升的应用软件,为应用软件开发商提供了较为广阔的市场空间,而对于基础软件的发展则相对不够有利。加之国外的操作系统品牌发展历史久远、自身体系及生态构成高度完善,更压缩了国产操作系统的生存空间,也让我们流失了本土的人才。如今中国经济已实现极大提升,发展如操作系统这样的长回报周期项目,在商业上已显现出较大机遇。

另外,在现实层面,基于 Linux 研发操作系统的很多国内厂家长期以来搞的都是“闭门造车”,各自分食本就狭小的市场空间,更显占有率低微。对此,开源社区的治理模式,显然是最值得当今中国基础软件业参考和仿行的——集万千开发者和开发团队之力,打破生态孤岛,坚持开源和开放,共同打造面向广阔市场的操作系统软件生态。而这,正将是 openEuler 实现弯道超车的崛起路径。

为了实现 openEuler 的发展目标,openEuler社区始终坚持开放治理的开源理念。

早在openEuler 开源之前,华为就一直在对开源社区做出积极的贡献。在 Linux 内核 5.8 版本中,华为在全球范围对内核的贡献排名第二,修改代码量全球排名第一。在 Linux Kernel 5.10 中,华为提交的补丁(变更集,changeset)数量为 1434 个,占比 8.9%,居全球排名第一。另外,华为还为 ARM 架构打通全栈能力,贡献了全球超过 40+ 的主流开源社区。

正是得益于多年来对 Linux 内核等诸多基础软件开源社区的贡献,让华为积累了不输国外任何技术团队的基础软件研发能力,也让 openEuler 的发展拥有了一个很好的起点。

而在开源之后,华为将 openEuler积累多年的技术悉数开放出来,通过完善的文档,丰富的线上线下培训课程,出版书籍教程等方式,降低社区参与门槛,吸引更多的开发者加入社区参与贡献。同时,openEuler 社区还发布了一系列提升开发效率的工具,例如自动化、智能化性能调优引擎A-Tune;能帮助社区开发者更快的将开源软件引入openEuler社区,补充更多的测试用例的可持续集成软件平台Compass-CI等,让开发者和生态合作伙伴更好地参与 openEuler 生态建设。

另一方面,openEuler 社区自身也构建了完善的开放治理模式。自开源之日起,社区就建立了技术委员会,技术委员会不断吸纳新的理事单位和个人贡献者参与,每周进行技术会议,深度探讨社区与技术的发展情况。同时,社区还建立了许多个特别兴趣小组(SIG),SIG基本完整覆盖了内核、虚拟化、云原生,系统桌面等全方位的基础软件技术方向,以及社区开发和治理相关的运营管理方向,这些小组通过定期自发的会议共同协作支持社区发展,成为社区发展的中坚力量。

在开源整整一年的时间里,openEuler 社区发展迅猛。目前已经拥有了 3 万社区用户,2 万多个合入的拉取请求(Pull Request),2000 多名社区贡献者,7000多款社区软件,70多个特别兴趣组(SIG)以及 7 个商业发行版。其中,最新的openEuler 20.09版本来自华为以外的贡献比例接近 40%,成为国内首个由不同厂商、不同机构甚至包括个人参与,共同协作完成,纯社区化运作开发出来的大型 OS 系统。

通过开放治理的开源协作模式,openEuler 获得了来自产业生态伙伴的大力支持,在生态建设方面也取得了里程碑式的发展。

目前,已有麒麟软件、统信软件、中科院软件所、普华软件、麒麟信安、北京拓林思等6家合作伙伴基于 openEuler 推出了定制的商业发行版操作系统,服务范围涵盖政企、金融、私有云、物联网、电力等行业领域。其中,客户和交易规模堪称业界第一的建行信用卡业务通过将其核心系统重构,平滑切换到银行核心系统+鲲鹏+麒麟OS(基于openEuler),实现改造后性能提升13%,成为年度最佳的 openEuler 企业级用户案例。

此外,共有60家公司开发者参与了openEuler 社区贡献,涉及软件包数量达到 7000多个 。在这些社区合作伙伴的共同努力下,围绕openEuler操作系统的社区生态已经初具规模。

从具体的技术贡献来看,自最新的20.09版本开始,openEuler已经能够支持ARM、x86、RISC-V三大主流指令集架构。其中,对开放指令集 RISC-V 架构的支持来自中国科学院软件研究所的代码贡献。此外,新版本还加入了对 ARM 生态开发板树莓派的支持,发布了全新虚拟化平台 StratoVirt,机密计算框架 secGear,安全框架 IMA ,加入了由麒麟软件贡献的图形化界面 UKUI 等等,openEuler 的生态在合作伙伴的参与下得到了进一步完善。

12月25日,openEuler Summit 2020 大会成功举办。在以“一个面向未来的操作系统是怎样的”为主题的大会圆桌论坛中,来自 openEuler 社区的维护者和生态合作伙伴分别从各自的角度介绍了 openEuler 生态发展的近况和企业落地实践。

来自北京拓林思软件有限公司的陈棋德以数据库研发过程中的性能调优为例,讲解了 openEuler 下的应用程序性能调优实践。在操作系统下开发分布式数据库时,往往会关注函数调用耗时多少和调用是否频繁、哪个线程消耗更多磁盘时间、内存缓存了哪些数据、网络请求是否延迟等这些涉及性能的问题,这些都对操作系统的稳定性和性能提出了很高的要求,足见openEuler操作系统作为数据库研发平台的稳定性。

关于 openEuler 新加入的对 RISC-V 架构以及树莓派的支持,来自中国科学院软件研究所和华为技术有限公司的周鹏、张旭舟结合构建操作系统发行版的一般方法,介绍了构建 openEuler 面向 RISC-V 的相关工作和对果壳(NutShell)处理器的适配支持工作;并进一步讨论操作系统版本构建面临挑战与机会,特别是操作系统包依赖管理现状和问题,以及一种新的操作系统依赖管理、分包管理模式、构建模式探索。

同样来自中国科学院软件研究所和华为的方亚芬、李宝林则分享了 openEuler 移植到树莓派并构建树莓派镜像的实践,以及在安装了 openEuler 操作系统的树莓派上通过 kubernetes 部署 iSula 容器集群的实践 。

此外,来自 Lianro 的技术专家高章飞和华为技术工程师李国柱还介绍了异构系统的通用加速器框架 UADK 生态及其开发进展。据介绍,UACCE 是海思和 Lianro 一起合作开发的,专门为异构系统设计的加速器框架,主要内核驱动已经合入 Linux Kernel 主线 。来自中国电信股份有限公司云计算分公司的范彬介绍了如何使用 ebpf 技术实现高效无性能损失的网络监控系统替代编写内核模块。

业界常谈,对于一个操作系统来说,发展难点不在操作系统本身,而是围绕操作系统展开的周边生态建设。在众多行业生态合作伙伴的支持下,围绕openEuler 社区已经形成了一个涵盖操作系统、计算机硬件、数据库、系统架构等基础软件领域的丰富生态。在以 5G、物联网、人工智能等前沿技术为方向的未来软件基础设施建设中,openEuler 生态将发挥重要的作用。

除了操作系统以外,本次大会还围绕云与云原生、虚拟化技术、开源和基础设施、信息安全、基础软件等议题,聚焦基础软件及操作系统几大核心维度开展深度探讨,分享操作系统、云原生等领域的前沿实践经验与技术干货,探索基础软件在国内的发展之路。

在基础软件领域长期被国外技术垄断的背景下,国内的基础软件发展一直为人诟病。

开源运动可以算是人类历史上最大的奇迹之一,来自世界各地的人,在不同的国家不同的制度下,用不同的语言,共同创造了所有人都可以自由使用的工具。包括Linux 内核在内的无数伟大的基础软件都是在开源的协作模式下诞生的。

openEuler的开源之路,在未来还将会有哪些思路?正如openEuler社区技术委员会主席胡欣蔚在峰会上的观点:openEuler将投入更多的精力去做一些普通开发者、厂商所无法实现的特性,同时通过更加完善的治理,让更多的用户、开发者加入开源社区中,让openEuler开源社区造福更多企业和个人用户。未来,openEuler还将会出现在云计算和边缘计算上,紧贴客户需求开发更多的应用创新场景。

而openEuler 社区的繁荣也让我们看到了一条基础软件崛起的道路。尽管openEuler 目前还很年轻,仍然存在很多不足,但是它的开源治理在短短一年的时间里带来的成效,确实让我们看到了一款基础软件在国内最好的发展模式。openEuler开源社区连接技术、生态和商业,汇聚每一位开发者的创新力量,最终实现更多0到1的突破,与全世界开发者共同探索下一代操作系统的星辰大海,让创新技术更好地推动社会进步。

展开阅读全文
加载中
点击引领话题📣 发布并加入讨论🔥
0 评论
1 收藏
0
分享
返回顶部
顶部