「.NET 開発基盤部会 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。 目次 †概要 †ver 2.7.0、Ubuntu 20.04(on WSL2) 詳細 †Clientのインストール †Runtimeのインストール †Javaのインストール(BrokerだけでなくClientにも必要) sudo apt update sudo apt install default-jdk java --version Kafkaのダウンロード †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 Clientの設定 †設定は特にない。以下のコマンドを実行できる。 cd /usr/local/kafka bin/kafka-topics.sh --list --zookeeper localhost:2181 ※ この段階ではブローカが存在しないので動かない。 Brokerのインストールと起動 †ローカル †
Dockerで †以下を修正した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 Clientを使って送受信 †Topicを作成 †$ 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 †先に受信のためのConsumerを起動しておく。 $ bin/kafka-console-consumer.sh --bootstrap-server=127.0.0.1:9092 --topic=test_topic Producer †別のターミナルで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! 参考 †Fusic Tech Blog †
Docker Compose †
マイクロソフト系技術情報 Wiki †Azure Event Hubsで †Kafka .NET クライアントで † |