linux apache kafka安装与使用
来源:互联网 发布:sqlserver导出csv文件 编辑:程序博客网 时间:2024/06/05 08:48
直奔主题:
1 kafka下载https://www.apache.org/dyn/closer.cgi?path=/kafka/0.8.1.1/kafka_2.10-0.8.1.1.tgz
步骤1:
上传至目录usr/local
解压
tar -zxvf kafka_2.10-0.8.1.1.tgz
目录说明
说明
bin
操作kafka的可执行脚本,还包含windows下脚本
config
配置文件所在目录
libs
依赖库目录
logs
日志数据目录,目录kafka把server端日志分为5种类型,分为:server,request,state,log-cleaner,controller
步骤2:配置zookeeper(假设您已经安装了zookeeper,如果没有安装,请再点击solr安装,zookeeper安装,solrCloud和zookeeper实现solr集群)
kafka最为重要三个配置依次为:broker.id、log.dir、zookeeper.connectkafka server端config/server.properties参数说明和解释如下:server.properties配置属性说明
步骤3: 启动服务
cd kafka_2.10-0.8.1.1
lizhitao@localhost:~$ bin/kafka-server-start.sh config/server.properties
步骤4:创建topic
[root@localhost kafka_2.10-0.8.1.1]# bin/kafka-topics.sh --create --zookeeper 192.168.96.130:2181 --replication-factor 1 --partitions 1 --topic test步骤5:验证topic是否创建成功
[root@localhost kafka_2.10-0.8.1.1]# bin/kafka-topics.sh --list --zookeeper 192.168.96.130:2181
test
步骤6:发送一些消息验证,在console模式下,启动producer
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
This is a message
This is another message
lizhitao@localhost:~$ bin/kafka-console-consumer.sh --zookeeper192.168.96.130:2181 --topic test --from-beginning
This is a message
This is another message
上面的为单节点单实例
2 配置kafka集群模式,需要由多个broker组成
伪分布式集群(单节点多实例):
(之前是一台机器上当做一个node,现在尝试在一台机器上放3个node,即broker)
操作步骤如下:
步骤1:
root@localhost: cp config/server.properties config/server-2.properties
步骤2:
需要编辑并设置如下文件属性:
config/server-2.properties:
broker.id=2
port=9094
log.dir=/tmp/kafka-logs-2
步骤3:
启动服务
lizhitao@localhost:~$ bin/kafka-server-start.sh config/server.properties &
...
lizhitao@localhost:~$ bin/kafka-server-start.sh config/server-2.properties &
创建topic
lizhitao@localhost:~$ bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 3 --partitions 1 --topic my-replicated-topic
.....topic created success....
lizhitao@localhost:~$ bin/kafka-topics.sh --describe --zookeeper localhost:2181 --topic my-replicated-topic
Topic:my-replicated-topic PartitionCount:1 ReplicationFactor:3Configs:
Topic: my-replicated-topic Partition: 0Leader: 1Replicas: 1,2,0Isr: 1,2,0
描述topic中分区,同步副本情况
lizhitao@localhost:~$ bin/kafka-topics.sh --describe --zookeeper localhost:2181 --topic test
Topic:test PartitionCount:1ReplicationFactor:1Configs:
Topic: test Partition: 0 Leader: 0Replicas: 0Isr: 0
步骤4:作为生产者发送消息
启动Producer发送消息如果我们要用一个Producer发送给多个broker,唯一需要改变的就是在broker-list属性中指定要连接的broker:
[root@localhost kafka-0.8]# bin/kafka-console-producer.sh --broker-list localhost:9092,localhost:9093 --topic othertopic
如果我们要让不同的Producer发送给不同的broker,我们也仅仅需要为每个Producer配置响应的broker-list属性即可。
步骤5:启动一个消费者来消费消息
和之前的命令一样
[root@localhost kafka-0.8]# bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic othertopic --from-beginning
步骤6:
检查consumer offset位置
lizhitao@localhost:~$ bin/kafka-run-class.sh kafka.tools.ConsumerOffsetChecker --zkconnect localhost:2181 --group test
Group Topic Pid Offset logSize Lag Owner
my-group my-topic 0 0 0 0 test_jkreps-mn-1394154511599-60744496-0
my-group my-topic 1 0 0 0 test_jkreps-mn-1394154521217-1a0be913-0
--------------------------------------------------------分界线--------------------------------------------------------------
多节点多实例:
通过“scp -r ”把配置好的kafka目录copy到其他几台server上:
多机集群配置就是把单机的配置方法复制应用到其余的机子上,唯一不同的是broker.id需要改变 比如有3台机子 broker.id就可以分别等于 1,2,3
broker的配置配置文件(server.properties):按照单节点多实例配置方法在一个节点上启动两个实例,不同的地方是zookeeper的连接串需要把所有节点的zookeeper都连接起来
# Zookeeper 连接串
zookeeper.connect=node1:2181,node2:2181node3:2181[root@localhost ~]# cd /usr/local/kafka_2.10-0.8.1.1/
先启动zookeeper集群,再启动kakfa集群
kafka启动命令:
[root@localhost kafka_2.10-0.8.1.1]# bin/kafka-server-start.sh config/server.properties
第十步:集群启动成功后,可以试着创建topic,在一台server上创建producer,另外一台创建consumer,从producer上发送信息,看consumer是否能接收到,以验证集群对否成功。
创建topic: ./bin/kafka-topics.sh -zookeeper 192.168.96.130:2181,192.168.96.131:2181,192.168.96.132:2181 -topic test -replication-factor 2 -partitions 5 -create查看topic:./bin/kafka-topics.sh -zookeeper server1:2181,server2:2181,server3:2181 -list
创建producer:./bin/kafka-console-producer.sh -broker-list 192.168.96.130:9092,192.168.96.131:9092,192.168.96.132:9092 -topic test
创建consumer:./bin/kafka-console-consumer.sh -zookeeper 192.168.96.130:2181,192.168.96.131:2181,192.168.96.132:2181 - from-begining -topic test
- linux apache kafka安装与使用
- apache kafka系列之安装与使用
- Apache Kafka 的安装与使用
- Apache Kafka 简介与使用
- kafka安装与使用
- Kafka安装与使用
- Linux下apache安装与使用
- kafka集群安装与使用
- kafka eagle安装与使用
- Apache Kafka安装配置
- Apache-Kafka集群安装
- Apache安装与使用
- Apache kafka之旅——linux 安装配置
- Apache Kafka 分布式消息队列中间件安装与配置
- Apache Kafka 分布式消息队列中间件安装与配置
- kafka的安装配置与使用
- 【Apache KafKa系列之一】KafKa安装部署
- 【Apache Kafka】安装升级指南
- weblogic jdk1.5部署CXF,java.lang.NoSuchMethodError:javax.jws.WebService.portName()Ljava/lang/String
- MongDB基础学习(四)
- android视频引导页面
- 设计模式(7)------桥接模式
- 用VS2015编译FFMPEG
- linux apache kafka安装与使用
- cocoapods 安装
- MongDB基础学习(五)——投影,分页,排序,聚合
- 设计模式(8)------组合模式
- MySQL重命名表(RENAME TABLE语句)
- 什么是OSGI
- hive--计算方差标准差
- 如何取div中包含的span的value
- 设计模式(9)------装饰模式