CentOS安装Kafka

511 阅读2分钟

一、下载

下载地址:kafka.apache.org/downloads

二、安装

1、安装前准备

安装JDK:CentOS安装JDK

安装ZooKeeper:CentOS安装ZooKeeper

2、解压
shell> tar -zxvf kafka_2.12-2.2.0.tgz -C /usr/local/
3、配置
shell> cd /usr/local/kafka_2.12-2.2.0/config
shell> vim server.properties

编辑以下内容

# 默认为/tmp/kafka-logs,可能会被删掉
log.dirs=/usr/local/kafka_2.12-2.2.0/logs
# 监听地址,ifconfig查看到的本机真实地址,单节点不配置也可以
listeners=PLAINTEXT://192.168.1.10:9092
# 打开注释,设置为对外可访问的地址,可以是主机名,也可以是ip地址,但一定是连接kafka的其他机器可以访问到的地址,简单来说就是“允许远程连接”
# 如果是局域网(内网、aliyun腾讯云的vpc等),直接设置成局域网ip就好了
# 如果是云主机并且直接通过外网访问kafka(一般不这么做,但是如果这么做了),需要设置成弹性ip或绑定的域名
# advertised.listeners=PLAINTEXT://tianranll.cn:9092
advertised.listeners=PLAINTEXT://192.168.1.10:9092
# zookeeper地址及端口号
# 如果是集群,可能是这样:hostname1:port1,hostname2:port2,hostname3:port3
# 如果是带有chroot:hostname1:port1,hostname2:port2,hostname3:port3/chroot/path
zookeeper.connect=192.168.1.10:2181

三、启动&停止

启动
shell> cd /usr/local/kafka_2.12-2.2.0
shell> bin/kafka-server-start.sh -daemon config/server.properties

如果使用kafka-manager,需要开启JMX_PORT

shell> JMX_PORT=9999 bin/kafka-server-start.sh -daemon config/server.properties
停止
shell> bin/kafka-server-stop.sh

四、测试

1、jps,确认kafka是否存在(或者ps查看kafka相关进程)
2、zookeeper查看注册信息
shell> cd /usr/local/zookeeper-3.5.3-beta/
shell> bin/zkCli.sh
[zk: localhost:2181(CONNECTED) 0] ls /brokers/ids
[0]
[zk: localhost:2181(CONNECTED) 1] get /brokers/ids/0
{"listener_security_protocol_map":{"PLAINTEXT":"PLAINTEXT"},"endpoints":["PLAINTEXT://VM_2_24_centos:9092"],"jmx_port":-1,"host":"VM_2_24_centos","timestamp":"1585396767598","port":9092,"version":4}

3、kafka命令
创建topic
shell> bin/kafka-topics.sh --create --bootstrap-server localhost:9092 --replication-factor 1 --partitions 1 --topic test
查看topic
shell> bin/kafka-topics.sh --list --bootstrap-server localhost:9092
test
生产者发送消息
shell> bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
>Hello
>World
消费者消费消息
shell> bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning
Hello
World