kafka下载及集群配置创建

介绍

官网:http://kafka.apache.org/

Kafka用于构建实时数据管道应用程序。它是横向可扩展的,容错的,

 

镜像地址: http://mirrors.aliyun.com/apache/kafka/2.5.0/

kafka下载及集群配置创建

2.单机

随机选择一台服务器把kafka传上去:node7-2

命令列表: 

  解压:  tar -xzf kafka_2.12-2.5.0.tgz

 重命名:mv kafka_2.12-2.5.0 kafka

删除tar包:rm -rf kafka_2.12-2.5.0.tgz

3.启动zookeeper:

4.启动服务器:nohup bin/kafka-server-start.sh config/server.properties &

5.创建一个主题:bin/kafka-topics.sh --create --bootstrap-server localhost:9092 --replication-factor 1 --partitions 1 --topic kafka-hw

kafka下载及集群配置创建

6.查看主题列表:bin/kafka-topics.sh --list --bootstrap-server localhost:9092

7.描述主题:bin/kafka-topics.sh --describe --bootstrap-server localhost:9092  --topic kafka-hw

8.创建生产者:bin/kafka-console-producer.sh --bootstrap-server localhost:9092 --topic kafka-hw

9.创建一个消费者:bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic kafka-hw

10.从头开始读:bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic kafka-hw  --from-beginning

kafka下载及集群配置创建

3.集群

  1. 先启动zookeeper
  2. 在四台机器上分别都装上kafka
  3. 把node7-1上的kafka复制到三台电脑上

  4. 配置文件:config/server.properties

    (1)#第一台kafa的broderid都不能一样   broker.id=0

         (2)# 日志的目录千万不要写到tmp下面;

           log.dirs=/data/kafka/data/kafka-logs

        (3)# zookeepr;要配置上自己的zookeeper集群

          zookeeper.connect=node7-1:2181,node7-2:2181,node7-3:2181

 

5.在四台电脑上同时启动4个kafka:nohup bin/kafka-server-start.sh config/server.properties &

6.先创建一个主题:bin/kafka-topics.sh --create --zookeeper node7-1:2181,node7-2:2181,node7-3:2181 --replication-factor 1 --partitions 1 --topic test

bin/kafka-topics.sh --create --bootstrap-server node7-1:9092,node7-2:9092,node7-3:9092,node7-4:9092 --replication-factor 1 --partitions 1 --topic test1

7.查看主题:bin/kafka-topics.sh --list --bootstrap-server node-1:9092,node-2:9092,node-3:9092,node-4:9092

8.发送一些消息(生产者):bin/kafka-console-producer.sh --broker-list node7-1:9092,node7-2:9092,node7-3:9092,node7-4:9092 --topic test-clus

kafka下载及集群配置创建

9.再启动一个消费者:bin/kafka-console-consumer.sh --bootstrap-server node7-1:9092,node7-2:9092,node7-3:9092,node7-4:9092 --topic test

10.从头开始读:bin/kafka-console-consumer.sh --bootstrap-server node7-1:9092,node7-2:9092,node7-3:9092,node7-4:9092 --topic test1 --from-beginning

11.描述主题:bin/kafka-topics.sh --describe --zookeeper node7-1:2181,node7-2:2181,node7-3:2181 --topic test

kafka下载及集群配置创建

12.删除一个topic:bin/kafka-topics.sh --delete --zookeeper node7-1:2181,node7-2:2181,node7-3:2181

kafka下载及集群配置创建

其他

  1. 创建主题--多分区多副本:bin/kafka-topics.sh --create --zookeeper node-1:2181,node-2:2181,node-3:2181 --replication-factor 3 --partitions 2 --topic multi-testkafka下载及集群配置创建
  2. 描述主题:bin/kafka-topics.sh --describe --zookeeper node-1:2181,node-2:2181,node-3:2181 --topic multi-test
  3. kafka下载及集群配置创建

4.创建的主题一定得是多个分区,多个副本数,

  1. 描述主题:bin/kafka-topics.sh --describe --zookeeper node-1:2181,node-2:2181,node-3:2181 --topic multi-test

启动生产者和消费者:bin/kafka-console-producer.sh --broker-list node-1:9092,node-2:9092,node-3:9092,node-4:9092 --topic multi-testbin/kafka-console-consumer.sh --bootstrap-server node-1:9092,node-2:9092,node-3:9092,node-4:9092 --topic multi-test --from-beginning

bin/kafka-console-consumer.sh --bootstrap-server node-1:9092,node-2:9092,node-3:9092,node-4:9092 --topic multi-test --from-beginning

杀死领导者,leader会变成另外一个,不影响我们的使用