Centos安装Kafka
转载自https://www.cnblogs.com/linjiqin/p/13196347.html,亲测好使,对初学者比较友好,有几个地方需要修改,我这里已经改正
Centos安装Kafka
点对点消息系统:生产者发送一条消息到queue,一个queue可以有很多消费者,但是一个消息只能被一个消费者接收,当没有消费者可用时,这个消息会被保存直到有一个可用的消费者,所以Queue实现了一个可靠的负载均衡。
发布订阅消息系统:发布者发送到topic的消息,只有订阅了topic的订阅者才会收到消息。topic实现了发布和订阅,当你发布一个消息,所有订阅这个topic的服务都能得到这个消息,所以从1到N个订阅者都能得到这个消息的拷贝。
kafka介绍
Apache Kafka是一种高吞吐量的分布式发布订阅消息系统。它最初由LinkedIn公司开发,之后成为Apache项目的一部分。
1、下载Kafka
cd /root/soft wget https://mirrors.bfsu.edu.cn/apache/kafka/2.4.1/kafka_2.11-2.4.1.tgz
2、解压
tar -zxvf kafka_2.11-2.4.1.tgz cd /root/soft/kafka_2.11-2.4.1
3、修改 kafka-server 配置文件
vim /root/soft/kafka_2.11-2.4.1/config/server.properties 修改其中的: broker.id=0 log.dir=/usr/local/kafka/kafka-logs #配置zookeeper管理kafka的路径 zookeeper.connect=localhost:2181 #配置kafka的监听端口 listeners=PLAINTEXT://:9092 #把kafka的地址端口注册给zookeeper,如果是远程访问要改成外网IP advertised.listeners=PLAINTEXT://203.195.205.63:9092
4、启动 Kafka 服务
Kafka依赖zk,需先启动zk。
4.1、启动 zk
cd /root/soft/zookeeper-3.4.14/bin
zookeeper的启动需要找到配置文件
有两种方式:
第一种启动后,需要另外打开控制台,因为退出进程就断了
./zookeeper-server-start.sh --daemon ../config/zookeeper.properties
第二种启动方式,可以确保进程在后台运行
nohup ./zookeeper-server-start.sh ../config/zookeeper.properties &
4.2、启动 Kafka
使用 kafka-server-start.sh 启动 kafka 服务:
cd /root/soft/kafka_2.11-2.4.1/bin
kafka启动也建议用后台启动的方式:
nohup ./kafka-server-start.sh ../config/server.properties &
下边是作者原文:
##Kafka启动方法一
./kafka-server-start.sh ../config/server.properties
##Kafka启动方法二
./kafka-server-start.sh ../config/server.properties > /logs/kafka.log 2>&1 &
5、验证kafka是否可以使用
5.1、进入 /root/soft/kafka_2.11-2.4.1/bin 目录下 $ cd /root/soft/kafka_2.11-2.4.1/bin 5.2、运行kafka生产者发送消息 $ ./kafka-console-producer.sh --broker-list localhost:9092 --topic sun 发送消息 > aa 5.3、运行kafka消费者接收消息 $ ./kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic sun --from-beginning aa 5.4、查看主题列表 ./kafka-topics.sh --list --zookeeper localhost:2181 sun