Kafka的部分配置

Kafka

1.安装Java环境

2.安装Zookeeper

注意:

​ 1.打开zookeeper-x.x.x\conf,把zoo_sample.cfg重命名为zoo.cfg

​ 2.在文本中编辑zoo.cfg,把dataDir的值改成"./zookeeper-x.x.x/data"

​ 3.设置系统变量:

​ 1.新建:ZOOKEEPER_HOME:x\x\x\zookeeper-x.x.x

​ 2.在path后追加:%ZOOKEEPER_HOME%\bin

3.Kafka

注意:

​ 1.打开kafka-x.x.x\config\server.properties,把log.dirs的值改为"./logs"或者其它,就是为了存日志

1.开启kafka:

1.开启zookeeper:

1.windows:直接执行zkServer.cmd
2.linux:bin/zookeeper-server-start.sh config/zookeeper.properties

2.开启Kafka

windows:

.\bin\windows\kafka-server-start.bat .\config\server.properties

linux:

bin/kafka-server-start.sh config/server.properties
2.执行命令:
1.创建一个名为“test”的topic,它有一个分区和一个副本:
windows进入bin\windows\目录执行:
kafka-topics.bat --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test

linux下进入bin目录执行:
kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test

(以下部分都windows同linux的执行方式同1一样)

2.用list命令查看topic
kafka-topics.bat --list --zookeeper localhost:2181
3.发送消息

Kafka自带命令行客户端,它从标准输入中获取输入,并将其作为message发送到Kafka集群,默认情况下,每行将作为单独的message发送

运行producer,然后在控制台输入一些消息以发送到服务器。

kafka-console-producer.bat --broker-list localhost:9092 --topic test

此时在控制台输入信息v

启动一个consumer

kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic test --from-beginning
4.设置多代理集群

首先为每个代理创建一个配置文件(在windows上使用copy命令代替):

cp config/server.properties config/server-1.properties
cp config/server.properties config/server-2.properties

之后编辑

config/server-1.properties:
   broker.id=1
   listeners=PLAINTEXT://:9093
   log.dir=/tmp/kafka-logs-1

config/server-2.properties:
   broker.id=2
   listeners=PLAINTEXT://:9094
   log.dir=/tmp/kafka-logs-2

根据配置启动两个新的节点:

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

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

创建一个副本为3的topic

> bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 3 --partitions 1 --topic my-replicated-topic

假如现在有二个集群,想要知道各代理都在做什么,查询命令

> kafka-topics.sh --describe --zookeeper localhost:2181 --topic my-replicated-topic
Topic: my-replicated-topic      PartitionCount: 1       ReplicationFactor: 3    Configs:
       Topic: my-replicated-topic      Partition: 0    Leader: 0       Replicas: 0,2,1 Isr: 0,2,1

以下是对输出信息的解释。第一行给出了所有分区的摘要,下面的每行都给出了一个分区的信息。因为我们只有一个分区,所以只有一行。

  • “leader”是负责给定分区所有读写操作的节点。每个节点都是随机选择的部分分区的领导者。
  • “replicas”是复制分区日志的节点列表,不管这些节点是leader还是仅仅活着。
  • “isr”是一组“同步”replicas,是replicas列表的子集,它活着并被指到leader。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值