kafaka单节点安装部署kafaka多节点安装部署

简介: kafaka单节点安装部署kafaka多节点安装部署

#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.这个错误

相关文章
|
资源调度 负载均衡 Kubernetes
【Flink on Yarn的三种部署方式详细介绍,及应用场景】
Flink on Yarn的三种部署方式,Session模式,Per-Job模式,application模式,他们为何会诞生,我们要用哪种模式来部署
2259 1
【Flink on Yarn的三种部署方式详细介绍,及应用场景】
【CentOS8】 本地yum源配置
centos8系统的本地yum源配置稍稍有些不同
3249 0
【CentOS8】 本地yum源配置
|
存储 数据采集 Java
InfluxDB 的学习笔记
在Java项目中实现InfluxDB的落地应用,主要包括添加InfluxDB的Java客户端依赖、创建数据库连接、执行数据的增删改查操作等步骤
1175 2
|
人工智能 测试技术 API
通义灵码 + 魔搭MCP:全流程构建创空间应用
最近,通义灵码上线 MCP(ModelScope Cloud Platform)功能,从之前代码生成及修改的基础功能,到可以使用MCP服务连接更多功能,开发者可以实现从 代码爬取、模型推理到应用部署
3256 27
|
消息中间件 Java 中间件
RocketMQ实战—2.RocketMQ集群生产部署
本文主要介绍了大纲什么是消息中间件、消息中间件的技术选型、RocketMQ的架构原理和使用方式、消息中间件路由中心的架构原理、Broker的主从架构原理、高可用的消息中间件生产部署架构、部署一个小规模的RocketMQ集群进行压测、如何对RocketMQ集群进行可视化的监控和管理、进行OS内核参数和JVM参数的调整、如何对小规模RocketMQ集群进行压测、消息中间件集群生产部署规划梳理。
RocketMQ实战—2.RocketMQ集群生产部署
|
消息中间件 存储 Kafka
[kafka]部署安装单节点
[kafka]部署安装单节点
445 0
|
消息中间件 Java Kafka
Kafka【环境搭建 01】kafka_2.12-2.6.0 单机版安装+参数配置及说明+添加到service服务+开机启动配置+验证+chkconfig配置说明(一篇入门kafka)
【2月更文挑战第19天】Kafka【环境搭建 01】kafka_2.12-2.6.0 单机版安装+参数配置及说明+添加到service服务+开机启动配置+验证+chkconfig配置说明(一篇入门kafka)
1441 1
|
关系型数据库 MySQL 数据库
基于Flink CDC 开发,支持Web-UI的实时KingBase 连接器,三大模式无缝切换,效率翻倍!
TIS 是一款基于Web-UI的开源大数据集成工具,通过与人大金仓Kingbase的深度整合,提供高效、灵活的实时数据集成方案。它支持增量数据监听和实时写入,兼容MySQL、PostgreSQL和Oracle模式,无需编写复杂脚本,操作简单直观,特别适合非专业开发人员使用。TIS率先实现了Kingbase CDC连接器的整合,成为业界首个开箱即用的Kingbase CDC数据同步解决方案,助力企业数字化转型。
3282 5
基于Flink CDC 开发,支持Web-UI的实时KingBase 连接器,三大模式无缝切换,效率翻倍!
|
安全 Java API
什么是用于 REST API 的 Bearer Token以及如何通过代码和工具进行调试
Bearer Token 是一种基于 OAuth 2.0 的身份验证机制,广泛应用于 REST API 的授权访问中。它通过在 HTTP 请求头中传递令牌,确保用户凭据安全传输并验证。本文深入解析了 Bearer Token 的概念、实现步骤及调试方法,包括其无状态特性、灵活性与安全性优势。同时,提供了 Java 实现示例和使用 Apipost、cURL 等工具测试的实践指导,帮助开发者掌握这一核心技能,保障 API 系统的安全与高效运行。
|
消息中间件 存储 缓存
一文带你秒懂 Kafka工作原理!
Apache Kafka 是一个高吞吐量、低延迟的分布式消息系统,广泛应用于实时数据处理、日志收集和消息队列等领域。它最初由LinkedIn开发,2011年成为Apache项目。Kafka支持消息的发布与订阅,具备高效的消息持久化能力,适用于TB级数据的处理。