WindowsでKafka+Node red

初めに

WindowsでKafka を使用するためにセットアップを行った。また動作確認を行うためにNode redのセットアップも行なった。結論としてDockerで使うやり方が一番簡単だった。

準備

Docker のインストール

DockerはそもそもLinuxでしか動かないソフトウェアである。そのためDocker for Windows では仮想環境が必要であり、バックエンドにWSL2かHyper-Vを使用する。今回は動作の軽いWSL2を使用する。

WSL2のインストール

Windowsのビルドバージョンを確認し、2004以上であることを確認する。

設定→更新とセキュリティ→OSビルドとシステム情報へと進み、Windowsの仕様のバージョンを確認する。これが2004以降の21H1などになっていればOK。なっていない場合はWindows Updateを行う。

管理者権限でPowerShellを起動し、以下のコマンドを実行する。

wsl --install -d Ubuntu

これが完了するとWSLのUbuntuがインストールされる。Ubuntuのバージョンは現時点では20.04 LTS。18.04などをインストールしたいのであればMicrosoft storeから探すとよい。

WSL2はスタートメニューのUbuntuから起動できる。

Docker for Windows のインストール

Docker for Windowsは公式サイトからインストーラーを入手してインストールすればOK。

Docker Desktop for Mac and Windows | Docker

kafkaのセットアップ

  • docker-compose.ymlの用意

kafkaはDocker composeでセットアップを行う。 以下のサイトのようにdocker-compose.ymlを作成する。この時KAFKA_ADVERTISED_HOST_NAMEは自分のIPアドレスにしておくことで、LAN内の別のPCからもKafkaを使用できるようになる。

kafka-dockercompose/docker-compose.yml at master · marrrcin/kafka-dockercompose · GitHub

docker-compose.ymlは任意の場所に置いておく。

  • コンテナの起動

コマンドプロンプトを管理者権限で起動し、docker-compose.ymlを置いた場所に移動し、以下のコマンドを実行する。

docker-compose up

実行すると、Dockerイメージをダウンロードしkafkaコンテナを起動する。

  • トピックの設定

Kafkaコンテナが起動した状態で以下にアクセスすると、Kafka設定画面に入れる。

http://localhost:9000/

ここでクラスタの作成、トピックの作成を行う。以上でKafkaのセットアップは完了。

Node-redのセットアップ

Node-redは公式サイトに従えばよい。

Dockerで実行する : Node-RED日本ユーザ会

コマンドプロンプトから以下のコマンドを実行する。

docker run -it -p 1880:1880 -v node_red_data:/data --name mynodered nodered/node-red

以下にアクセスすると、Node-redの画面に入れる。

http://localhost:1880/

以上でNode-redのセットアップは完了。