kafka伪分布式搭建与命令测试

kafka伪分布式搭建

        下载

       下载地址(阿里云镜像),下载自己需要的版本即可,以下以3.6.1版本为例

         解压

        将文件上传到Linux主机中并解压

tar -zxvf kafka_2.13-3.6.1.tgz

#改名
mv kafka_2.13-3.6.1.tgz kafka

        zookeeper安装 

        因为kafka文件里已经内置了zookeeper,直接拿来用就好了。在与kafka同目录下创建一个etc文件夹

mkdir etc

 

        将kafka目录下config目录中的zookeeper.properties发送到新建的etc目录下

#在kafka目录下执行该命令
cp config/zookeeper.properties ../etc

        kafka伪分布 

        将kafka目录下config目录中的server.properties发送到新建的etc目录下(需要三个)

#在kafka目录下执行该命令
cp config/server.properties ../etc/server-0.properties
cp config/server.properties ../etc/server-1.properties
cp config/server.properties ../etc/server-2.properties

        分别在server-0.propertiesserver-1.propertiesserver-2.properties中修改参数

#在新建的etc目录下
vi server-0.properties

#修改以下内容
broker.id=0
listeners=PLAINTEXT://:9090
log.dirs=/tmp/kafka-logs-0



#在新建的etc目录下
vi server-1.properties

#修改以下内容
broker.id=1
listeners=PLAINTEXT://:9091
log.dirs=/tmp/kafka-logs-1



#在新建的etc目录下
vi server-2.properties

#修改以下内容
broker.id=2
listeners=PLAINTEXT://:9092
log.dirs=/tmp/kafka-logs-2

kafka集群启动

        启动zookeeper

#在kafka的bin目录下运行以下代码
./zookeeper-server-start.sh ../../etc/zookeeper.properties

        启动后窗户会一直在运行zookeeper进程,无法使用其它命令,需要打开新的命令提示窗口

         启动3kafka实例

        打开新的命令提示窗口启动broker-0,启动后无法使用其它命令,需要打开新的命令提示窗口

#在kafka的bin目录下运行以下代码
./kafka-server-start.sh ../../etc/server-0.properties

        打开新的命令提示窗口启动broker-1,启动后无法使用其它命令,需要打开新的命令提示窗口

#在kafka的bin目录下运行以下代码
./kafka-server-start.sh ../../etc/server-1.properties

        打开新的命令提示窗口启动broker-2,启动后无法使用其它命令,需要打开新的命令提示窗口

#在kafka的bin目录下运行以下代码
./kafka-server-start.sh ../../etc/server-2.properties

         查看

        当前一共开了4个命令提示窗口(3个正在运行kafka,1个正在运行zookeeper)

         使用jps查看进程信息

kafka测试

        zookeeper和bootstrap.server的区别

        zookeeper - 旧版Kafka的参数

        bootstrap.server - 新版Kafka的参数

         创建主题

        如果使用zookeeper创建主题报错zookeeper is not a recognized option,可能是因为kafka版本比较新,可以尝试使用bootstrap.server创建主题

        所有命令都在kafka目录下bin文件l里面执行,master:9090是主机名+端口号(之前在server-0.properties配的listeners=PLAINTEXT://:9090)

       --partitions 3:用于指定topic的分区数。分区是Kafka中数据的基本单元,它允许数据并行处理和负载均衡。分区数决定了Kafka集群中可以并行处理该topic的消费者数量。通常,建议根据预期的负载和并发处理需求来设置分区数

       --replication-factor 3:用于指定每个分区的副本数量。副本是为了提高数据的可靠性和容错性而创建的。当某个副本不可用时,Kafka可以从其他副本中获取数据。通常,建议将副本因子设置为大于1的值,以确保数据的可靠性。将副本因子设置为3,则每个分区将有3个副本。

#前往bin文件
kafka_2.13-3.6.1# cd bin

#创建主题
./kafka-topics.sh  --create --bootstrap-server master:9090 --replication-factor 3 --partitions 3 --topic test1

        查看已有主题

./kafka-topics.sh --list --bootstrap-server master:9090

        查看该主题详细配置

./kafka-topics.sh --bootstrap-server master:9090 --describe --topic test1

         创建生产者

./kafka-console-producer.sh --broker-list master:9091 --topic test1

         创建消费者

./kafka-console-consumer.sh --bootstrap-server master:9092 --topic test1

        删除主题

        Kafka的topic在关机重启后是持久化存储的,因此它们会保留在磁盘上,并且在Kafka Broker重新启动后仍然可用。

        删除主题必须在kafka/config/server.properties中已添加:delete.topic.enable=true

./kafka-topics.sh --delete --topic test1 --bootstrap-server master:9090

         测试

        生产者发送消息给消费者

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值