BumbleBee、eBPFプログラムの作成と配布を簡素化する優れたプロジェクト

Solo.io、 クラウドコンピューティング会社、マイクロサービス、サンドボックスおよびサーバーレス、 オープンソースプロジェクト「BumbleBee」を発表。 新しいプロジェクトは開発者の経験を簡素化します eBPFツールを構築、パッケージ化、配布する、ソロによると。

丸鼻蜂 ユーザースペースコードを自動的に生成する eBPFツールの開発を繰り返していると同社は説明した。 また、Dockerのようなエクスペリエンスを提供します eBPFプログラムをパッケージ化します。 これにより、他のOCIイメージワークフローに接続して、公開および配布することができます。

マルハナバチについて

丸鼻蜂 eBPFプログラムをコンテナイメージとしてパッケージ化することが可能になります 任意のシステムで実行できるOpenContainer Initiative(OCI) 再コンパイルまたは追加のコンポーネントを使用せずに ユーザースペースで。

eBPFプロセッサからのデータの処理を含む、カーネル内のeBPFコードとの相互作用は、BumbleBeeによって処理されます。これは、このデータをメトリック、ヒストグラム、またはログの形式で自動的にエクスポートします。カールユーティリティ。 提案されたアプローチにより、開発者はeBPFコードの記述に集中できます。 ユーザースペース、アセンブリ、カーネルへのロードからこのコードとの相互作用を整理することで気を散らさないでください。

Solo.ioのCEO、 Idit Levineは、次のように述べています。

同社は、カーネルレベルで実行されるeBPFテクノロジーにアクセスするために必要な繰り返しユーザースペースコードを自動的に生成するBumbleBeeを開発しました。 BumbleBeeには、ログ、メトリック、ヒストグラムなどのマップを自動的に公開することにより、eBPFプログラムのユーザースペースコードを自動的に生成するコマンドラインインターフェイス(CLI)が含まれています。

eBPFプログラムを管理するには、 Dockerスタイルの「bee」ユーティリティが提供されており、eBPFドライバをすぐにダウンロードできます。 外部リポジトリから関心があり、ローカルシステムで実行します。

このツールキットを使用すると、選択したトピックのeBPFドライバーのCコードフレームを生成できます(現在、ネットワークスタック呼び出しとファイルシステムをインターセプトするファイルドライバーとネットワークドライバーのみがサポートされています)。 生成されたフレームワークに基づいて、開発者は興味のある機能をすばやく実装できます。

BCC(BPFコンパイラコレクション)とは異なり、 BumbleBeeは、各カーネルバージョンのドライバーコードを完全に再構築しません Linux(BCCは、eBPFプログラムが実行されるたびに、Clangを使用してオンザフライでコンパイルを使用します)。

移植性の問題を解決するには、 開発中 ツールキット CO-REとlibbpf。コードをXNUMX回だけコンパイルできます。 ロードされたプログラムを現在のカーネルお​​よびBTFタイプ(BPFタイプ形式)に適合させる特別なユニバーサルローダーを使用します。

BumbleBeeはlibbpf上のプラグインであり、標準のRingBufferおよびHashMapeBPFマップ構造に配置されたデータの自動解釈および視覚化のための追加のタイプを提供します。

最終的なeBPFプログラムを作成し、それをOCIイメージとして保存するには、次のコマンドを実行するだけです。

bee build file_with_code name:version

そして、コマンドを実行します

bee run name:version

デフォルトでは、コントローラーから受信したイベントはターミナルウィンドウに表示されますが、必要に応じて、コントローラーにバインドされたネットワークポートでcurlまたはwgetユーティリティを呼び出すことでデータを取得できます。

ドライバーは、OCI準拠のリポジトリーを介して配布できます。たとえば、ghcr.ioリポジトリー(GitHub Container Registry)から外部ドライバーを実行するには、次のコマンドを実行できます。

bee run ghcr.io/solo-io/bumblebee/tcpconnect:$(bee version)

コントローラをリポジトリに配置するために、コマンドが提供されます

bee push

そしてバージョンをリンクするには

bee tag

eBPFの最大の利点は、単に効率です。 より多くのベンダーがそれらの機能を利用するにつれて、セキュリティ、ネットワーキング、およびストレージプラットフォームの処理の総コストは減少するはずです。 

、eBPFは、クラウドサービスプロバイダーなどのWeb規模の企業で広く使用されています。 Facebookはデータセンターの主要なソフトウェア定義ロードバランサーとして使用していますが、GoogleはKubernetesマネージドオファリング内でオープンソースのCiliumネットワーキングソフトウェアを使用しています。 

ただし、将来的には、より多くのオペレーティングシステムで容量が有効になるため、eBPFがより広く採用されるようになるのは時間の問題だとLevine氏は言います。

最後に あなたがそれについてもっと知りたいなら、詳細を確認できます 次のリンクで。


コメントを残す

あなたのメールアドレスが公開されることはありません。 必須フィールドには付いています *

*

*

  1. データの責任者:AB Internet Networks 2008 SL
  2. データの目的:SPAMの制御、コメント管理。
  3. 正当化:あなたの同意
  4. データの伝達:法的義務がある場合を除き、データが第三者に伝達されることはありません。
  5. データストレージ:Occentus Networks(EU)がホストするデータベース
  6. 権利:いつでも情報を制限、回復、削除できます。