Kafka的安装和使用总结

来源:互联网 发布:淘宝客户关系管理分析 编辑:程序博客网 时间:2024/06/01 10:51

Kafak的单实例安装

1.      下载安装

http://apache.mirror.colo-serv.net/kafka/这个网址有各个版本的kafka下载

解压 tar -xzf kafka_2.11-0.11.0.0.tgz

进去bin目录下执行

bin/zookeeper-server-start.shconfig/zookeeper.properties

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

--首先启动zookeeper,kafka有自带的zookeeper程序,可以直接使用,也可以使用你自己已有的zookeeper,然后启动kafka的服务进程

在server.properties中有一行配置项:zookeeper.connect=localhost:2181,说明kafka启动服务进程是也是会去访问zookeeper并注册相关信息,另外kafka的默认端口是9092

 

2.测试使用

(1)创建topic

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

(2)查看zookeeper上的目录信息:

Kafka的bin目录下存放着zookeeper的客户端脚本zookeeper-shell.sh

[zk: 132.121.127.30:2181(CONNECTED) 21] ls/

[isr_change_notification, zookeeper, admin,consumers, cluster, config, controller, brokers, controller_epoch]

--其实里面真正比较重要的是brokers,里面/brokers/ids存放着broker和主机ip端口信息而/brokers/topics存放着每个topic和partition之间的关联信息,以及leader和is的对应关系

(3)使用自带的生产和消费脚本

./kafka-console-producer.sh --broker-list 132.121.127.30:9092--topic test

./kafka-console-consumer.sh --bootstrap-server 132.121.127.30:9092--topic test

--自带脚本的生产消费都是即时的,不能读消费启动之前的消息,另外自带脚本是会每次自动创建新group的,如果需要查看可以使用下面的命令

./kafka-consumer-groups.sh --bootstrap-server 132.121.127.30:9092 –list

console-consumer-3229

console-consumer-971

console-consumer-11557

--不要连接zookeeper,而直接连接kafka服务集群ip端口,因为新版的kafka大大减少了对zookeeper的依赖,所有执行脚本时能选择--bootstrap-server就别选择—zookeeper

 

多实例安装

(1)    拷贝server.properties文件,修改下面三个配置项:

log.dirs=/tmp/kafka-9093-logs

listeners=PLAINTEXT://:9093

broker.id=1

然后执行服务启动命令bin/kafka-server-start.shconfig/server_9093.properties,这样该实例就自动加入了kafka服务集群,由于有zookeeper作为各个实例交互的中介,所以无需显式地就加入集群

 

补充:

Linux查看端口被占用的步骤

netstat -ntulp |grep 2181

tcp       0      0 :::2181                     :::*                        LISTEN     19967/java

--可见占用该端口是个java程序,并且进程号为19967

再去ps –ef |grep 19967则可以找到具体的进程信息

 

原创粉丝点击