|
|
Строка 1: |
Строка 1: |
| [[:Категория:Работа]]
| | Видео: https://www.youtube.com/watch?v=wm2JNlaJJ5k |
|
| |
|
| = Список каналов =
| | GIST: https://gist.github.com/aragozin/6ac622de6328a1b6ee58a1bf6f2e523d |
|
| |
|
| <syntaxhighlight lang="bash">
| | JMC: https://download.oracle.com/otn-pub/java/jmc/7.1.2+04/a4634525489241b9a9e1aa73d9e118e6/jmc-7.1.2_windows-x64.zip |
| ~/work/kafka_2.11-0.10.1.1/bin$ ./kafka-topics.sh --zookeeper 172.18.0.5:2181 --list
| |
| __consumer_offsets
| |
| telestat-v2-sink
| |
| topic-jhipster
| |
| </syntaxhighlight>
| |
|
| |
|
| Вместо прямых IP адресов можно использовать название сервиса:
| | Для подключения к weblogic нужно докинуть wlclient.jar, wljmxclient.jar в катоалог с jmc и настроить jmc.ini: |
| <syntaxhighlight lang="bash">
| |
| ~/work/kafka_2.11-0.10.1.1/bin$ ./kafka-topics.sh --zookeeper telestat-zookeeper:2181 --list
| |
| </syntaxhighlight>
| |
|
| |
|
| | | <nowiki> |
| = Запись в канал =
| | -Djmx.remote.protocol.provider.pkgs=weblogic.management.remote |
| В консоли каждая строка будет отдельным сообщением в канал
| | -Djava.naming.factory.initial=weblogic.jndi.WLInitialContextFactory |
| <syntaxhighlight lang="bash"> | | -Xbootclasspath/a:wlclient.jar;wljmxclient.jar |
| ~/work/kafka_2.11-0.10.1.1/bin$ ./kafka-console-producer.sh --broker-list 172.18.0.3:9092 --topic telestat-v2-sink
| | </nowiki> |
| </syntaxhighlight>
| |
| | |
| = Чтение из канала =
| |
| | |
| <syntaxhighlight lang="bash">
| |
| ~/work/kafka_2.11-0.10.1.1/bin$ ./kafka-console-consumer.sh --bootstrap-server 172.18.0.3:9092 --topic telestat-v2-sink --from-beginning
| |
| </syntaxhighlight>
| |
| | |
| = Статьи =
| |
| | |
| http://dotsandbrackets.com/highly-available-kafka-cluster-docker-ru/
| |
| | |
| https://sematext.com/blog/monitoring-kafka-on-docker-cloud/
| |
| | |
| = Построение кластера =
| |
| | |
| Предварительно нужен настроенный zookeeper, в примере используется кворум (3 сервиса), настройка тут [[Zookeeper]].
| |
| | |
| Пример kafka-cluster.yml для одного хоста, у другого будет все аналогично, за исключением KAFKA_BROKER_ID и KAFKA_ADVERTISED_HOST_NAME
| |
| | |
| Можно поменять порядок хостов в KAFKA_ZOOKEEPER_CONNECT.
| |
| | |
| KAFKA_BROKER_ID можно не указывать, он настроится автоматически.
| |
| | |
| <syntaxhighlight>
| |
| version: '2'
| |
| services:
| |
| kafka-cluster:
| |
| container_name: kafka-cluster
| |
| image: wurstmeister/kafka:1.0.0
| |
| environment:
| |
| ## NB! SET KAFKA_BROKER_ID UNIQUE PER HOST
| |
| KAFKA_BROKER_ID: 1
| |
| KAFKA_ADVERTISED_HOST_NAME: kafka1
| |
| KAFKA_ADVERTISED_PORT: 9092
| |
| KAFKA_ZOOKEEPER_CONNECT: zoo1:2183,zoo2:2183,zoo3:2183
| |
| # KAFKA_CREATE_TOPICS: "telestat-v2-sink:1:2,prozvon-sink:1:2,teledemo-v2-sink:1:2"
| |
| KAFKA_LOG_DIRS: /kafka/kafka-logs
| |
| ports:
| |
| - 9092:9092
| |
| restart: always
| |
| extra_hosts:
| |
| - "zoo1:192.168.1.8"
| |
| - "zoo2:192.168.1.7"
| |
| - "zoo3:192.168.1.6"
| |
| volumes:
| |
| - /opt/docker/kafka/:/kafka/
| |
| </syntaxhighlight> | |
| | |
| = Удаление топика =
| |
| | |
| ./kafka-topics.sh --zookeeper localhost --delete --topic topic1
| |
| = Удаление топика помеченного MarkedForDeletion:true =
| |
| | |
| ./zkCli.sh --server 127.0.0.1:2183
| |
| rmr /brokers/topics/topic1
| |
| delete /admin/delete_topics/topic1
| |
| | |
| После этого можно будет пересоздать топик.
| |
| | |
| = Ссылки =
| |
| | |
| http://kafka.apache.org/documentation.html#uses
| |
| | |
| https://stackoverflow.com/questions/25452369/best-option-to-put-nginx-logs-into-kafka
| |
| | |
| [[Категория:Работа]]
| |
| [[Категория:Java]]
| |
| [[Категория:Kafka]]
| |