kafka安装与配置

一.下载

1.下载安装

2.解压

解压命令:tar –zxvf  kafka_2.13-2.4.0.tgz

移动: cp -R kafka_2.13-2.4.0 /zjl/program/

创建软链接: ln -s kafka_2.13-2.4.0/  /zjl/program/kafka

解压后即可使用

配置zookeeper集群参见:zookeeper安装配置 - pk.com.cn - 博客园

3.配置kafka

  配置server.properties

位置:  /kafka/config

默认配置advertised.listeners=PLAINTEXT://your.host.name:9092

修改为advertised.listeners=PLAINTEXT://ip:9092

例:advertised.listeners=PLAINTEXT://192.168.244.128:9092

1.ip为服务器ip
2.hostname和端口是用来建议给生产者和消费者使用的,如果没有设置,将会使用listeners的配置,如果listeners也没有配置,将使用java.net.InetAddress.getCanonicalHostName()来获取这个hostname和port,对于ipv4,基本就是localhost了。
3."PLAINTEXT"表示协议,可选的值有PLAINTEXT和SSL,hostname可以指定IP地址,也可以用"0.0.0.0"表示对所有的网络接口有效,如果hostname为空表示只对默认的网络接口有效。也就是说如果你没有配置advertised.listeners,就使用listeners的配置通告给消息的生产者和消费者,这个过程是在生产者和消费者获取源数据(metadata)。
主要注意三个配置:
1.broker.id标识本机
2.log.dirs是kafka接收消息存放路径
3.zookeeper.connect指定连接的zookeeper集群地址

二 .  kafka 集群计划 

三台机器:192.168.244.128    192.168.244.130   192.168.244.131

修改server.properties文件,只修改三项,其他根据需要配置

192.168.244.128

broker.id=1 log.dirs=/zjl/program/kafka/datalogs/kafka-logs zookeeper.connect=192.168.244.128:2181,192.168.244.130:2181,192.168.244.131:2181

192.168.244.130

broker.id=2
log.dirs=/zjl/program/kafka/datalogs/kafka-logs
zookeeper.connect=192.168.244.128:2181,192.168.244.130:2181,192.168.244.131:2181

192.168.244.131

broker.id=3
log.dirs=/zjl/program/kafka/datalogs/kafka-logs
zookeeper.connect=192.168.244.128:2181,192.168.244.130:2181,192.168.244.131:2181

三.启动

三个节点分别执行:

  nohup ./kafka-server-start.sh -daemon ../config/server.properties &

启动时若报错java.net.UnknownHostException  XXX

命令查看:hostname  打印出本机hostname 我的机器是  zjlLinux1

修改文件 :vim /etc/hosts

添加内容  192.168.244.128  zjlLinux1  #ip是本机IP 后边是hostname

四. 校验启动是否成功

  1. jps
  2. ps –ef|grep kafka

五. kafka-manager

下载地址:https://github.com/yahoo/kafka-manager/releases

https://github.com/yahoo/CMAK/releases

编译

tar -zxvf 1.3.3.17.tar.gz

cd kafka-manager-1.3.3.17/

./sbt clean dist

配置

在解压后的conf目录中打开 application.conf文件,修改其中的配置信息,最主要的内容为:kafka-manager.zkhosts="192.168.1.22:2181,192.168.1.23:2181,192.168.1.24:2181"  配置为Kafka的 zookeeper 服务器。你还可以通过环境变量ZK_HOSTS配置这个参数值。

启动

在解压的目录中,使用下面的命令启动Kafka-manager :    bin/kafka-manager

默认情况下端口为9000,你还可以通过下面的命令指定配置文件和端口: bin/kafka-manager -Dconfig.file=/path/to/application.conf -Dhttp.port=9000

启动后,从浏览器打开:http://[服务器IP]:9000/  就可以看到配置页面了

六.kafka基本命令操 作

1.创建topic

./kafka-topics.sh --create --zookeeper 192.168.244.128:2181,192.168.244.130:2181,192.168.244.131:2181  --replication-factor 3 --partitions 6 --topic kfk_test

2.列出创建的topic

./kafka-topics.sh --list --zookeeper 192.168.244.128:2181,192.168.244.130:2181,192.168.244.131:2181 

3. 生成数据

注意这里的端口号是kafka的端口  9092

./kafka-console-producer.sh -broker-list 192.168.244.128:9092,192.168.244.130:9092,192.168.244.131:9092   --topic kfk_test

4.消费生产数据 

kafka 0.9版本之前用zookeeper
./kafka-console-consumer.sh --zookeeper 192.168.244.128:2181,192.168.244.130:2181,192.168.244.131:2181  --from-beginning --topic kfk_test
 
kafka 0.9版本之后不推荐zookeeper方式,仍然支持,但逐渐会被取消,推荐bootstrap-server方式

注意这里的端口号是kafka的端口  9092
./kafka-console-consumer.sh --bootstrap-server  192.168.244.128:9092,192.168.244.130:9092,192.168.244.131:9092  --from-beginning --topic kfk_test

 6.查看指定topic信息

./kafka-topics.sh --describe --zookeeper 192.168.244.128:2181,192.168.244.130:2181,192.168.244.131:2181 --topic kfk_test

7 删除kafka中的topic

./kafka-topics.sh --delete --zookeeper 192.168.244.128:2181,192.168.244.130:2181,192.168.244.131:2181 --topic kfk_test

七.删除zookeeper中的topic信息

  1. rmr /brokers/topics/kfk_test

  2. rmr /config/topics/kfk_test

  3. rmr /admin/delete_topics/kfk_test

  4. rmr /consumers/kfk_test-group

 删除topic数据相关的目录
rm -rf /var/local/kafka/data/kfk_test*

八 .kafka中zookeeper参数配置

  1. zookeeper.connect = localhost:2181  zookeeper集群的地址,可以是多个,多个之间用逗号分割 hostname1:port1,hostname2:port2,hostname3:port3
  2. zookeeper.session.timeout.ms=6000  ZooKeeper的最大超时时间,就是心跳的间隔,若是没有反映,那么认为已经死了,不易过大
  3. zookeeper.connection.timeout.ms =6000  ZooKeeper的连接超时时间
  4. zookeeper.sync.time.ms =2000  zookeeper的follower同leader的同步时间
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值