近日,Facebook 开源了一套解决重要计算集群管理问题的 Linux 内核组件和相关工具,这些项目覆盖了资源控制、资源利用、工作负载隔离、负载均衡、测量和监控等方面:BPF、Btrfs、Netconsd、Cgroup2、PSI、Oomd。

Facebook 表示这些项目现在已大规模用于其所有基础设施生产环境中,并用于其它许多企业组织的环境中。

BPF

BPF 是 Linux 内核中一种高度灵活、高效率的代码执行引擎,可以让字节码在各个 hook 点运行,以使用自定义代码。虽然 BPF 已广泛用于数据包过滤,但是 BPF 的指令集具有很强的通用性和灵活性,足以支持和允许除网络之外的众多使用场合,比如跟踪和安全(比如沙箱)。

https://facebookmicrosites.github.io/bpf/

Btrfs

Btrfs 是下一代文件系统,它以当下的数据中心为基础。它是一个写时复制(CoW)文件系统,专注于高级功能实现、容错、修复和轻松管理。Btrfs 旨在解决和管理大型存储子系统,并支持快照、联机碎片整理、池化和集成的多设备支持等功能。

https://facebookmicrosites.github.io/btrfs/

Netconsd

Netconsd 是一个基于 UDP 的 netconsole 守护程序,为 Linux netconsole 消息提供轻量级传输。它接收并处理来自 Linux 内核的日志数据,并将其作为结构化数据提供以给生产工程师以快速识别集群中问题。

https://facebookmicrosites.github.io/netconsd/

Cgroup2

Cgroup2 是下一代 Linux 内核机制,用于分组和构造工作负载,以及控制分配给每个组的系统资源量。它具有内存、I/O、中央处理单元等控制器,它还允许隔离工作负载,并为每个工作负载确定资源分配的优先级和配置。

https://facebookmicrosites.github.io/cgroup2/

PSI

PSI(Pressure Stall Information,压力失速信息)首次提供了一种规范,通过内存、CPU 和 I/O 这三种主要资源的新压力指标来量化资源短缺。这些压力指标与此次开源的其它内核和用户空间工具相结合,可以在智能开发和响应时检测资源短缺。PSI 统计数据为即将发生的资源短缺提供早期预警,从而实现更积极主动、细致的响应。

https://facebookmicrosites.github.io/psi/

Oomd

Oomd 是一个用户空间 OOM(内存不足)进程杀手,可以更好地了解系统上运行的进程的上下文和优先级。它允许配置对 OOM 条件的响应,例如暂停或终止非必需项、重新分配系统中的内存等操作。

https://facebookmicrosites.github.io/oomd/

详情信息查看发布公告与对应项目的开源主页。

相关链接

  • Linux Kernel 的详细介绍:点击查看
  • Linux Kernel 的下载地址:点击下载

