写在前面:
还是一样套路
给链接:需要联系博主,有偿。
想自己下载去官网下载即可。
前提:Zookeeper已经配置完毕
版本分别为
1.kafka_2.11-0.8.2.1
2.kafka_2.12-3.0.0(后续操作以新的为主)
两个版本配置不一样,请仔细观看。
0.9之前版本元数据通过zk维护,之后kafka自己维护,具体详情百度。
进入主题:
讲解0.8版本的
- 准备安装环境
- 前提:基于Zookeeper搭建
- 并开启验证ZK的可用性
- 【123】zkServer.sh starta
- 解压缩:略
- 修改配置文件(三台机器一样)
-
vim /opt/local/kafka_2.11-0.8.2.1/config/server.properties
-
#注:三台机子,broker.id分别为1,2,3。 #修改如下几个,其余默认即可。 #broker 是全局唯一编号,不能重复,只能是数字 broker.id=1 port=9092 #kafka 运行日志(数据)存放的路径,路径不需要提前创建,kafka自动帮你创建,可以配置多个磁>盘路径,路径与路径之间可以用","分隔 log.dirs=/opt/local/kafka_2.11-0.8.2.1/data #配置连接zookeeker集群地址(在zk根目录下创建/kafka,方便管理) zookeeper.connect=192.168.0.100:2181,192.168.0.101:2181,192.168.0.102:2181/kafka #kafka1.0版本之后,默认为false,执行删除topic命令后并没有真正删除,需要取zk再删除一下。设 置true就直接删除了。 delete.topic.enable=true
-
-
vim /opt/local/kafka_2.11-0.8.2.1/config/consumer.properties
-
#修改一处即可 zookeeper.connect=192.168.0.100:2181,192.168.0.101:2181,192.168.0.102:2181/kafka
-
-
vim /opt/local/kafka_2.11-0.8.2.1/config/producer.properties
-
#修改一处即可 metadata.broker.list=192.168.0.100:9092,192.168.0.101:9092,192.168.0.102:9092
-
-
vim /etc/profile
-
#kafka export KAFKA_HOME=/opt/local/kafka_2.11-0.8.2.1 export PATH=$KAFKA_HOME/bin:$PATH
-
-
source /etc/profile
- 启动集群(三台都执行)
-
./kafka-server-start.sh -daemon /opt/local/kafka_2.11-0.8.2.1/config/server.properties
-
- 三台都jps看下如果有kafka进程,说明启动成功。
-
- 常见命令
-
//创建主题 kafka-topics.sh --zookeeper node01:2181/kafka --create --topic mmmxs --partitions 3 --replication-factor 3 //查看主题 kafka-topics.sh --zookeeper node01:2181/kafka --list //删除主题 kafka-topics.sh --zookeeper node01:2181/kafka --topic mmmxs --delete //创建生产者 kafka-console-producer.sh --topic mmmxs --broker-list node01:9092 //创建消费者 kafka-console-consumer.sh --zookeeper node01:2181/kafka --from-beginning --topic mmmxs
-
0.8讲解完毕。
讲解新版本的
- 准备安装环境
- 前提:基于Zookeeper搭建
- 并开启验证ZK的可用性
- 【123】zkServer.sh starta
- 解压缩:略
- 修改配置文件(三台机器一样)
-
vim /opt/local/kafka_2.12-3.0.0/config/server.properties
#注:三台机子,broker.id分别为1,2,3。 #修改如下几个,其余默认即可。 #broker的全局唯一编号,不能重复,只能是数字。 broker.id=0 #处理网络请求的线程数量 num.network.threads=3 #用来处理磁盘IO的线程数量 num.io.threads=8 #发送套接字的缓冲区大小 socket.send.buffer.bytes=102400 #接收套接字的缓冲区大小 socket.receive.buffer.bytes=102400 #请求套接字的缓冲区大小 socket.request.max.bytes=104857600 #kafka运行日志(数据)存放的路径,路径不需要提前创建,kafka自动帮你创建,可以配置多个磁盘路 径,路径与路径之间可以用","分隔 log.dirs=/opt/local/kafka_2.12-3.0.0/data #topic在当前broker上的分区个数 num.partitions=1 #用来恢复和清理data下数据的线程数量 num.recovery.threads.per.data.dir=1 #每个topic创建时的副本数,默认时1个副本 offsets.topic.replication.factor=1 #segment文件保留的最长时间,超时将被删除 log.retention.hours=168 #每个segment文件的大小,默认最大1G log.segment.bytes=1073741824 #检查过期数据的时间,默认5分钟检查一次是否数据过期 log.retention.check.interval.ms=300000 #配置连接Zookeeper集群地址(在zk根目录下创建/kafka,方便管) zookeeper.connect=node01:2181,node02:2181,node03:2181/kafka
-
vim /etc/profile
-
#kafka export KAFKA_HOME=/opt/local/kafka_2.12-3.0.0 export PATH=$KAFKA_HOME/bin:$PATH
-
-
source /etc/profile
- 启动集群(三台都执行)
-
./kafka-server-start.sh -daemon /opt/local/kafka_2.12-3.0.0/config/server.properties
-
- 三台都jps看下如果有kafka进程,说明启动成功。
- 常用命令
-
- 常用命令
-
#查看当前服务器中的所有topic kafka-topics.sh --bootstrap-server node01:9092 --list #创建topic kafka-topics.sh --bootstrap-server node01:9092 --create --partitions 1 --replication-factor 3 --topic first #查看first主题的详情 kafka-topics.sh --bootstrap-server node01:9092 --describe --topic first #修改分区数(注意:分区数只能增加,不能减少) kafka-topics.sh --bootstrap-server node01:9092 --alter --topic first --partitions 3 #删除topic kafka-topics.sh --bootstrap-server node01:9092 --delete --topic first #创建生产者 kafka-console-producer.sh --bootstrap-server node01:9092 --topic first #创建消费者 kafka-console-consumer.sh --bootstrap-server node01:9092 [--from-beginning] --topic first
-
完毕。