高性能存储 SIG 月度动态:erofs 新增支持多个重要特性,持续构建容器场景竞争力

简介: 高性能存储 SIG 月度动态送达!

高性能存储 SIG(Special Interest Group)目标:存储领域的发展历程,本质上是存储介质与软件栈相互促进发展的过程。高性能存储 SIG 致力于存储栈性能挖掘,当前主要聚焦内核 io_uring 技术优化异步 IO 性能,使用持久化内存提升业务单成本性能,容器场景存储技术优化等课题。高性能存储 SIG 期望通过社区合作,打造标准的高性能存储技术软件栈,推动软硬件协同发展。

01 SIG 整体进展

本次月报综合了 SIG 在 7、8 两个月的工作进展,涵盖多个重要模块的 CVE 修复,特性增强,性能优化和 bugfix 等。

  • erofs 新增支持多个重要特性,持续构建容器场景下的竞争力。
  • 与中兴同学合作修复一起 xfs 死锁问题,并初步达成后续共同加固 ANCK xfs 质量的合作意向。
  • 启动当前版本 io_uring 代码质量加固,预计下个版本发布。

02 项目具体进展

1)CVE

CVE-2023-2124:修复 xfs out-of-bounds 内存访问问题(PR1918/PR2027)。

CVE-2023-34256:修复 ext4 crc16 out-of-bounds read 问题(PR1793/PR2004)。

CVE-2023-3212:修复 gfs2 NULL pointer dereference 问题(PR2030/PR2041)。

CVE-2023-3111:修复 btrfs UAF 问题(PR2039/PR2040)。

2)erofs

ANCK 5.10

因 RAFSv6 的系列补丁引入,导致 erofs 通过块接口挂载会 crash。该问题在 ANCK 5.10.134-15.1 紧急做了修复。(PR1987)

回合主线透明压缩特性,支持 LZ4/LZMA 压缩算法,支持 ztailpacking 和压缩去重等。(PR2076/PR2080/PR2081/PR2082)

erofs-utils

fuse 模式支持 xattr long name prefix 特性。该特性可以优化存储 overlayfs xattr 元数据重复 name 的额外开销,在典型负载下可节省 ~15% 的镜像存储空间。

支持 xattr bloom filter 特性,该特性可以加速 negative xattr lookup 的性能,例如 “ls -lR” 负载下可优化 ~20% 性能。

支持 rebuild 模式,该模式主要应用于 tarfs 场景,可以将多个 OCI 层转换而来的 erofs 镜像按照类似 overlayfs 模型合并为一个 erofs 镜像。

外部会议

已申报 9 月底上海 Kubecon + Open Source Summit 2023 会议议题,届时将同步 erofs 在各种场景(尤其是云场景)的最新进展。

3)xfs

Revert “anolis: xfs: account extra freespace btree splits for multiple allocations”,该补丁之前是为了解决一个小概率 extent-to-btree conversion 失败问题,但由于其修改了分配策略,可能增加其他 corner case 的发生概率。(PR1837)

中兴同学报告了一起 xfs_create() 与 xfs_fs_destroy_inode() 流程死锁问题,该问题在最新上游主线 v6.5-rc1 已经修复:

https://github.com/torvalds/linux/commit/b742d7b4f0e03df25c2a772adcded35044b625ca

为了方便后续补丁的回合,本次修复方案尽可能回合了相关依赖补丁。(PR1990)

此外,与中兴同学就社区 xfs 的维护这块达成合作意向,后续将共同加固 ANCK xfs 质量。

4)ext4

将社区上游针对 fast commit 的一系列 bugfix 回合到 ANCK 5.10。(PR2066)

ext4 fast commit 对 fsync 比较频繁的场景有比较明显的性能提升,如 benchmark fs_mark,数据库 MySQL/PostgreSQL 等。

ext4 delalloc append 写场景(如 append 写日志),目前存在大量没有必要的 i_disksize 更新的操作,这将影响该场景下的性能。

Liu Song 针对该场景进行了优化,测试结果显示,在 Kafka 2.6.2 版本及包大小 2K 的场景,性能提升 10%。

目前该优化已经合入社区上游主线,并及时回合到 ANCK 5.10。(PR2083)

5)io-uring

在随机写场景,io_uring sqthread 和文件系统 IO 处理 kworker 可能运行在同一个 cpu 上。

由于之前修改了 sqthread 的 nice 值,可能导致文件系统 IO 处理 kworker 得不到及时调度,这将显著影响性能。

因此,我们将之前修改 sqthread nice 值的补丁做了回退处理。(PR1888/PR1889)

在更新 liburing 版本后,相应的 io_uring 的 testcase 也得到了更新。

在新的 testcase 下,当前 ANCK 5.10 暴露出较多的问题,这些实际在社区高版本内核中都已得到解决,但回合比较困难。

社区 5.10 stable 已经同步io_uring 的版本至 5.15.85,因此我们决策也跟随 stable 版本进行升级,目前大部分自研特性都已经完成移植。

由于 sqthread 从 kthreadd 创建的内核线程,演变为应用进程 fork 的子进程,我们的 percpu sqthread poll 特性需要相应适配,预计在下个版本完成。

6)dsms

继续跟进社区对 dsms 软件包的反馈,继续修复 dsms-storage 模块安全漏洞和预览版未处理的 BUG。

dsms-engine 任务管理器的处理流程和 dsms-ui 前端界面优化进行中。

03 下一步计划

1. erofs-utils 支持多线程压缩,并发布 1.7 版本。

2. erofs 实现基于 fsverity 的全镜像校验,压缩特性支持 64k/16k page size + 4k block size。

