目录

1.服务器环境

2.安装kafka

1)上传安装介质

2)解压安装

3)修改配置文件

4)启动zookeeper

5)启动kafka

6)测试

​​​​​


1.服务器环境

系统版本:Red Hat Enterprise Linux Server release 6.8

2.安装kafka

1)上传安装介质

kafka官网:https://kafka.apache.org/

2)解压安装

解压命令:

sudo tar -xzvf kafka_2.12-1.1.0.tgz

3)修改配置文件

解压完成后,进入解压后的目录。

cd kafka_2.12-1.1.0

切至config

cd config

修改前备份

sudo cp server.properties server.properties.20182728.bak

修改文件

sudo vim server.properties

修改zookeeper.connect

Zookeeper默认的端口号是2181,这里填写本机IP加2181端口即可。

然后,再增加以下几行:

#kafka端口

port=9092

#kafka主机名

host.name=ip(注意修改)

listeners=PLAINTEXT://ip:9092

advertised.listeners=PLAINTEXT://ip:9092

备注:listeners一定要配置成为IP地址;如果配置为localhost或服务器的hostname,在使用java发送数据时就会抛出异 常:org.apache.kafka.common.errors.TimeoutException: Batch Expired 。因为在没有配置advertised.host.name 的情况下,Kafka并没有像官方文档宣称的那样改为广播我们配置的host.name,而是广播了主机配置的hostname。远端的客户端并没有配置 hosts,所以自然是连接不上这个hostname的

 4)启动zookeeper

本版本的kafka集成了zookeeper,所以不需要另外安装了。

切至kafka安装目录,执行命令

sudo bin/zookeeper-server-start.sh config/zookeeper.properties &

5)启动kafka

切至kafka安装目录

执行命令:

sudo bin/kafka-server-start.sh config/server.properties 1>/dev/null 2>&1 &

6)测试

创建topic

切至kafka安装目录,执行命令:

sudo bin/kafka-topics.sh --create --replication-factor 1 --partitions 1 --zookeeper ip(注意修改):2181 --topic test

查看创建的topic,命令:

sudo bin/kafka-topics.sh --list --zookeeper ip(注意修改):2181

创建生产者

sudo bin/kafka-console-producer.sh --broker-list ip(注意修改):9092 --topic test

创建消费者

执行命令:

sudo bin/kafka-console-consumer.sh --bootstrap-server ip(注意修改):9092 --topic test --from-beginning

可以得到生产者发送的消息

低版本的kafka创建消费者的命令:

sudo bin/kafka-console-consumer.sh --zookeeper ip(注意修改):2181 --topic test --from-beginning

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