linux安装Kafka

本文涉及的产品
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
日志服务 SLS,月写入数据量 50GB 1个月
云原生网关 MSE Higress,422元/月
简介: linux安装Kafka

#kafaka单节点部署

PS:Kafka中单节点部署又分为两种,一种为单节点单Broker部署,一种为单节点多Broker部署。因为是单节点的Kafka,所以在安装ZK时也只需要单节点即可。

#部署单击Zookeeper

安装完Zookeeper后,输入命令启动后,jps中并没有查看到QuorumPeerMain进程,说明没有启动成功。

#安装kafka

1.解压可以忽略

1,进入下载路径下,比如我的就是进入Downloads下。

 

输入命令: cd Downloads

 

2,解压到当前文件夹

 

输入:tar zxvf  文件名.tgz -C ./    比如我的是:tar zxvf simple-examples.tgz -C ./

 

3,解压到指定文件夹下

 

输入:tar  zxvf 文件名.tgz  -C /指定路径

 

比如我想解压到Home下:则变成tar zxvf simple-examples.tgz -C /Home

2. cd /usr/local/kafka_2.12-2.2.0/config

进入kafka的config目录下,有一个server.properties,添加如下配置

# broker的全局唯一编号,不能重复

broker.id=0

# 监听

listeners=PLAINTEXT://:9092

# 日志目录

log.dirs=/home/hadoop/kafka-logs

# 配置zookeeper的连接(如果不是本机,需要该为ip或主机名)

zookeeper.connect=localhost:2181

# 启动Zookeeper  启动Kafka

kafka-server-start.sh $KAFKA_HOME/config/server.properties

# 可以这么启动nohup ./kafka-server-start.sh /usr/local/kafka_2.12-2.2.0/config/server.properties &

[hadoop@Master ~]$ jps  看到如下信息

9173 Kafka

9462 Jps

8589 QuorumPeerMain

[hadoop@Master ~]$ jps -m

9472 Jps -m

9173 Kafka /opt/kafka/config/server.properties

8589 QuorumPeerMain /opt/zookeeper/bin/../conf/zoo.cfg

# 创建topic

cd /usr/local/kafka_2.12-2.2.0/bin

[root@localhost bin]# ./kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test

Created topic test.

You have new mail in /var/spool/mail/root

表示创建成功

# 参数说明:

–zookeeper:指定kafka连接zk的连接url,该值和server.properties文件中的配置项{zookeeper.connect}一样

–replication-factor:指定副本数量

–partitions:指定分区数量

–topic:主题名称

#查看所有的topic信息

[root@localhost bin]# ./kafka-topics.sh --list -zookeeper localhost:2181

test

[root@localhost bin]#

 

#启动生产者,启动后如图

[root@localhost bin]# ./kafka-console-producer.sh --broker-list localhost:9092 --topic test

>

#启动消费者

PS:kafka-console-consumer.sh --zookeeper localhost:2181 --topic test --from-beginning 这个命令是09以后的启动方法

PS:./kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning 0.90版本之后启动消费者的方法

[root@localhost bin]# ./kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning

#测试数据

1.在生产上实时输入

[root@localhost bin]# ./kafka-console-producer.sh --broker-list localhost:9092 --topic test

>hello world

>

2.消费者实时接收

[root@localhost bin]# ./kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning

hello world

3.注意

./kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning 这么启动以前的消息也会被消费

./kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test  这么启动只会消费最新的消息

############################################# 到此Kafka 单节点单Broker 部署完毕 #####################################################################

 

 

 

############################################# Kafka 单节点多Broker部署及使用 #####################################################################

#配置kafka

拷贝server.properties三份

[hadoop@Master ~]$ cd /opt/kafka/config

[hadoop@Master config]$ cp server.properties server-1.properties

[hadoop@Master config]$ cp server.properties server-2.properties

[hadoop@Master config]$ cp server.properties server-3.properties

 

修改 server-1.properties文件

# broker的全局唯一编号,不能重复

broker.id=1

# 监听

listeners=PLAINTEXT://:9093

# 日志目录 log一定要修改 否则也会启动失败

log.dirs=/home/hadoop/kafka-logs-1

 

修改server-2.properties文件

# broker的全局唯一编号,不能重复

broker.id=2

# 监听

listeners=PLAINTEXT://:9094

# 日志目录

log.dirs=/home/hadoop/kafka-logs-2

 

修改server-3.properties文件

# broker的全局唯一编号,不能重复

broker.id=3

# 监听

listeners=PLAINTEXT://:9094

# 日志目录

log.dirs=/home/hadoop/kafka-logs-3

 

# 启动

