「.NET 開発基盤部会 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。
ver 2.7.0、Ubuntu 20.04(on WSL2)
ランタイムのインストール(BrokerだけでなくClientにも必要)
sudo apt update sudo apt install default-jdk java --version
wget https://archive.apache.org/dist/kafka/2.7.0/kafka_2.13-2.7.0.tgz tar xzf kafka_2.13-2.7.0.tgz mv kafka_2.13-2.7.0 /usr/local/kafka cd /usr/local/kafka dir
設定は特にない。以下のコマンドを実行できる。
bin/kafka-topics.sh --list --zookeeper localhost:2181
※ この段階ではブローカが存在しないので動かない。
以下を修正したdocker-compose-.ymlを使う。
https://github.com/wurstmeister/kafka-docker/blob/master/docker-compose-single-broker.yml
version: '2' services: zookeeper: image: wurstmeister/zookeeper ports: - "2181:2181" kafka: image: wurstmeister/kafka ports: - "9092:9092" environment: KAFKA_ADVERTISED_HOST_NAME: 127.0.0.1 KAFKA_CREATE_TOPICS: "test:1:1" KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181 volumes: - ./docker.sock:/var/run/docker.sock
$ bin/kafka-topics.sh --create --zookeeper 127.0.0.1:2181 --replication-factor 1 --partitions 1 --topic test_topic WARNING: Due to limitations in metric names, topics with a period ('.') or underscore ('_') could collide. To avoid issues it is best to use either, but not both. Created topic test_topic. $ bin/kafka-topics.sh --list --zookeeper 127.0.0.1:2181 test test_topic
先に受信のためのConsumerを起動しておく。
$ bin/kafka-console-consumer.sh --bootstrap-server=127.0.0.1:9092 --topic=test_topic
別のターミナルでProducerを起動して送信。
$ bin/kafka-console-producer.sh --broker-list=127.0.0.1:9092 --topic=test_topic >this is a test message. >hello world!
すると、Consumer側に以下のメッセージが表示される。
this is a test message. hello world!