2KB项目,专业的源码交易网站 帮助 收藏 每日签到

不使用 Cygwin 的情况下在Windows 运行 Apache Kafka

  • 时间:2019-01-23 18:29 编辑:2KB 来源:2KB.COM 阅读:306
  • 扫一扫,手机访问
  • 分享
摘要:
Kafka 英文原文:Running Apache Kafka on Windows without Cygwin

引言

本教程的目的是提供在 Windows 操作系统上运行 Apache Kafka 的一个手把手的指南。本指南也将提供设置 Java 与 ZooKeeper 的指导。Apache kafka 是一个快速且可伸缩的消息队列系统,具有在读写环境中处理真正重载荷的能力。你可以在 http://kafka.apache.org/ 这个网站上找到更多关于 kafka 的东西。Apache kafka 需要一个正在运行的 ZooKeeper 实例,用于提供可靠的分布式调度。请在 https://zookeeper.apache.org/ 这个网站上寻找更多关于 ZooKeeper 的东西。

请查看这个视频来将 Kafka 安装到 Windows 上。(然而并没有视频,你懂的)

下载必要文件

  1. 根据你的操作系统和 CPU 架构下载服务器 JRE,地址为 http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html

  2. 下载并安装 7-zip,地址为 http://www.7-zip.org/download.html

  3. 下载并使用 7-zip 解压 Zookeeper,地址为 http://zookeeper.apache.org/releases.html

  4. 下载并使用 7-zip 解压 Kafka,地址为 http://kafka.apache.org/downloads.html

安装

a. 安装及配置 Java 运行时环境(JRE)

  1. 开始 JRE 的安装并选中“Change destination folder”复选框,然后点击 install。

  1. 修改安装路径为任何名字中不带空格的文件夹。比如 C:Javajre1.8.0_xx 。(默认情况下它将会是 C:Program FilesJavajre1.8.0_xx)然后点击 Next。

  2. 现在通过 控制面板 -> 系统 -> 高级系统设计 -> 环境变量 来打开系统环境变量对话框。

  3. 点击用户变量中的新建按钮,然后在变量名中输入 JAVA_HOME,并在变量值种设置你的 jre 路径。它看起来应该如下图:

(Java 的路径和版本可以随你使用的 Kafka 版本而改变)

  1. 点击确定按钮

  2. 在你刚刚打开的“环境变量”对话框中的“系统变量”部分,找到 Path 变量。

  3. 修改路径,在类似下图中的已经写有文字的文本框末尾输入“;%JAVA_HOME%in”。

  1. 要确认 Java 的安装情况,只需要打开 cmd 并输入“java -version”,你就可以看到你刚刚安装的 java 版本了。

如果你的命令提示符下出现类似上图的内容,你就可以放心的继续做后面的步骤了。否则,你需要检查你的安装版本是否与操作系统架构(x86,x64)相匹配,或 Path 环境变量是否正确。

b. 安装及运行 Zookeeper

  1. 打开你的 zookeeper 配置目录。我的目录是 C:zookeeper-3.4.7conf

  2. 重命名 “zoo_sample.cfg” 为 “zoo.cfg”

  3. 在任何文本编辑器中打开 zoo.cfg,比如使用记事本,不过我比较喜欢 notepad++

  4. 找到并修改 dataDir=/tmp/zookeeper 这段话为 dataDir=C:zookeeper-3.4.7data

  5. 就像我们在安装 Java 时那样,在系统环境变量中添加条目

    1. 在系统变量中添加 ZOOKEEPER_HOME = C:zookeeper-3.4.7

    2. 修改 Path 系统变量,添加 ;%ZOOKEEPER_HOME%in;

  6. 你可以在 zoo.cfg 文件种修改默认 zookeeper 端口(默认端口为 2181)。

  7. 在一个新的 cmd 中输入 zkserver 来运行 zookeeper。

  8. 你将看到命令提示符出现类似下图种的一些细节。

恭喜,你的 zookeeper 为已经启动并运行在 2181 端口上了。

c. 配置 Kafka

  1. 打开你的 Kafka 配置目录。我的目录是 C:kafka_2.11-0.9.0.0config

  2. 修改“server.properties”文件

  3. 找到并修改“log.dirs=/tmp/kafka-logs”这行为“log.dir= C:kafka_2.11-0.9.0.0kafka-logs”

  4. 如果你的 zookeeper 正运行在一些其他的机器或集群上,你可以修改“zookeeper.connect=localhost:2181”为你自定义的 IP 和端口。在这次演示中,我们使用的是同一台机器,所以不需要修改。另外 Kafka 的端口和 broker.id 也可以在这个文件中进行配置。其他设置不变。

  5. 你的 Kafka 将会在默认的 9092 端口上运行并连接到默认端口为 2181 的 zookeeper 上。

