米Facebook、Linux関連の複数のツールに関する取り組みを公開
米Facebookは10月30日、同社によるLinux関連のオープンソースコンポーネント開発に関する取り組みを発表した。同社はBPFやBtrfsといったLinuxのコンポーネントを活用し、開発にも関わっているという。
Facebookは自社データセンターにおける問題点を解決するために社内にLinuxカーネル開発者やLinuxアプリケーション開発者を抱えており、協力してサーバー群の効率の良い管理のために開発したコンポーネント/ツールを開発・公開しているという。これらは大規模なサービスを提供するプラットフォームで有用なコンポーネント/ツールとしている。
同社が開発に関わるオープンソースソフトウェアに関する情報をまとめたサイト「Facebook Open Source」のLinuxカテゴリでは、現時点でBPF(Berkeley Packet Filter)、Btrfs、Netconsd、Cgroup2、Psi、Oomdの6つが掲載されている。
BPFはパケットフィルタリングエンジンで、FacebookではBPFを活用したトラフィック最適化システムなどを開発しているという。また、Btrfsはリソース利用の効率化のために利用しているという。Cgroup2はワークロードのグループ化、構造化のためのメカニズムで、Btrfsと併用したI/Oの制御をはじめ、メモリ、中央処理装置などの管理・制御に利用している。
NetconsdはFacebookのオープンソースプロジェクトとして開発されたツールで、Linuxカーネルのログの受け取りと処理のためのデーモン。これを利用してデータセンターの稼働を数値化しているいう。Psiはメモリ、CPU、I/OについてのLinuxリソースの不足を測定するもので、FacebookではCgroup2と併用して、Cgroup単位でリソースの使用をみているという。
OomdはFacebookが8月にオープンソースにしたユーザースペースのOOM(Out of Memory)Killer。メモリ不足によるシステム停止を回避するためにプロセスを強制終了させる仕組みで、これを利用してOOM時の条件を設定できるという。
Facebook Open Source
https://opensource.fb.com/#linux