3. io_uring 基于 5.10 stable 升级,加固 ANCK 5.10 io_uring 质量。

4. dsms 问题修复和持续优化。


相关链接:

高性能存储 SIG 主页:

https://openanolis.cn/sig/high-perf-storage

注:更多龙蜥 SIG 月度动态可点击这里查看。

—— 完 ——

加入龙蜥社群

加入微信群:添加社区助理-龙蜥社区小龙(微信:openanolis_assis),备注【龙蜥】与你同在;加入钉钉群:扫描下方钉钉群二维码。

关于龙蜥

龙蜥社区是立足云计算打造面向国际的 Linux  服务器操作系统开源根社区及创新平台。龙蜥操作系统(Anolis OS)是龙蜥社区推出的 Linux 发行版,拥有三大核心能力:提效降本、更加稳定、更加安全。

目前,Anolis OS 23 已发布,全面支持智能计算,兼容主流 AI 框架,支持一键安装 nvidia GPU 驱动、CUDA 库等,完善适配 Intel、兆芯、鲲鹏、龙芯等芯片,并提供全栈国密支持。

加入我们,一起打造面向云时代的操作系统!

相关文章
|
1月前
|
供应链 监控 安全
对话|企业如何构建更完善的容器供应链安全防护体系
随着云计算和DevOps的兴起,容器技术和自动化在软件开发中扮演着愈发重要的角色,但也带来了新的安全挑战。阿里云针对这些挑战,组织了一场关于云上安全的深度访谈,邀请了内部专家穆寰、匡大虎和黄竹刚,深入探讨了容器安全与软件供应链安全的关系,分析了当前的安全隐患及应对策略,并介绍了阿里云提供的安全解决方案,包括容器镜像服务ACR、容器服务ACK、网格服务ASM等,旨在帮助企业构建涵盖整个软件开发生命周期的安全防护体系。通过加强基础设施安全性、技术创新以及倡导协同安全理念,阿里云致力于与客户共同建设更加安全可靠的软件供应链环境。
150306 32
|
18天前
|
存储 监控 对象存储
ACK 容器监控存储全面更新:让您的应用运行更稳定、更透明
针对本地存储和 PVC 这两种容器存储使用方式,我们对 ACK 的容器存储监控功能进行了全新升级。此次更新完善了对集群中不同存储类型的监控能力,不仅对之前已有的监控大盘进行了优化,还针对不同的云存储类型,上线了全新的监控大盘,确保用户能够更好地理解和管理容器业务应用的存储资源。
|
23天前
|
存储 监控 对象存储
ACK容器监控存储全面更新:让您的应用运行更稳定、更透明
介绍升级之后的ACK容器监控体系,包括各大盘界面展示和概要介绍。
|
29天前
|
供应链 监控 安全
对话|企业如何构建更完善的容器供应链安全防护体系
本期节目围绕软件供应链安全、容器安全的主要挑战以及阿里云如何帮助用户等维度展开了深入的讨论。
|
1月前
|
人工智能 运维 监控
容器服务Kubernetes场景下可观测体系生产级最佳实践
阿里云容器服务团队在2024年继续蝉联Gartner亚洲唯一全球领导者象限,其可观测体系是运维的核心能力之一。该体系涵盖重保运维、大规模集群稳定性、业务异常诊断等场景,特别是在AI和GPU场景下提供了全面的观测解决方案。通过Tracing、Metric和Log等技术,阿里云增强了对容器网络、存储及多集群架构的监控能力,帮助客户实现高效运维和成本优化。未来,结合AI助手,将进一步提升问题定位和解决效率,缩短MTTR,助力构建智能运维体系。
|
2月前
|
供应链 安全 Cloud Native
阿里云容器服务助力企业构建云原生软件供应链安全
本文基于2024云栖大会演讲,探讨了软件供应链攻击的快速增长趋势及对企业安全的挑战。文中介绍了如何利用阿里云容器服务ACK、ACR和ASM构建云原生软件供应链安全,涵盖容器镜像的可信生产、管理和分发,以及服务网格ASM实现应用无感的零信任安全,确保企业在软件开发和部署过程中的安全性。
|
2月前
|
缓存 Serverless 调度
Moka:ACS 容器计算服务助力CI/CD场景提效降本 70%
Moka,作为国内发展最快的HR SaaS厂商之一,在ACS产品初期就与阿里云产品团队紧密联系产品需求及体验反馈,本文将着重分享我们使用ACS在CI/CD 场景的最佳实践。
|
2月前
|
人工智能 Cloud Native 调度
阿里云容器服务在AI智算场景的创新与实践
本文源自张凯在2024云栖大会的演讲,介绍了阿里云容器服务在AI智算领域的创新与实践。从2018年推出首个开源GPU容器共享调度方案至今,阿里云容器服务不断推进云原生AI的发展,包括增强GPU可观测性、实现多集群跨地域统一调度、优化大模型推理引擎部署、提供灵活的弹性伸缩策略等,旨在为客户提供高效、低成本的云原生AI解决方案。
|
2月前
|
存储 安全 数据中心
Docker 容器凭借轻量级和高效的特性,成为应用部署的重要工具
Docker 容器凭借轻量级和高效的特性,成为应用部署的重要工具。本文探讨了 Docker 如何通过 Namespace 和 Cgroups 实现 CPU、内存、网络和存储资源的隔离,提高系统安全性和资源利用率,以及面临的挑战和应对策略。
64 1
|
3月前
|
机器学习/深度学习 数据采集 Docker
Docker容器化实战:构建并部署一个简单的Web应用
Docker容器化实战:构建并部署一个简单的Web应用

热门文章

最新文章