共计 2277 个字符,预计需要花费 6 分钟才能阅读完成。
一、Kafka 装置配置流程
1、解压安装包 kafka_2.11-2.0.0.tgz 至 /opt/ 目录下, 并重命名为 kafka
tar -zxvf kafka_2.11-2.0.0.tgz -C /opt/
cd /opt/
mv kafka_2.11-2.0.0/ kafka
2、批改 /opt/kafka/config 目录下的配置文件 server.properties
cd /opt/kafka/config/
vi server.properties
批改内容如下:
broker.id=0
advertised.listeners=PLAINTEXT://192.168.247.201:9092
log.dirs=/opt/kafka/kafka-logs
zookeeper.connect=192.168.247.201:2181
delete.topic.enable=true
3、批改环境变量配置
vi /etc/profile
配置内容如下:
export KAFKA_HOME=/opt/kafka
export PATH=... :$KAFKA_HOME/bin:$PATH
保留使其立刻失效
source /etc/profile
4、启动服务并查看
启动 kafak 前,须要启动 zookeeper
zkServer.sh start
zkServer.sh status
kafka-server-start.sh -daemon ./server.properties
为了方便使用,可创立软连贯,应用软连贯启动 kafka
ln -s /opt/kafka/config/server.properties /opt/lns/server.properties
kafka-server-start.sh -daemon /opt/lns/server.properties
二、Kafka 入门篇之常用命令
Broker(缓存代理,Kafka 集群中的一台或多台服务器统称 broker.)
启动
kafka-server-start.sh -daemon /opt/lns/server.properties
启动 kafka 命令加上–daemon,那么 kafka 会以守护过程的形式启动
查看启动是否胜利
jps
Topic
1、创立队列
–zookeeper 指定 zookeeper 的地址和端口,–partitions 指定 partition 的数量,–replication-factor 指定数据正本的数量。
kafka-topics.sh --create --zookeeper 192.168.247.201:2181 --topic kb09demo --partitions 1 --replication-factor 1
// 创立 Topic 5 个分区
kafka-topics.sh --create --zookeeper 192.168.247.201:2181 --topic kb09demo2 --partitions 5 --replication-factor 1
2、查看队列列表
kafka-topics.sh --zookeeper 192.168.247.201:2181 --list
3、查看指定 topic 明细
kafka-topics.sh --zookeeper 192.168.247.201:2181 --topic kb09demo --describe
kafka-topics.sh --zookeeper 192.168.247.201:2181 --topic kb09demo2 --describe
从第一排能够看到 topic 的名称,partition 数量,正本数量。
从第二排开始,表格蕴含了五列,显示 partition 的状况,别离示意:topic 名称、partition 编号,此 partions 的 leader broker 编号,正本寄存的 broker 编号,同步 broker 编号。
4、批改列对
上面命令,减少 partion 数量,从 5 个 partition 减少到 6 个
kafka-topics.sh --zookeeper 192.168.247.201:2181 --alter --topic kb09demo2 --partitions 6
然而缩小 partition 是不容许的。如果执行配置的 partition 变少,会抛出一个谬误,显示 partition 数量只能减少
5、删除队列
删除之前,须要先将 server.properties 文件中的配置 delete.topic.enable=true 更改一下,否则执行删除命令不会失效。
kafka-topics.sh --zookeeper 192.168.247.201:2181 --delete --topic kb09demo
Producer(音讯的生成者)
创立生产音讯
运行 Producer 并将 Terminal 输出的音讯发送到服务端
kafka-console-producer.sh --topic kb09demo --broker-list 192.168.247.201:9092
Consumer(音讯的消费者)
启动 Consumer 读取音讯并输入到规范输入
kafka-console-consumer.sh --topic kb09demo --bootstrap-server 192.168.247.201:9092
如果加上 from-beginning 指定从第一条数据开始生产
kafka-console-consumer.sh --topic kb09demo --bootstrap-server 192.168.247.201:9092 --from-beginning