Facebook 开源了一整套重要的 Linux 内核组件与工具!相关推荐

  1. Facebook 开源了一整套重要的 Linux 内核组件与工具!

    近日,Facebook 开源了一套解决重要计算集群管理问题的 Linux 内核组件和相关工具,这些项目覆盖了资源控制.资源利用.工作负载隔离.负载均衡.测量和监控等方面:BPF.Btrfs.Netco ...

  2. Facebook开源Linux内核组件和工具:BPF、Btrfs、Netconsd、Cgroup2、PSI、Oomd

    内容摘要: 作者:Tejun Heo(Facebook的软件工程师)和Thomas Connally. Facebook工程文化的一个组成部分始终是我们的开发团队致力于开发开源解决方案,以解决实际的生 ...

  3. linux内核关系绘图工具_Linux中的绘图工具

    linux内核关系绘图工具 如果您是像我这样的大型开源狂热者,您可能会经常遇到有关专有工具的开源替代品的问题. 从"替代方案到Microsoft®Visio®"部门,这里有三个技巧 ...

  4. Linux内核内存检测工具KASAN

    KASAN ['kæzən] KASAN 是 Kernel Address Sanitizer 的缩写,它是一个动态检测内存错误的工具,主要功能是检查内存越界访问和使用已释放的内存等问题.KASAN ...

  5. Linux内核死锁检测工具——Lockdep

    文章目录 前言 配置内核 简单的AB-BA死锁案例 实际项目中的死锁 前言 死锁是指两个或多个进程因争夺资源而造成的互相等待的现象,如进程A需要资源X,进程B需要资源Y,而双方都掌握对方所需要的资源, ...

  6. Linux 内核调试必备工具

    必备工具集 trace perf 对linux系统的优化非常有帮助,有时间可以仔细研究下,首先开个头记录下 关键是可以使用python3 脚本 对系统的数据采样之后进行数据分析,虽然目前还不会对系统的 ...

  7. linux内核组件分析之--设备驱动模型之bus

    前面我们分析了设备驱动模型中的device和driver,device和driver本来是不相关的东西,只因为bus的存在,才被联系到了一起.本节就来看看设备驱动模型中起枢纽作用的bus.本节的头文件 ...

  8. 搭建Linux内核代码浏览工具LXR

    简介 LXR 是一个通用的源代码索引器和交叉引用器 它提供了一个基于 web 的可浏览任意定义以及任意标识的用法. 它支持很多种语言.在linux平台下,一款非常好用的源代码浏览工具.废话不多说,下面 ...

  9. 明尼苏达大学研究团队道歉,Linux内核维护人员:拒绝

    丰色 发自 凹非寺 量子位 报道 | 公众号 QbitAI 上周,明尼苏达大学因提交"垃圾代码"做漏洞分析,被Linux内核社区拉黑一事,在网上吵得沸沸扬扬. 很快,明尼苏达大学研 ...

最新文章

  1. 链栈的建立、判空、入栈、出栈、求长、访顶、清空和销毁
  2. 自己发现的数学规律一
  3. html5 文件转byte[],JS 文件base64、File、Blob、ArrayBuffer互转
  4. Boost:双图bimap与双向地图的测试程序
  5. 【Java】switch 是否能作用在 byte 上,是否能作用在 long 上,是否能作用在 String 上
  6. centos7下python3与python2共存并且开启py3虚拟环境
  7. normalizr API
  8. 2021年泸州市高考三诊成绩查询,2020-2021学年四川省泸州市高考数学三诊试卷(理科)及答案解析...
  9. Hibernate---延迟加载和OpenSessionInView
  10. php 卷积神经网络,PyTorch上实现卷积神经网络CNN的方法
  11. 最坑爹的硬盘:希捷ST2000DM001
  12. 一篇文章完全搞懂正则化(Regularization)
  13. Nginx网页优化(版本、缓存时间、日志分隔、连接超时)
  14. 房子要室内设计了,先从讲装修的施工工艺开始!
  15. 水瓶座|水瓶座性格分析
  16. Elasticsearch 学习(二).实战使用
  17. android手机连接hdmi,手机hdmi转接线的介绍以及连接方法
  18. 如何删除有外键关系的两张表的数据
  19. 免费报名 | 腾讯云自研数据库CynosDB交流会
  20. 一年中重要的节日列表_一年中最重要的节日分别是?

热门文章

  1. provider android简书,Android 使用ContentProvider在应用间共享数据
  2. java获取进程端口_查看进程的端口号
  3. 序列化的作用_Java 序列化的高级认识
  4. python整商运算符_python中的运算符
  5. Source Insight学习教程
  6. excel自动生成舒尔特表_财务总监:超完美Excel全套账财务系统,自动生成报表,收好喽...
  7. 如何得出数组里最大_相邻两数的最大差值(超巧妙解法)
  8. 录像带转存电脑的方法_误删微信记录别着急,教你几招可靠的恢复微信记录方法...
  9. 联想拯救者r720适合java么_联想拯救者哪个型号好 联想拯救者r720怎么样【详解】...
  10. r语言做绘制精美pcoa图_R语言统计与绘图:绘制QQ图