微信搜索superit|邀请体验:大数据, 数据管理、OLAP分析与可视化平台 | 赞助作者:赞助作者

kafka-stack-docker-compose, Docker 编写文件以创建完全工作的Kafka 堆栈

kafka aide_941 9℃

Git URL:

git://www.github.com/simplesteph/kafka-stack-docker-compose.git

Git Clone代码到本地:

git clone http://www.github.com/simplesteph/kafka-stack-docker-compose

Subversion代码到本地:

$ svn co --depth empty http://www.github.com/simplesteph/kafka-stack-docker-compose
Checked out revision 1.
$ cd repo
$ svn up trunk

Build Status

kafka-stack-docker-compose这个复制和可以能的实际部署配置,你的,服务器和 Kafka 服务器实际上都是相互独立的。 这解决了docker构成的所有网络障碍,并且兼容跨平台。 它只需要更新你的主机文件。

堆栈版本

  • Zookeeper版本:3.4.9
  • Kafka 版本:1.1.0 ( 合流 4.1.0 )
  • Kafka 模式注册表:融合 4.1.0
  • Kafka 架构注册表用户界面:0.9.4
  • Kafka Rest代理:融合 4.1.0
  • Kafka 主题用户界面:0.9.3
  • Kafka 连接:融合 4.1.0
  • Kafka 连接用户界面:0.9.4
  • Zoonavigator: 0.4.0

要求

主机文件更改

有关如何修改主机文件的详细说明,请参阅 https://support.rackspace.com/how-to/modify-your-hosts-file/

在 Docker> = 1.12,Docker 或者 Windows 10中使用,请添加以下行到 /etc/hosts 或者 C:WindowsSystem32Driversetchosts:


127.0.0.1 kafka1


127.0.0.1 kafka2


127.0.0.1 kafka3


127.0.0.1 zoo1


127.0.0.1 zoo2


127.0.0.1 zoo3


127.0.0.1 kafka-schema-registry


127.0.0.1 kafka-schema-registry-ui


127.0.0.1 kafka-rest-proxy


127.0.0.1 kafka-topics-ui


127.0.0.1 kafka-connect-ui


127.0.0.1 zoonavigator-web


127.0.0.1 zoonavigator-api


如果使用 Docker <= 1.11,或者为 Windows ( 你的Docker 机器IP通常是 192.168.99.100 ) 添加 Docker 工具箱,请将以下行添加到 /etc/hosts 或者 C:WindowsSystem32Driversetchosts:


192.168.99.100 kafka1


192.168.99.100 kafka2


192.168.99.100 kafka3


192.168.99.100 zoo1


192.168.99.100 zoo2


192.168.99.100 zoo3


192.168.99.100 kafka-schema-registry


192.168.99.100 kafka-schema-registry-ui


192.168.99.100 kafka-rest-proxy


192.168.99.100 kafka-topics-ui


192.168.99.100 kafka-connect-ui


192.168.99.100 zoonavigator-web


192.168.99.100 zoonavigator-api


单个 zookeeper/单个 Kafka

这里配置适合大多数开发要求。

  • 将在 zoo1:2181 处提供动物园
  • Kafka 将在 kafka1:9092 处可用

运行:


docker-compose -f zk-single-kafka-single.yml up


docker-compose -f zk-single-kafka-single.yml down


单个动物园 zookeeper/多个 Kafka

如果你想拥有两个代理,并尝试复制/容错。

  • 将在 zoo1:2181 处提供动物园
  • Kafka 将在 kafka1:9092,kafka2:9093,kafka3:9094

运行:


docker-compose -f zk-single-kafka-multiple.yml up


docker-compose -f zk-single-kafka-multiple.yml down


多个 zookeeper/单个 Kafka

如果你想有三个动物园管理员和试验员的容错能力。

  • 将在 zoo1:2181,zoo2:2182,zoo3:2183 处提供动物园
  • Kafka 将在 kafka1:9092 处可用

运行:


docker-compose -f zk-multiple-kafka-single.yml up


docker-compose -f zk-multiple-kafka-single.yml down


多个 zookeeper/多个 Kafka

如果你想让三个动物园管理员和两个 Kafka 代理来试验生产设置。

  • 将在 zoo1:2181,zoo2:2182,zoo3:2183 处提供动物园
  • Kafka 将在 kafka1:9092,kafka2:9093,kafka3:9094

运行:


docker-compose -f zk-multiple-kafka-multiple.yml up


docker-compose -f zk-multiple-kafka-multiple.yml down


完整堆栈

  • 单个 Zookeeper: zoo1:2181
  • 单个 Kafka: kafka1:9092
  • Kafka 架构注册表:kafka-schema-registry:8081
  • Kafka 架构注册表用户界面:kafka-schema-registry-ui:8001
  • Kafka Rest代理:kafka-rest-proxy:8082
  • Kafka 主题用户界面:kafka-topics-ui:8000
  • Kafka 连接:kafka-connect:8083
  • Kafka 连接用户界面:kafka-connect-ui:8003
  • Zoonavigator站点:zoonavigator-web:8004

运行:


docker-compose -f full-stack.yml up


docker-compose -f full-stack.yml down


常见问题解答

Kafka

Q: Kafka 日志太冗长,如何减少它? A: 将以下行添加到你的docker中组成 环境变量: KAFKA_LOG4J_LOGGERS:"kafka.controller=INFO,kafka.producer.async.DefaultEventHandler=INFO,state.change.logger=INFO" 可以在以下位置访问完整日志控制: https://github.com/confluentinc/cp-docker-images/blob/master/debian/kafka/include/etc/confluent/docker/log4j.properties.template

Q: 如何删除数据以重新开始? A: 你的数据从 Docker 编写文件夹中保持,如果你想要重置完整堆栈 Docker 中的数据,请先执行。 docker-compose -f full-stack.yml down ,然后删除目录 full-stack,例如 rm -r -f full-stack

转载请注明:SuperIT » kafka-stack-docker-compose, Docker 编写文件以创建完全工作的Kafka 堆栈

喜欢 (0)or分享 (0)