Windows で Kafka をビルドして実行する方法

Windows で Kafka をビルドして実行する方法

[51CTO.com クイック翻訳] この記事では、Windows オペレーティング システム上で Apache Kafka サーバーを構成して起動する方法について詳しく説明します。同時に、このガイドでは、Java および Apache ZooKeeper の構成と手順についても説明します。

ご存知のとおり、Apache Kafka は高速でスケーラブルなメッセージング キューです。コンテキストの読み取りと書き込みを同時に実行しながら、さまざまな I/O に関連する大量のトラフィック負荷を処理できます。 Kafka の詳細については、http://kafka.apache.org/ を参照してください。信頼性の高い分散調整ツールである Apache Kafka には、実行中の ZooKeeper インスタンスが必要です (翻訳者注: ZooKeeper は、分散アプリケーションに一貫したサービス インターフェイスを提供する分散調整サービスです)。 ZooKeeper の詳細については、https://zookeeper.apache.org/ をご覧ください。

関連リソース

以下で説明する内容については、実践的な実験を通じて Windows 上で Kafka をセットアップするのに役立つビデオを録画しました (https://youtu.be/OJKesEpO6ok を参照)。その間、皆さんが参照したり練習したりできるように、GitHub に Spark-Scala ユーティリティのシリーズを作成しました (https://github.com/gopal-tiwari を参照)。

さらに、この記事に関係する以下のさまざまなファイルを事前に準備してダウンロードする必要があります。

  • オペレーティング システムと CPU アーキテクチャに応じて、http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html からサーバーの JRE をダウンロードできます。
  • http://www.7-zip.org/download.html から 7-zip をダウンロードしてインストールしてください。
  • http://zookeeper.apache.org/releases.html から ZooKeeper をダウンロードし、7-zip を使用して解凍してください。
  • http://kafka.apache.org/downloads.html から Kafka をダウンロードし、7-zip を使用して解凍してください。

以下では、ZooKeeper と Kafka が C: ドライブに解凍されて保存されていることを前提としていますが、他の場所に解凍することもできます。

また、この実験では単一ノードの ZooKeeper インスタンスのみを使用することを考慮して、Kafka にパッケージ化されていない ZooKeeper のみを使用しました。必要に応じて、Zookeeper がすでにパッケージ化されている kafka\bin\windows ディレクトリにある Kafka インストール パッケージを使用することもできます。

インストール

A. JDK設定

1. JRE インストーラーをダブルクリックした後、「インストール」をクリックして続行し、もちろん「インストール先フォルダーの変更」チェックボックスをクリックします。

2. JDK のデフォルトのインストール パスは、C:\Program Files\Java\jre1.8.0_xx です。ただし、ターゲット ディレクトリを C:\Java\jre1.8.0_xx などに変更して、[次へ] をクリックすることもできます。

3. 次に、「コントロール パネル」->「システム」->「システムの詳細設定」->「環境変数」をクリックして、変数に関連するシステムの動作環境を設定できます。

4. 下の図に示すように、「ユーザー変数」セクションで「新しいユーザー変数」をクリックし、ポップアップ ダイアログ ボックスの「変数名」に「JAVA_HOME」と入力し、「変数値」に独自の jre のパスを入力します。

(注: 使用している Kafka のバージョンによって、Java の具体的なパスとバージョンが異なる場合があります)

5. 「OK」をクリックします。

6. 「システム変数」セクションで、「環境変数」ダイアログ ボックスを見つけて開きます。

7. 次に「パス」を編集します。次の図に示すように、「変数値」の既存のテキストの末尾に「;%JAVA_HOME%\bin」と入力してください。

8. Java がインストールされているかどうかを確認するには、「cmd」を開いて「java –version」と入力します。この時点で、インストールした Java のバージョンを確認できるはずです。

コマンド プロンプトが上の画像のようになっている場合は、設定は完了です。それ以外の場合は、設定が現在のオペレーティング システムのアーキテクチャ (x86 や x64 など) と一致しているかどうか、または環境変数のパスが正しいかどうかを再確認する必要があります。

B. ZooKeeperのインストール

1. ZooKeeper 構成ディレクトリに注目してみましょう。ここでは、「C:\zookeeper-3.4.7\conf」を使用しました。

2. ファイルの名前を「zoo_samplep.cfg」から「zoo.cfg」に変更しました。

3. メモ帳などのテキスト エディターで zoo.cfg を開いてください。ここでは Notepad++ を使用します。

4. 「dataDir=/tmp/zookeeper」フィールドを見つけて、「C:\zookeeper-3.4.7\data」に変更します。

5. 上記の Java の場合と同様に、システム環境変数にエントリをもう 1 つ追加します。

a.システム変数に「ZOOKEEPER_HOME = C:\zookeeper-3.4.7」を追加します。

b. 「Path」という名前のシステム変数を編集し、「;%ZOOKEEPER_HOME%\bin」を追加します。

6. zoo.cfg ファイル内のデフォルトの ZooKeeper ポートを別のポートに変更できます。デフォルトのポートは 2181 です。

7. 新しい cmd を開き、zkserver と入力して ZooKeeper を実行します。

8. 次の詳細を含むコマンドプロンプトが表示されます。

これで、ZooKeeper がポート 2181 で稼働するようになりました。

C. Kafka の設定

1. Kafka の設定ディレクトリに移動します。ここではC:\kafka_2.11-0.9.0.0\configです。

2. ファイル「server.properties」を編集してください。

3. 「log.dirs=/tmp/kafka-logs」という行を見つけて、「log.dir= C:\kafka_2.11-0.9.0.0\kafka-logs」に変更します。

4. ZooKeeper を別のコンピューターまたはクラスターで実行する必要がある場合は、「zookeeper.connect:2181」をターゲットの IP アドレスとポート番号に変更してください。ここでは同じマシンを使用しているため、変更する必要はありません。さらに、Kafka のポート番号と broker.id も適切に設定できます。その他の設定はそのままにしておいてください。

5. この例では、Kafka はデフォルトのポート 9092 で実行され、ZooKeeper のデフォルトのポート 2181 に接続します。

D. Kafkaサーバーを実行する

重要: Kafka サーバーを起動する前に、ZooKeeper インスタンスが起動して実行されていることを確認してください。

1. Kafka インストール ディレクトリ (C:\kafka_2.11-0.9.0.0\) に移動します。

2. Shift キーを押しながら右クリックし、「コマンド ウィンドウをここで開く」オプションを選択して、コマンド プロンプトを開きます。

3. 次の図に示すように、「.\bin\windows\kafka-server-start.bat .\config\server.properties bat」と入力し、Enter キーを押します。

4. すべてがうまくいけば、コマンド プロンプトに次のメッセージが表示されます。

5. Kafka サーバーが起動したら、メッセージを保存するためのさまざまなトピックを作成できます。さらに、Java、Scala コード、またはコマンド プロンプトで直接データを生成したり使用したりすることもできます。

E. トピックを作成する

1. 実行されている Kafka サーバーは 1 つだけなので、レプリケーション係数が 1 の「test」というトピックを作成するだけで済みます。もちろん、複数の Kafka サーバーを実行しているクラスターがある場合は、それに応じてレプリケーション係数を増やして、データの可用性を向上させ、フォールト トレラント システムとして機能することもできます。

2. C:\kafka_2.11-0.9.0.0\bin\windows で新しいコマンドプロンプトを開きます。

3. 次の図に示すように、コマンド「kafka-topics.bat --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test」を入力し、Enter キーを押します。

F. テストサーバーのプロデューサーとコンシューマーを作成する

1. C:\kafka_2.11-0.9.0.0\bin\windows で新しいコマンド プロンプトを開きます。

2. プロデューサーを起動するには、コマンド「kafka-console-producer.bat --broker-list localhost:9092 --topic test」を入力してください。

3. C:\kafka_2.11-0.9.0.0\bin\windows で別の新しいコマンド プロンプトも開きます。

4. コンシューマーを起動するには、コマンド「kafka-console-consumer.bat --zookeeper localhost:2181 --topic test」を入力してください。

5. 上記の 2 つのコマンド プロンプトのスクリーンショットは次のとおりです。

6. これで、プロデューサーのコマンド プロンプトに何かを入力して Enter キーを押すことができます。すると、他のコマンド プロンプトで同じメッセージの内容が表示されるはずです。

7. コンシューマー側でプッシュされたメッセージを確認できれば、Kafka の設定は完了です。

その他の便利なコマンド

1. トピックを一覧表示します: kafka-topics.bat --list --zookeeper localhost:2181

2. トピックの説明: kafka-topics.bat --describe --zookeeper localhost:2181 --topic [トピック名]

3. 最初からさまざまなメッセージを読み取ります: kafka-console-consumer.bat --zookeeper localhost:2181 --topic [トピック名] --from-beginning

4. トピックを削除します: kafka-run-class.bat kafka.admin.TopicCommand --delete --topic [topic_to_delete] --zookeeper localhost:2181

原題: Windows OS での Apache Kafka のセットアップと実行、著者: Gopal Tiwari

[51CTOによる翻訳。パートナーサイトに転載する場合は、元の翻訳者と出典を51CTO.comとして明記してください。

<<:  テンセントクラウドは、数分でリソースを提供する新世代のブラックストーン物理サーバーをリリースしました。

>>:  ハイブリッドクラウド アプリケーション ガイド

推薦する

vmbox-2g メモリ/50g ハードディスク/G ポート/フェニックス/アムステルダム/月額 7 ドル

vmbox は、SingleHop のフェニックスとアムステルダムのデータ センターでホストされる ...

SEO業界に参入しようとしているウェブマスターの友人に宛てた手紙

SEO 業界に参入したばかり、または参入準備中のウェブマスターの友人に宛てたメッセージです。最近、何...

ライトイヤーフォーラムの閉鎖はSEOの新時代の到来を象徴している

Light Year Forum は SEO の達人である張国平氏によって設立され、かつてはすべての...

ウェブ解析: ウェブ開発時間を短縮する 10 の方法

今日の開発環境では、速いほど良いです。元記事: http://sixrevisions.com/we...

フェイフェイ・リーは、学術コミュニティのためのGoogleとAmazonのクラウドデータセンターのために戦うために「National Research Cloud」を立ち上げました

ちょうど今、フェイフェイ・リーはザ・ヒル紙に「人間中心の AI におけるアメリカの世界的なリーダーシ...

民間病院のウェブサイト構築にマーケティングアイデアを反映させる方法

民間病院のオンラインプロモーションの全プロセスで、最も重要なのはどれでしょうか?医療の転換率です!想...

新しいウェブサイトが競合他社に勝つために取るべき3つのステップの簡単な分析

SEO はウェブサイトのランキング付けを行いますが、Baidu はホームページ上の 10 位しか提供...

SaaSから見たローコードの本質

ローコードは常にソフトウェア開発の効率化の目標であり、進化の方向性でした。 SAP、Oracle、K...

ホスト評価YY:Linodeのアップグレードから熾烈な海外IDC市場を見る

2010 年以降、誰もが突然仮想ホストから VPS に移行したようです。移行が速すぎるように感じませ...

第32回CNNIC報告書付録2:調査支援ユニット

テンセントテクノロジーニュース、7月17日、中国インターネットネットワークインフォメーションセンター...

実際のウェブサイトはサイト値かBaiduツールインデックス値のどちらに含まれているのか

ウェブサイトのコレクションボリュームがウェブサイトにとって重要であることは自明です。ウェブサイトの重...

アーキテクチャから導入まで、K3sの包括的な理解

Kubernetes は、開発者のラップトップ、Raspberry Pi、クラウド、データセンター、...

マイクロソフト、完璧なクラウドジャーニーを構築するための新しい Azure 移行ツールをリリース

企業がクラウドに移行するために必要なツールを提供するため、マイクロソフトは最近、Microsoft ...

クラウドコンピューティングの発展の歴史と今後の動向

クラウド コンピューティングは現在、テクノロジーとして求人市場で大きな存在感を示しています。これはほ...

市場調査は想像できないほど基本的なニーズである

昨日、私は有名なインターネット企業である Startup Factory を訪問し、創設者の Dai...