d. 运行 Kafka 服务器

注意:

请确保你的 zookeeper 已经启动并在启动 Kafka 服务器之前运行。

  1. 打开 kafka 安装目录 C:kafka_2.11-0.9.0.0

  2. 按 Shift + 右键并选择“在此处打开命令行窗口”选项来在此处打开一个命令提示符

  3. 现在输入 .inwindowskafka-server-start.bat .configserver.properties 并按回车键

              

  1. 如果一切正常的话,命令提示符的内容看起来应该如下图

  1. 现在你的 Kafka 已经启动并运行了,所以现在你可以使用 java 或 scala 代码或在命令提示符中创建 topic 和 produce 或 consume 了。

e. 生成 Kafka 的 Topic

  1. 首先生成一个名为”test“的 Kafka 主题,并且设置复制因子参数为 1,因为我们只有一个 Kafka 服务器正在运行。如果你有一个包含多个 Kafka 服务的集群,你可以增大此参数,以此提高对数据可用性和系统容错性。

  2. 打开一个命令行窗口,进入到目录 C:kafka_2.11-0.9.0.0inwindows

  3. 输入如下命令,并回车。

kafka-topics.bat --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test


f. 在测试服务器上生成一对生产者和消费者

  1. 打开一个新的命令行窗口,进入到目录 C:kafka_2.11-0.9.0.0inwindows

  2. 输入如下命令,启动一个生产者。kafka-console-producer.bat --broker-list localhost:9092 --topic test”.

  3. 再打开一个新的命令行窗口,同样进入到目录C:kafka_2.11-0.9.0.0inwindows

  4. 输入如下命令,启动一个消费者。“kafka-console-consumer.bat --zookeeper localhost:2181 --topic test”

  5. 现在你有两个命令行窗口,如下面两张图所示。


  1. 在生产者命令行窗口内随便输入一段字符,然后回车,你应该能看到同样的消息出现在消费者的命令行窗口内。


  1. 如果在消费者端能看到你推送的消息,那么你已经成功的安装了Kafka。

一些有用的命令

  1. 列举 Topic: kafka-topics.bat --list --zookeeper localhost:2181

  2. 描述 Topic: kafka-topics.bat --describe --zookeeper localhost:2181 --topic [Topic Name]

  3. 从头读消息: kafka-console-consumer.bat --zookeeper localhost:2181 --topic [Topic Name] --from-beginning

  4. 删除 Topic: kafka-run-class.bat kafka.admin.TopicCommand --delete --topic [topic_to_delete] --zookeeper localhost:2181

参考链接

  1. http://kafka.apache.org/documentation.html

  2. https://zookeeper.apache.org/doc/trunk/zookeeperStarted.html

结论

我相信,这篇文章会对初/中级开发人员在 Windows 的服务器或者桌面系统上启动一个 kafka 服务器带来帮助。

你们的朋友

Gopal Tiwari                                              

License

这篇文章以及相关代码遵循 The Code Project Open License (CPOL) 协议

本文中的所有译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接。 2KB翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。


2KB项目(www.2kb.com,源码交易平台),提供担保交易、源码交易、虚拟商品、在家创业、在线创业、任务交易、网站设计、软件设计、网络兼职、站长交易、域名交易、链接买卖、网站交易、广告买卖、站长培训、建站美工等服务

  • 全部评论(0)
资讯详情页最新发布上方横幅
最新发布的资讯信息
【计算机/互联网|】Nginx出现502错误(2020-01-20 21:02)
【计算机/互联网|】网站运营全智能软手V0.1版发布(2020-01-20 12:16)
【计算机/互联网|】淘宝这是怎么了?(2020-01-19 19:15)
【行业动态|】谷歌关闭小米智能摄像头,因为窃听器显示了陌生人家中的照片(2020-01-15 09:42)
【行业动态|】据报道谷歌新闻终止了数字杂志,退还主动订阅(2020-01-15 09:39)
【行业动态|】康佳将OLED电视带到美国与LG和索尼竞争(2020-01-15 09:38)
【行业动态|】2020年最佳AV接收机(2020-01-15 09:35)
【行业动态|】2020年最佳流媒体设备:Roku,Apple TV,Firebar,Chromecast等(2020-01-15 09:31)
【行业动态|】CES 2020预览:更多的流媒体服务和订阅即将到来(2020-01-08 21:41)
【行业动态|】从埃隆·马斯克到杰夫·贝佐斯,这30位人物定义了2010年代(2020-01-01 15:14)
联系我们

Q Q: 7090832

电话:400-0011-990

邮箱:7090832@qq.com

时间:9:00-23:00

联系客服
商家入住 服务咨询 投拆建议 联系客服
0577-67068160
手机版

扫一扫进手机版
返回顶部