クラウド&AIアプリケーションのためのインスタントオブザーバビリティ
ゼロコード、フルスタック、eBPF&Wasm
DeepFlowオープンソースプロジェクトは、複雑なクラウドネイティブおよびAIアプリケーションに深い可観測性を提供することを目的としています。DeepFlowは、eBPFを使用してメトリック、分散トレーシング、リクエストログ、関数プロファイリングデータのゼロコードデータ収集を実装し、SmartEncodingと組み合わせて、すべての可観測性データのフルスタック相関と効率的なアクセスを実現しています。DeepFlowを使用すると、クラウドネイティブおよびAIアプリケーションは自動的に深い可観測性を備えることができ、開発者がコードに継続的にインストルメントを挿入するという重い負担を取り除き、DevOps/SREチームにコードからインフラストラクチャまでの監視および診断機能を提供します。
- 任意のサービスの全景図:eBPFのゼロコードを利用して、あらゆる言語で開発されたアプリケーションサービス、AIサービス、インフラストラクチャサービスの生産環境の全景図を描画します。標準プロトコルの解析機能を内蔵し、Wasmプラグイン機構を提供して、任意のプライベートプロトコルを拡張解析します。アプリケーションとインフラストラクチャのフルスタックゴールデンシグナルをゼロコードで計算し、パフォーマンスのボトルネックを迅速に特定します。
- 任意のリクエストの分散トレーシング:eBPFのゼロコード分散トレーシング機能は、あらゆる言語のアプリケーションをサポートし、ゲートウェイ、サービスメッシュ、データベース、メッセージキュー、DNS、NICなど、あらゆる種類のインフラストラクチャを完全にカバーし、トレーシングの盲点を残しません。フルスタック、各Spanに関連するネットワークパフォーマンス指標とファイル読み取り/書き込みイベントを自動的に収集します。これにより、分散トレーシングはゼロインストルメントの新時代に入ります。
- 任意の関数の継続的なパフォーマンスプロファイリング:1%未満のオーバーヘッドで生産環境のプロセスのパフォーマンスプロファイリングデータをゼロコードで収集し、OnCPU/OffCPU/GPU/Memory/Networkの関数呼び出しスタックの火焰図を描画し、ビジネス関数、フレームワーク関数、ランタイム関数、共有ライブラリ関数、カーネル関数、CUDA関数のフルスタックパフォーマンスのボトルネックを迅速に特定し、それらを分散トレーシングデータに自動的に関連付けます。
- 人気のある可観測性技術スタックとのシームレスな統合:Prometheus、OpenTelemetry、SkyWalking、Pyroscopeのストレージバックエンドとして機能することができます。また、SQL、PromQL、OTLPなどのデータインターフェースを提供して、人気のある技術スタックのデータソースとして機能します。すべての観測信号にクラウドリソース、K8sコンテナリソース、K8s Label/Annotation、CMDBのビジネス属性などの統一タグを自動的に注入し、データの孤立を解消します。
- ClickHouseの10倍のストレージ性能:SmartEncoding機構を使用して、すべての観測データに標準化された、事前エンコードされたメタタグを注入し、ClickHouseのStringまたはLowCard方式と比較してストレージオーバーヘッドを10倍削減します。カスタムタグと観測データは別々に保存されるため、無制限の次元と基数のタグを安心して注入でき、BigTableのような快適なクエリ体験を得ることができます。
詳細については、ドキュメントサイトをご覧ください。
DeepFlowには3つのバージョンがあります:
- DeepFlow Community:開発者向けのDeepFlowコミュニティ版
- DeepFlow Enterprise:組織向けのDeepFlowエンタープライズ版、チーム協力の問題を解決
- DeepFlow Cloud:DeepFlowのSaaSサービス、現在ベータテスト中
DeepFlowコミュニティ版は、エンタープライズ版のコアコンポーネントで構成されています。オープンソースを通じて、私たちは観測をより自動化し、世界中の開発者がより自由になることを願っています。
ドキュメントに従って、DeepFlow Communityをデプロイしてください。
また、完全なDeepFlow Community Demoも構築していますので、ぜひ体験してみてください。ログインアカウント/パスワード:deepflow/deepflow。
DeepFlow Enterprise Demoにアクセスしてください。現在、中国語のみをサポートしています。
DeepFlow Community版は、AgentとServerの2つのプロセスで構成されています。各K8sコンテナノード、従来のサーバー、またはクラウドサーバーには、そのサーバー上のすべてのアプリケーションプロセスのデータ収集を担当するAgentが1つ実行されます。ServerはK8sクラスター内で実行され、Agent管理、タグ注入、データ書き込み、データクエリサービスを提供します。
こちらは、将来の機能計画です。IssueやPull Requestを歓迎します。
- eBPFに感謝します。革命的なLinuxカーネル技術です。
- OpenTelemetryに感謝します。アプリケーションの可観測性データを収集するためのベンダーニュートラルなAPIを提供しています。
- DeepFlowの論文Network-Centric Distributed Tracing with DeepFlow: Troubleshooting Your Microservices in Zero Codeが、国際トップ会議ACM SIGCOMM 2023に採択されました。
- DeepFlowはCNCF CLOUD NATIVE Landscapeに追加されました。
- DeepFlowはCNCF CNAI (Cloud-Native AI) Landscapeに追加されました。
- DeepFlowはeBPF Project Landscapeに追加されました。