1.启动zookeepre 。正常启动就行

2.kafka 需要这么启动

$ kafka-server-start.sh $KAFKA_HOME/config/server-1.properties

$ kafka-server-start.sh $KAFKA_HOME/config/server-2.properties

$ kafka-server-start.sh $KAFKA_HOME/config/server-3.properties

或者  nohup ./kafka-server-start.sh /usr/local/kafka_2.12-2.2.0/config/server-1.properties &  挨个启动

# 查看  jps 如图便是启动成功

[root@localhost local]# jps

6512 Jps

2707 QuorumPeerMain

5495 Kafka

5496 Kafka

5497 Kafka

 

# 创建topic(指定副本数量为3)

 

./kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 3 --partitions 1 --topic my-replicated-topic Created topic my-replicated-topic

 

# 查看所有的topic信息

my-replicated-topic

test

 

# 查看topic 详细信息

[root@localhost bin]# ./kafka-topics.sh --describe --zookeeper localhost:2181 --topic my-replicated-topic

Topic:my-replicated-topic PartitionCount:1 ReplicationFactor:3 Configs:

Topic: my-replicated-topic Partition: 0 Leader: 5 Replicas: 5,6,7 Isr: 5,6,7

[root@localhost bin]#

 

# 启动生产者

./kafka-console-producer.sh --broker-list localhost:9095,localhost:9096,localhost:9097 --topic my-replicated-topic

 

 

[root@localhost bin]# ./kafka-console-producer.sh --broker-list localhost:9095,localhost:9096,localhost:9097 --topic my-replicated-topic

>

 

# 启动消费者

PS :kafka消费者时报Connection to node 2 could not be established. Broker may not be available.这个错误

相关文章
|
1月前
|
Linux
手把手教会你安装Linux系统
手把手教会你安装Linux系统
|
1月前
|
安全 关系型数据库 MySQL
Linux下安装mysql8.0(以tar.xz包安装--编译安装)
通过上述步骤,您完成了从下载、编译、安装到配置MySQL 8.0的全过程。此过程虽然较为复杂,但提供了对MySQL安装环境的完全控制,有助于满足特定的部署需求。在实际操作中,根据具体的系统环境,可能还需调整部分步骤或解决未预见的依赖问题。始终参考官方文档和社区资源,保持安装过程与最新版本的兼容性。
753 67
|
30天前
|
Linux 测试技术 网络安全
Linux系统之安装OneNav个人书签管理器
【10月更文挑战第19天】Linux系统之安装OneNav个人书签管理器
112 5
Linux系统之安装OneNav个人书签管理器
|
1月前
|
监控 Java Linux
Linux系统之安装Ward服务器监控工具
【10月更文挑战第17天】Linux系统之安装Ward服务器监控工具
55 5
Linux系统之安装Ward服务器监控工具
|
14天前
|
存储 安全 数据管理
如何在 Rocky Linux 8 上安装和配置 Elasticsearch
本文详细介绍了在 Rocky Linux 8 上安装和配置 Elasticsearch 的步骤,包括添加仓库、安装 Elasticsearch、配置文件修改、设置内存和文件描述符、启动和验证 Elasticsearch,以及常见问题的解决方法。通过这些步骤,你可以快速搭建起这个强大的分布式搜索和分析引擎。
30 5
|
1月前
|
JSON JavaScript Linux
Linux系统之安装cook菜谱工具
【10月更文挑战第15天】Linux系统之安装cook菜谱工具
38 2
Linux系统之安装cook菜谱工具
|
1月前
|
Ubuntu Linux 测试技术
Linux系统之Ubuntu安装cockpit管理工具
【10月更文挑战第13天】Linux系统之Ubuntu安装cockpit管理工具
142 4
Linux系统之Ubuntu安装cockpit管理工具
|
1月前
|
Linux 网络安全 数据安全/隐私保护
Linux系统之Centos7安装cockpit图形管理界面
【10月更文挑战第12天】Linux系统之Centos7安装cockpit图形管理界面
90 1
Linux系统之Centos7安装cockpit图形管理界面
|
1月前
|
存储 Oracle 关系型数据库
|
26天前
|
消息中间件 Linux RocketMQ
在Red Hat Enterprise Linux 9上使用Docker快速安装并部署
通过以上步骤,你可以在Red Hat Enterprise Linux 9上使用Docker快速安装并部署RocketMQ。这种方法不仅简化了安装过程,还提供了一个灵活的环境来管理和扩展消息队列系统。RocketMQ作为一款高性能的分布式消息系统,通过Docker可以实现快速部署和高效管理。
56 2
下一篇
无影云桌面