並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 32 件 / 32件

新着順 人気順

eBPFの検索結果1 - 32 件 / 32件

  • eBPFを使った自動テストツール「Keploy」がすごい

    この記事はKeployのバージョンv2.0.0-alpha53 を前提に執筆しております。 Keployとは KeployはeBPFを利用して取得できるWebアプリケーションの通信に関するトレース情報を元に、テストとそのテストの実行時に利用するスタブサーバーを生成することができるツールとなります。 公式サイトのトップには以下のようなスローガンが掲げられています。 2 minutes to 90% test coverage! テストに苦労した経験のある方は興味を惹かれるのではないでしょうか。 現在まだアルファ段階のプロジェクトですが、GitHubスター数は2683(2024/01/04現在)、CNCF Landscape にも掲載されているなど、一定の注目を集め始めているOSSです。 開発主体はプロダクトと同名のKeployというインド発のスタートアップで、去年GoogleによるインドのA

      eBPFを使った自動テストツール「Keploy」がすごい
    • BPFを利用し、Linuxカーネルのパラメータを継続的に自動チューニングする「bpftune」。オラクルがオープンソースで公開

      オラクルはLinuxカーネルのパラメータを、ワークロードに合わせて継続的に自動チューニングするツール「bpftune」をオープンソースで公開しました(GitHubのページ)。 bpftuneは「BPF」(Berkeley Packet Filter)と呼ばれる、Linuxカーネル内のさまざまな機能をフックして機能拡張が可能な仕組みを利用し、継続的にLinuxカーネルのきめこまなかレベルで監視を行い自動チューニングを実現しています。 オラクルはbpftuneを開発した背景として、クラウドに代表される大規模なサーバ展開が可能なインフラにおいて、以前よりも個々のサーバのチューニングについて注意が払われることがほとんどなくなったこと、チューニングされるとしても静的に適切な設定があると考えられることが一般的であることを挙げています。 bpftuneによる自動チューニング対象の項目 bpftuneは現

        BPFを利用し、Linuxカーネルのパラメータを継続的に自動チューニングする「bpftune」。オラクルがオープンソースで公開
      • Linuxコンテナの仕組み / eBPF & Container Study in Fukuoka

        「eBPF & コンテナ情報交換会 @ 福岡」の発表資料です。 参考となる情報にはPDF中からリンクをしていますが、資料中のリンクは Speaker Deck 上ではクリックできないので PDF をダウンロードしてご覧ください。 デモの動画は https://asciinema.org/a/BbYcyk5vaFXk5RbOXWStDvj2Y です。

          Linuxコンテナの仕組み / eBPF & Container Study in Fukuoka
        • ebpf-goによるLinuxカーネルトレース入門

          ebpf-goによるLinuxカーネルトレース入門 ebpf-goを使用したLinuxカーネルトレース(fentry)について紹介します。 ebpf-goは、eBPFのGo向けライブラリです。このライブラリは、libbpfに依存せず(cgoを使用せず)にeBPFプログラムとデータのやり取りが可能であるため、ポータビリティが高くGo言語に適したeBPFライブラリとなります。 fentryは、カーネル関数のエントリポイントにプログラムをアタッチするためのBPFプログラムタイプです。簡潔に言うと、カーネル関数にフック処理を行うことができます。 GitHub: ebpf-go(cilium/ebpf) 公式ドキュメント: The eBPF Library for Go 本記事ではebpf-goのexamples内のtcprttを基に、ebpf-goの開発方法についても説明します。 前提条件として、

            ebpf-goによるLinuxカーネルトレース入門
          • bpftraceによるGoアプリケーションのトレース|hayajo

            はじめにシステムの状態を的確に捉え、運用に必要なインサイトを継続的に得るための特性は「オブザーバビリティ」と呼ばれます。オブザーバビリティを実現することで、パフォーマンスのモニタリングやトラブルシューティングを効果的に行い、システムの信頼性を高めることができます。 この重要な特性を実現する上で、eBPFやbpftraceは強力なツールとなります。 本記事では、Goアプリケーションにおけるオブザーバビリティを実現するための一つの方法として、bpftraceを用いたトレースの手法を紹介します。 内容が多いため、目次を活用して段階的に読み進めることをお勧めします。 eBPFとbpftraceはじめに、eBPFとbpftraceについて簡単に説明します。 eBPFとはeBPF(Extended Berkeley Packet Filter)はLinuxカーネル内で動作する柔軟なプログラミングフレー

              bpftraceによるGoアプリケーションのトレース|hayajo
            • TetragonでeBPFとセキュリティオブサーバビリティ入門 | フューチャー技術ブログ

              CNCF連載 の4本目です。 はじめに数年前にクラウドネイティブ注目技術として挙げられたeBPFにかねてよりキャッチアップしたいなと思っていたので、この連載のタイミングでeBPFとその関連プロダクトに入門してみることにしました。 CNCFプロジェクト傘下のeBPFを活用したプロダクトとしてはCilium, Falcoなどが挙げられます。CiliumはKubernetesなどのクラウドネイティブな環境でネットワーク、オブサーバビリティの機能を提供するOSSなのですが、今回はそのいわばサブプロジェクト的な位置づけのセキュリティツールである、Tetragonに触ってみます。 Cilium, Tetragonの開発をメイン行っているIsovalent社は、書籍やハンズオンラボなどで自社の製品・eBPFについての学習リソースを多く提供しています。 https://isovalent.com/reso

                TetragonでeBPFとセキュリティオブサーバビリティ入門 | フューチャー技術ブログ
              • Linuxカーネル内部をフックするeBPFを用いてコンテナ間通信を実現する「Cilium」、十分成熟したソフトウェアに到達したとして、CNCFの卒業プロジェクトに

                Linuxカーネル内部をフックするeBPFを用いてコンテナ間通信を実現する「Cilium」、十分成熟したソフトウェアに到達したとして、CNCFの卒業プロジェクトに Cloud Native Computing Foundation(CNCF)は、eBPFを用いたコンテナ間通信を実現する「Cilium」が十分成熟した段階に到達したとして、「卒業」(Graduation)プロジェクトになったことを発表しました。 [NEWS] Announcing the graduation of @ciliumproject - the #eBPF-powered #cloudnative #opensource for providing, securing, and observing network connectivity between workloads Read more: https://t

                  Linuxカーネル内部をフックするeBPFを用いてコンテナ間通信を実現する「Cilium」、十分成熟したソフトウェアに到達したとして、CNCFの卒業プロジェクトに
                • Kubernetesクラスタの可観測性の隙間を埋めるeBPF - LIFULL Creators Blog

                  KEELチームの相原です。 今回はeBPFを利用してKubernetesクラスタの可観測性の隙間を埋めている話です。 前回のエントリではLLMにうつつを抜かしていたので本業(?)の話をしようと思います。 www.lifull.blog LIFULLの可観測性の現在地 eBPFとは 可観測性の隙間 NAT Loopback eBPFを実行するには BPF CO-RE libbpf-rsを利用したNAT Loopbackの検知 1. (ユーザ空間) コマンドライン引数として受け取ったDNSをTTLごとに名前解決してIPアドレスを取得する 2. (ユーザ空間) IPアドレスに変化がある度にカーネル空間で動くBPFプログラムにそのIPアドレスのリストを渡す 3. (カーネル空間) Kprobesで tcp_v4_connect/tcp_v6_connect にフックを仕込む 4. (カーネル空間)

                    Kubernetesクラスタの可観測性の隙間を埋めるeBPF - LIFULL Creators Blog
                  • BPFの歩き方 ‐ バイナリの"カッコよさ"に触れてみる

                    本記事は、TechFeed Experts Night#19 〜 達人に聞く、Linuxカーネルコードの歩き方のセッション書き起こし記事になります。 イベントページのタイムテーブルから、その他のセッションに関する記事もお読み頂けますので、一度アクセスしてみてください。 本セッションの登壇者 セッション動画 では「BPFの歩き方」と題して発表させていただきます。 株式会社ミラティブでインフラエンジニアをしている近藤といいます。仕事では日々Goを書きながらミドルウェアのログやiostatと向き合っている感じです。今日、ほかの皆さんは本当にちゃんとカーネルソースコードの読み方を解説されていましたが、私はほぼカーネルのコードを読まないというか、基本的には最後の手段にしているので、今日はソースコードの読み方ではなく、別のものの読み方の話をします。

                      BPFの歩き方 ‐ バイナリの"カッコよさ"に触れてみる
                    • GoプロジェクトへのOpenTelemetry計装でeBPF自動計装を採用しなかった話

                      既存GoプロジェクトにOpenTelemetryを計装する機会がありました。eBPFによる自動計装ではなく、手動計装を選んだ理由を説明します。 GoアプリケーションへのOpenTelemetry計装手段 Goにおいては、OpenTelemetryの自動計装が公式で用意されていません。公式サイトにAutomaticの章がないことからわかります。おそらく、ランタイムの制約で実行時にアプリケーションの挙動を変えることが難しいのでしょう。 トレースに十分なスパンを含めるために、現状では以下の2つの計装手段があります。既存のGoアプリケーションに導入する手間や影響範囲をイメージいただくために、概要に絞って解説します。 手動計装 eBPFによる自動計装(Work In Progres) 1. 手動計装 まず、OpenTelemetryのSDKをインストールし、セットアップをします。 func main

                        GoプロジェクトへのOpenTelemetry計装でeBPF自動計装を採用しなかった話
                      • Profiling Python and Ruby using eBPF

                        tl;dr In our continued efforts to expand and improve your profiling experience, we are excited to announce new additions to our language support: Ruby and Python. All the features that are described in this blog post have recently been released as part v0.26.0 of Parca Agent. While currently these language supports are in beta, they can be enabled using the --enable-ruby-unwinding and --enable-pyt

                          Profiling Python and Ruby using eBPF
                        • GitHub - oracle/bpftune: bpftune uses BPF to auto-tune Linux systems

                          You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                            GitHub - oracle/bpftune: bpftune uses BPF to auto-tune Linux systems
                          • 入門 eBPF

                            eBPFは、ネットワーク、セキュリティ、オブザーバビリティなど、さまざまなインフラ関連の分野のプラットフォームとして利用が広がりつつある、近年最も注目されている技術の1つです。本書ではカーネルの機能を拡張する方法として注目度の高いeBPFについて、どんな技術であるか、何ができるかを概観することができます。基本的なeBPFプログラムの書き方を紹介するとともに、仕組みも理解できるようになっています。 訳者まえがき まえがき 1章 eBPFとは何か? なぜ、重要なのか? 1.1 eBPFのルーツ:Berkeley Packet Filter 1.2 BPFからeBPFへ 1.3 本番環境に向けてのeBPFの進化 1.4 名前付けは難しい 1.5 Linuxカーネル 1.6 カーネルへの新機能の追加 1.7 カーネルモジュール 1.8 eBPFプログラムの動的ロード 1.9 高性能なeBPFプログ

                              入門 eBPF
                            • Unit Testing eBPF Programs | who.ldelossa.is

                              Unit Testing eBPFLove it or hate it, writing unit tests is all but mandatory for your code. They provide a safety net when making changes, and give you that nice, warm feeling when you see them all pass after a change. While working on a Kernel patch I had to investigate writing unit tests for eBPF programs. Turns out, the Kernel developers have thought about this already and infrastructure exists

                              • Recap: eBPF セッションつまみ食い / eBPF sessions @ KubeCon EU 2023

                                Kubernetes Meetup Tokyo #58 KubeCon EU 2023 Recap の発表資料です。 https://k8sjp.connpass.com/event/282273/

                                  Recap: eBPF セッションつまみ食い / eBPF sessions @ KubeCon EU 2023
                                • GitHub - Netflix/bpftop: bpftop provides a dynamic real-time view of running eBPF programs. It displays the average runtime, events per second, and estimated total CPU % for each program.

                                  You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                    GitHub - Netflix/bpftop: bpftop provides a dynamic real-time view of running eBPF programs. It displays the average runtime, events per second, and estimated total CPU % for each program.
                                  • BPFAgent: eBPF for Monitoring at DoorDash - DoorDash Engineering Blog

                                    Patrick RogersPatrick Rogers is a software engineer at DoorDash since early 2019. Initially a member of the merchant integrations and order platform teams, he now works on the Observability team with a focus on leveraging eBPF and distributed tracing data to improve understanding & reliability of DoorDash's distributed systems. Author's Linkedin As DoorDash experienced rapid growth over the last f

                                      BPFAgent: eBPF for Monitoring at DoorDash - DoorDash Engineering Blog
                                    • eBPFのリバースエンジニアリング入門 | メルカリエンジニアリング

                                      目次 はじめに eBPFとは? eBPFのCTFチャレンジ Flagの獲得 おわりに はじめに 初めまして、Threat Detection and ResponseチームのChihiroです。昨年の7月に株式会社メルカリに入社して、主にクラウド向けのDetection Engineeringや、インシデントレスポンスを担当しています。また、メルカリで自社開発しているSOAR(Secuirty Orchestration Automation and Response)プラットフォームの開発や運用も担当しています。 メルカリには、部活を支援する社内制度が存在し、様々な部活があります。その部活の一環として、私は最近、CTF(Capture The Flag)と呼ばれるサイバーセキュリティの競技を楽しんでいます。そこで今回は、参加したCTFの中で面白かったeBPFに関するリバースエンジニアリン

                                        eBPFのリバースエンジニアリング入門 | メルカリエンジニアリング
                                      • bpfman

                                        Introduction Introduction Getting Started Developer Guide Design Formerly know as bpfd bpfman: An eBPF Manager bpfman operates as an eBPF manager, focusing on simplifying the deployment and administration of eBPF programs. Its notable features encompass: System Overview: Provides insights into how eBPF is utilized in your system. eBPF Program Loader: Includes a built-in program loader that support

                                        • GitHub - microsoft/retina: eBPF distributed networking observability tool for Kubernetes

                                          Retina is a cloud-agnostic, open-source Kubernetes network observability platform that provides a centralized hub for monitoring application health, network health, and security. It provides actionable insights to cluster network administrators, cluster security administrators, and DevOps engineers navigating DevOps, SecOps, and compliance use cases. Retina collects customizable telemetry, which c

                                            GitHub - microsoft/retina: eBPF distributed networking observability tool for Kubernetes
                                          • eBPFを使ったオレオレカーネル拡張入門

                                            Kernel/VM探検隊@東京 No16

                                              eBPFを使ったオレオレカーネル拡張入門
                                            • eBPF Introduction

                                              Oracle Cloud Hangout Cafe Season7 #6 資料

                                                eBPF Introduction
                                              • GitHub - grafana/beyla: eBPF-based autoinstrumentation of HTTP and HTTPS services

                                                You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                                  GitHub - grafana/beyla: eBPF-based autoinstrumentation of HTTP and HTTPS services
                                                • Announcing bpftop: Streamlining eBPF performance optimization

                                                  By Jose Fernandez Today, we are thrilled to announce the release of bpftop, a command-line tool designed to streamline the performance optimization and monitoring of eBPF programs. As Netflix increasingly adopts eBPF [1, 2], applying the same rigor to these applications as we do to other managed services is imperative. Striking a balance between eBPF’s benefits and system load is crucial, ensuring

                                                    Announcing bpftop: Streamlining eBPF performance optimization
                                                  • クラウドネイティブ開発の文脈で人気の「eBPF」調査レポートを公開 Meta、Google、Netflixが活用

                                                    eBPF FoundationとLinux Foundation Researchは、2024年1月30日(米国時間)、「The State of eBPF」を発表した。このレポートは、「eBPF」(extended BPF)の現状、eBPFのユースケースや今後などについて紹介している。内容は以下の通り。 eBPFの現状 Linuxカーネルは、ソフトウェアとハードウェアのインタフェースとして機能し、アプリケーションのさまざまなタスクを処理する。カーネルは約3000万行のコードを有し、重要な役割を果たすが、変更に時間がかかる。これを解決するのがeBPFだ。eBPFはLinuxカーネル内の仮想マシンで、開発者が小さな専門化されたプログラムを記述できるようにする。これらのプログラムは安全性を確保するために検証を経て、JIT(Just-In-Time)コンパイルされ、ファイルのオープニングなどのイ

                                                      クラウドネイティブ開発の文脈で人気の「eBPF」調査レポートを公開 Meta、Google、Netflixが活用
                                                    • [Rust] AyaでeBPFプログラムをつくってみる | DevelopersIO

                                                      Introduction eBPFは、Linuxカーネル対して動的に機能を拡張する技術で、 カーネルで独自のプログラムを安全に実行することができます。 これらのプログラムは任意のポイントに設定可能で、さまざまなタイミングで 実行できます。 eBPFは、カーネル再構築なしでカーネルの動作をカスタマイズすることができるため、 近年いろいろな用途に使われています。 今回はBCC/bpftoolで少しeBPFを使ってみた後、 Aya(eBPF用Rustフレームワーク)を使ってXDPのサンプルをつくってみます。 eBPF? eBPFはExtended Berkeley Packet Filterの略で、 もともとはLinuxでデータパケットを効率的にフィルタリングするために 開発された技術ですが、現在はその機能が拡張されて、 カーネルのコード変更やモジュール追加なしで 独自のプログラムをカーネルで実

                                                        [Rust] AyaでeBPFプログラムをつくってみる | DevelopersIO
                                                      • eBPFを使ったOpenTelemetryのGo自動計装ライブラリを調べる

                                                        本記事執筆時点のopentelemetry-go-instrumentationはWork in Progress(v0.8.0-alpha)となっています。その後大きく変わっている可能性にご注意を。 自動計装とは?OpenTelemetryを中心とした分散トレーシングでは、Contextを伝播したりMetrics, Logs, Tracesを出力したりするための計装(Instrumentation)をアプリケーションに施す必要があります。この作業はアプリケーションに手を加える必要があり手間です。そこで計装を自動化する、つまりアプリケーションのコードに手を加えずに実現する方法がJavaなどで実現されています1。 しかしGoはJavaやPythonなどとは違って、マシンコードにネイティブにコンパイルされます。そのため実行時にコードを追加することができません。少なくとも自分はGoでの自動計装は

                                                        • 今「eBPFを使ったカーネルの拡張」が熱い! eBPFで“カーネルを拡張できるおもちゃ”を作ってみた話

                                                          Kernel/VM探検隊は、カーネルやVM、およびその他なんでもIT技術の話題ジャンルについて誰でも何でも発表してワイワイ盛り上がろうという会です。西村啓佑氏は、eBPFを使ったカーネル拡張の開発について発表しました。 eBPFの概要 西村啓佑氏:あらためまして、mumumuです。「eBPFを使ったオレオレカーネル拡張入門」というタイトルで発表を始めます。今日の発表の目次は(スライドを示して)こんな感じです。 まず、eBPF(extended Berkeley Packet Filter)がけっこう背景になってくるのですが、概要としては、カーネルの中で動いているVM。Kernel/VMの両方を回収できるすごいやつなんですね。こいつは実行前にバイトコードを検証するので、安全に実行できるというのが売りです。基本的には、イベントトリガーで動作するプログラムになっていて、それぞれのイベントに対応す

                                                            今「eBPFを使ったカーネルの拡張」が熱い! eBPFで“カーネルを拡張できるおもちゃ”を作ってみた話
                                                          • Grafana BeylaはeBPFを通じて自動計測によるオブザーバビリティを提供する

                                                            Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。この本では、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

                                                              Grafana BeylaはeBPFを通じて自動計測によるオブザーバビリティを提供する
                                                            • eBPF Documentary

                                                              Recent posts: 17 Mar 2024 » The Return of the Frame Pointers 10 Mar 2024 » eBPF Documentary 28 Apr 2023 » eBPF Observability Tools Are Not Security Tools 01 Mar 2023 » USENIX SREcon APAC 2022: Computing Performance: What's on the Horizon 17 Feb 2023 » USENIX SREcon APAC 2023: CFP 02 May 2022 » Brendan@Intel.com 15 Apr 2022 » Netflix End of Series 1 09 Apr 2022 » TensorFlow Library Performance 19 M

                                                              • CNDT 2022、IsovalentのアドボケイトがeBPFを解説

                                                                CNDT 2022から、IsovalentのアドボケイトがeBPFの基本的な内容を解説するセッションを紹介する。 CNDT 2022から、IsovalentのテクニカルコミュニティアドボケイトであるTracy P Holmes氏によるeBPFを解説するセッションを紹介する。 ●動画:Cloud Native Superpowers with eBPF 冒頭で日本人として初めてのIsovalentの社員となった早川侑太朗氏が登場し、eBPFが注目されており、日本でもSNSなどで多く言及されていることを紹介。その後、アドボケイトのTracy P Holmes氏に引き継いだ。

                                                                  CNDT 2022、IsovalentのアドボケイトがeBPFを解説
                                                                • libbpf-rs: eBPF for the Rust ecosystem

                                                                  Summary libbpf-rs provides safe Rust bindings to libbpf as well as a cargo plugin to help you develop “Compile Once - Run Everywhere” eBPF applications. Use libbpf-rs over BCC to produce smaller, more efficient, and more predictable applications. Background eBPF (BPF) programs have traditionally been written using BPF compiler collection (BCC). The application would then call into BCC using the C+

                                                                  1