Skip to main content
日本語は機械翻訳による参考訳です。内容に矛盾や不一致があった場合には、英語の内容が優先されます。

TR-4947:『Apache Kafka workload with NetApp NFS storage - Functional Validation and performance』

共同作成者

ネットアップShantanu Chakole、Karthikeyan Nagalingam、Joe Scott

Kafkaは、大量のメッセージデータを受け入れることができる堅牢なキューを備えた分散型パブリッシュサブスクライブメッセージングシステムです。Kafkaを使用すると、アプリケーションは非常に高速な方法でトピックへのデータの書き込みと読み取りを行うことができます。フォールトトレランスと拡張性を備えているため、多くのデータストリームを迅速に取り込み、移動するための信頼性の高い方法として、ビッグデータ分野でよく使用されています。ユースケースには、ストリーム処理、Webサイトアクティビティの追跡、指標の収集と監視、ログの集約、リアルタイム分析などがあります。

NFSに対する通常のKafka処理は問題なく機能しますが、NFSで実行されているKafkaクラスタのサイズ変更中や再パーティション中に、silly renameの問題によってアプリケーションがクラッシュします。これは、負荷分散やメンテナンスのためにKafkaクラスタのサイズを変更または再パーティションする必要があるため、重要な問題 です。詳細については、こちらを参照して "こちらをご覧ください"ください。

このドキュメントでは、次の項目について説明します。

  • silly-renameの問題と解決策 の検証

  • CPU使用率を削減してI/O待機時間を短縮します

  • Kafkaブローカーのリカバリ時間の短縮

  • クラウドとオンプレミスでのパフォーマンス

KafkaワークロードにNFSストレージを使用する理由

本番アプリケーションのKafkaワークロードでは、アプリケーション間で大量のデータをストリーミングすることができます。このデータは、Kafkaクラスタ内のKafkaブローカーノードに保持され、格納されます。Kafkaは可用性と並列処理でも知られています。Kafkaは、トピックをパーティションに分割し、それらのパーティションをクラスタ全体に複製することで実現します。これは、最終的には、Kafkaクラスタを通過する膨大な量のデータのサイズが一般的に倍増されることを意味します。NFSを使用すると、ブローカーの数が非常に迅速かつ簡単に変更されるため、データのリバランシングが可能になります。大規模な環境では、ブローカーの数が変更されたときにDAS間でデータをリバランシングするのは非常に時間がかかり、ほとんどのKafka環境ではブローカーの数が頻繁に変更されます。

その他にも、次のようなメリットがあります。

  • 成熟度。 NFSは成熟したプロトコルであり、実装、セキュリティ保護、使用のほとんどの側面がよく理解されています。

  • オープン。 NFSはオープンプロトコルであり、その継続的な開発はインターネット仕様で無料でオープンなネットワークプロトコルとして文書化されています。

  • コスト効率に優れています。 NFSは、ネットワークファイル共有用の低コストの解決策 であり、既存のネットワークインフラストラクチャを使用しているため、セットアップが簡単です。

  • 一元管理 NFSの一元管理により'個のユーザー・システムでソフトウェアやディスク・スペースを追加する必要がなくなります

  • 分散。 NFSを分散ファイルシステムとして使用できるため、リムーバブルメディアストレージデバイスの必要性が軽減されます。

ネットアップがKafkaワークロードに最適な理由

ネットアップのNFS実装はプロトコルのゴールドスタンダードとみなされ、無数のエンタープライズNAS環境で使用されています。ネットアップの信頼性に加えて、次のようなメリットもあります。

  • 信頼性と効率性

  • 拡張性とパフォーマンス

  • ハイアベイラビリティ(NetApp ONTAP クラスタ内のHAパートナー)

  • データ保護

    • *ディザスタリカバリ(NetApp SnapMirror)。*サイトがダウンしたか、別のサイトから始めて中断したところから作業を続行したい。

    • ストレージシステムの管理性(NetApp OnCommand を使用した管理)。

    • *ロードバランシング。*クラスタでは、異なるノードでホストされているデータLIFから異なるボリュームにアクセスできます。

    • ノンストップオペレーション。 LIFやボリュームの移動はNFSクライアントに対して透過的です。