tjtjtjのメモ

自分のためのメモです

とりあえず kafka

kafka in docker

何も知らない状態からkafka in dockerを試す ↑のエントリ見て楽そうだったのでとりあえずやってみたが、失敗した。

Kafka in Docker この2年更新されていないので、大丈夫だよな。。。

docker run

# docker run -p 2181:2181 -p 9092:9092 --env ADVERTISED_HOST=`docker-machine ip \`docker-machine active\`` --env ADVERTISED_PORT=9092 --name test_kafka spotify/kafka
# docker ps
CONTAINER ID        IMAGE                     COMMAND                  CREATED             STATUS              PORTS                                            NAMES
7ff7f4bcedc4        spotify/kafka             "supervisord -n"         13 seconds ago      Up 12 seconds       0.0.0.0:2181->2181/tcp, 0.0.0.0:9092->9092/tcp   test_kafka

コンテナの kafka ディレクトリに入る。ここにスクリプトがまとまっている。

# docker exec -it test_kafka bash
# ls /opt
kafka ディレクトリ 確認
# cd /opt/kafka_2.11-0.10.1.0
# ls bin
connect-distributed.sh               kafka-replica-verification.sh
connect-standalone.sh                kafka-run-class.sh
kafka-acls.sh                        kafka-server-start.sh
kafka-configs.sh                     kafka-server-stop.sh
kafka-console-consumer.sh            kafka-simple-consumer-shell.sh
kafka-console-producer.sh            kafka-streams-application-reset.sh
kafka-consumer-groups.sh             kafka-topics.sh
kafka-consumer-offset-checker.sh     kafka-verifiable-consumer.sh
kafka-consumer-perf-test.sh          kafka-verifiable-producer.sh
kafka-mirror-maker.sh                windows
kafka-preferred-replica-election.sh  zookeeper-security-migration.sh
kafka-producer-perf-test.sh          zookeeper-server-start.sh
kafka-reassign-partitions.sh         zookeeper-server-stop.sh
kafka-replay-log-producer.sh         zookeeper-shell.sh

Step 3: Create a topic

ここから quickstart を参照。 --bootstrap-server でやってたがうまくいかないので、zookeeper でやっている。

トピック確認。まだない。

# bin/kafka-topics.sh --list --zookeeper localhost:2181

トピック作成

# bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
Created topic "test".

トピック確認

# bin/kafka-topics.sh --list --zookeeper localhost:2181
test

トピック describe

# bin/kafka-topics.sh --describe --zookeeper localhost:2181 --topic test
Topic:test      PartitionCount:1        ReplicationFactor:1     Configs:
        Topic: test     Partition: 0    Leader: 0       Replicas: 0     Isr: 0

Step 4: Send some messages

ここからなんだかうまくいかない。こんどはdocker でないところで試す。

bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test