「龙蜥开发者说」第 19 期来了!开发者与开源社区相辅相成,相互成就,这些个人在龙蜥社区的使用心得、实践总结和技术成长经历都是宝贵的,我们希望在这里让更多人看见技术的力量。本期故事,我们邀请了龙蜥社区开发者宋彦岭来分享「亲历从基础设施构建到系统质量保障,龙蜥未来可期」。
欢迎阅读上期故事《历时三周,记录如何从 0 到 1 构建龙蜥衍生版》。开发者说系长期活动,对于积极投稿、多次分享的童鞋,我们还有神秘大礼鼓励!诚邀开发者们分享真实体验,以文会友、共同学习、一起进步。
本期故事主角:宋彦岭:龙蜥社区 QA SIG Maintainer,2022 龙蜥社区年度优秀贡献奖-代码之星获得者,联通数科 CULinux 研发团队测试工程师,主要参与社区 QA、T-One、系统运维等 SIG,负责 OS 版本测试与工具开发等工作。
大学毕业后,我有幸加入了一家网络安全领域的公司,成为了一名测试工程师。这是我第一次接触到 Linux 操作系统的相关内容,从此便开始了对操作系统的深入学习之旅。随着工作的不断深入,我逐渐了解了操作系统的各个领域,如性能测试中的 CPU、网络、内存、IO 等。在这个过程中,我对操作系统的理解逐步加深,也开始对操作系统的质量保障产生了浓厚的兴趣。
在我从事操作系统质量工作一年后,CentOS 停服事件发生了。在这个大背景下,国内的各个开源社区与对应的发行版都进入了快速发展和活跃期。也是基于此,我开始参与龙蜥社区的各项开源工作。最初,我只是将一些通用的测试用例对外开源或者做一些 upstream backport 工作。随着时间的推移,我逐渐参与了社区中各个 SIG (Special Interest Group,特殊兴趣小组)的深度工作,并将其结合我司的内部情况进行了一些定制化的工作。同时,我也不断将相关的 issue 回合社区,形成了一个良性循环。
如何有效地进行操作系统质量保障?我认为完备而细致的测试方案是至关重要的。在龙蜥社区 QA SIG 的双周会上,我们针对陆续发布的 Anolis 23、Anolis 8.8 等 OS 发行版不断完善整体测试方案,力争既有通用的、可推广的部分,又有对特定版本的定制部分。
截至目前,龙蜥社区已形成了一系列技术文档,包括测试流程、测试策略、测试标准等。从功能、性能、稳定性、兼容性等角度,对系统安装、运维、管理以及虚拟化、容器等细化领域分别做了细致的测试描述。结合 CI 测试、nightly 测试、release 测试等流程,针对 x86、Arm 等不同架构,我们形成了一个全面的测试矩阵,为质量保障工作提供了有效的理论指导。
(图/龙蜥OS测试标准)
上述测试矩阵庞大而细致,依靠人工跟踪每一项内容是不现实的。因此,我在团队内部基于源码部署了龙蜥社区开源项目 T-One 测试平台。该平台通过 tone-cli 集成了大量开源测试工具和自研自动化测试用例,并通过平台开放的 API 接口与 jenkins、gitlab、koji 等其他平台联动,实现了从代码提交、构建到测试调度、测试执行、测试报告的完整流程。在这个过程中,会产生一系列与适配特定操作系统、结果展示等相关的问题。通过反馈社区与需求协同开发,我们实现与内外部 T-One 的共同演进。
(图 自动化测试平台图示/已获作者授权)
除了自动化测试平台外,为提高研发效能,我们在内部部署了龙蜥的 SysOM 运维平台。该平台加强了系统监控、宕机分析、CVE 修复等能力,并且基于 SysAK 开源工具实现了对系统状态的快速检查。这些工具提高了操作系统的可观测性,为解决问题提供了有力参考。
(图 系统运维平台图示/已获作者授权)
此外,像龙蜥的 KeenTune(轻豚)、ancert 等工具在操作系统测试工作方面也提供了很大帮助。我们希望龙蜥社区能够继续开发更多的基础设施与效能工具,以提高操作系统开发和测试的效率和质量。
未来,我认为龙蜥操作系统开源社区的发展还有很大的潜力。首先,随着人工智能、云计算、大数据等技术的不断发展,操作系统也需要不断地更新和升级,以满足新的需求和挑战。例如,随着边缘计算的兴起,未来的操作系统需要更好地支持设备的联网和数据传输,同时也需要更好地保障数据的安全性。其次,随着互联网的普及和开源思想的深入人心,越来越多的人开始意识到开源软件的优越性。龙蜥社区的发展将会受到更多人的关注和支持,这将进一步推动开源操作系统的发展。同时,龙蜥社区也需要不断提升开发者的参与度和贡献度,以推动操作系统的持续发展和进步。最后,我相信在龙蜥社区生态伙伴们的共同努力下,未来的操作系统将会更加稳定、更加高效、更加安全。操作系统的开发将会更加注重用户体验和用户需求,同时也将会更加注重标准化和互操作性,以满足不同用户的需求和应用场景。
相关链接地址:OA 发布 SIG 主页:
T-One 测试平台:
https://tone.openanolis.cn/
更多龙蜥开发者的故事,点击下方图片阅读:
—— 完 ——
加入龙蜥社群
加入微信群:添加社区助理-龙蜥社区小龙(微信:openanolis_assis),备注【龙蜥】与你同在;加入钉钉群:扫描下方钉钉群二维码。