又一批Linux內核組件與工具開源!來自Facebook!
近日,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 條件的響應,例如暫?;蚪K止非必需項、重新分配系統中的內存等操作。