linux安装Kafka

1.安装

1.1安装zookeeper(单机)

安装包下载镜像地址:http://centos.ustc.edu.cn/apache/zookeeper/
测试成功下载的版本为apache-zookeeper-3.5.8-bin.tar.gz

1.1.1编辑zookeeper的配置文件

1.进入conf目录:
  [root@localhost local]# cd zookeeper-3.5.8-bin/conf
2. 将zoo_sample.cfg这个文件复制为zoo.cfg (必须是这个文件名)
  [root@localhost conf]# cp zoo_sample.cfg zoo.cfg
3. 进入zoo.cfg文件进行编辑
  [root@localhost conf]# vim zoo.cfg
4. 按 i 进入编辑模式,修改以下内容:
  dataDir=/tmp/zookeeper/data
  dataLogDir=/tmp/zookeeper/log

1.1.2启动zookeeper

1.进入bin目录,并启动zookeep。如果不是在bin目录下执行,启动zookeeper时会报错: bash: ./zkServer.sh: No such file or directory
注意: ./zkServer.sh start 前面的 . 不可忽略。
  [root@localhost local]# cd /usr/local/zookeeper-3.4.13/bin
  [root@localhost bin]# ./zkServer.sh start
2.启动成功效果如下:
  ZooKeeper JMX enabled by default
  Using config: /usr/local/zookeeper-3.4.13/bin/…/conf/zoo.cfg
  Starting zookeeper … STARTED
3.zookeeper的服务端启动后,还需要启动zookeeper的客户端:
    [root@localhost bin]# ./zkCli.sh

1.2安装kafka(单机)

安装包下载镜像地址:http://centos.ustc.edu.cn/apache/kafka/
测试成功下载的版本为kafka_2.12-2.2.2.tgz
参考博客:https://www.cnblogs.com/toutou/p/linux_install_kafka.html

1.2.1配置server.properties

默认配置

############################# Socket Server Settings #############################

# The address the socket server listens on. It will get the value returned from 
# java.net.InetAddress.getCanonicalHostName() if not configured.
#   FORMAT:
#     listeners = security_protocol://host_name:port
#   EXAMPLE:
#     listeners = PLAINTEXT://your.host.name:9092
#listeners=PLAINTEXT://:9092

# Hostname and port the broker will advertise to producers and consumers. If not set, 
# it uses the value for "listeners" if configured.  Otherwise, it will use the value
# returned from java.net.InetAddress.getCanonicalHostName().
#advertised.listeners=PLAINTEXT://your.host.name:9092

修改为

############################# Socket Server Settings #############################

# The address the socket server listens on. It will get the value returned from 
# java.net.InetAddress.getCanonicalHostName() if not configured.
#   FORMAT:
#     listeners = security_protocol://host_name:port
#   EXAMPLE:
#     listeners = PLAINTEXT://your.host.name:9092
listeners=PLAINTEXT://:9092

# Hostname and port the broker will advertise to producers and consumers. If not set, 
# it uses the value for "listeners" if configured.  Otherwise, it will use the value
# returned from java.net.InetAddress.getCanonicalHostName().
advertised.listeners=PLAINTEXT://47.114.171.128:9092
1.2.2启动kafka
1. 启动ZooKeeper

  ./zkServer.sh start
注意,需要先启动ZooKeeper再启动kafka

2 启动kafka

  bin/kafka-server-start.sh config/server.properties

3 创建topic

  bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic demo

4 查询topic列表

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

5查看topic信息

  bin/kafka-topics.sh --zookeeper localhost:2181 --describe --topic demo

6 删除topic

  bin/kafka-topics.sh --zookeeper localhost:2181 --delete --topic demo

7 停止kafka

  bin/kafka-server-stop.sh config/server.properties

1.3 终端测试

1.3.1 启动生产者

  bin/kafka-console-producer.sh --broker-list localhost:9092 --topic demo
  从上面的语法,生产者命令行客户端需要两个主要参数 -代理列表 - 我们要发送邮件的代理列表。 在这种情况下,我们只有一个代理。 Config / server.properties文件包含代理端口ID,因为我们知道我们的代理正在侦听端口9092,因此您可以直接指定它。主题名称:demo。

1.3.2 启动消费者

  为了方便测试,另启一个sheel窗口 这样效果更明显。需要注意的是旧版本和新版本的命令是不一样的
  bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic demo --from-beginning
  报错提示: zookeeper is not a recognized option
  发现在启动的时候说使用 --zookeeper是一个过时的方法,最新的版本中命令如下:
bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic demo --from-beginning

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值