• CentOS7.9安装kafka-3.2.0和window10 下安装kafka-3.2.0


    目录

    1、下载软件包

    2、配置环境

    3、安装zookeeper

    4、安装kafka

    5、测试功能

    6、window 10下安装


    1、下载软件包

    首先下载zookeeper,地址:

    Apache ZooKeeperhttps://zookeeper.apache.org/releases.html

    下载kafka:

    Apache KafkaApache Kafka: A Distributed Streaming Platform.https://kafka.apache.org/

    还要安装jdk1.8,我这已经安装好了,也比较简单,就不介绍了。

    我本次安装的版本已经上传在这,可以免积他下载:

    apache-zookeeper-3.8.0-bin.tar.gz和kafka_2.13-3.2.0.tgz-Java文档类资源-CSDN下载apache-zookeeper-3.8.0-bin.tar.gzkafka_2.13-3.2.0更多下载资源、学习资料请访问CSDN下载频道.https://download.csdn.net/download/fyihdg/85847255

    2、配置环境

    修改主机名

    vi /etc/hostname 

    我这主机早已经修改好了

    查看IP

    ifconfig

     修改绑定关系

     vi /etc/hosts

    关闭防火墙

    1. #关闭防火墙
    2. systemctl stop firewalld
    3. #永久关闭防火墙
    4. systemctl disable firewalld.service

    3、安装zookeeper

    解压

    tar -zxf apache-zookeeper-3.8.0-bin.tar.gz  -C /opt

    重命名

    mv apache-zookeeper-3.8.0-bin/  apache-zookeeper-3.8.0

     切换到目录:/opt/apache-zookeeper-3.8.0/conf

    然后复制默认配置文件

    cp zoo_sample.cfg zoo.cfg

     修改配置文件:

    vi zoo.cfg 

    dataDir=/root/zkdata

     创建目录:

    mkdir /root/zkdata

    切换到目录:/opt/apache-zookeeper-3.8.0/bin

    输入

    ./zkServer.sh 

     可以看到相关命令

    启动zookeeper:

    ./zkServer.sh start zoo.cfg

    查看状态:

    ./zkServer.sh status

     [root@node05 bin]# ./zkServer.sh status
    ZooKeeper JMX enabled by default
    Using config: /opt/apache-zookeeper-3.8.0/bin/../conf/zoo.cfg
    Client port found: 2181. Client address: localhost. Client SSL: false.
    Error contacting service. It is probably not running.
    [root@node05 bin]# 

    没有成功运行,怎么办?查看日志:

    ./zkServer.sh start-foreground

     8080端口被占用了,输入命令查询哪个进程占用8080

    lsof -i:8080

     解决的办法有两个:一是修改zk默认端口,zookeeper 3.6之后的版本,开启服务器,zk会自动占用8080端口;二是,杀掉8080的进程

    我这里修改zk端口

    修改.zoo.cfg文件,添加如下配置

    1. # admin.serverPort 默认占8080端口
    2. admin.serverPort=8088

     

     4、安装kafka

     解压:

     tar -zxf kafka_2.13-3.2.0.tgz -C /opt

    切换到目录:/opt/kafka_2.13-3.2.0/config

    修改配置文件: server.properties

    修改的配置:

    1. #node05是主机名
    2. listeners=PLAINTEXT://node06:9092
    3. # kafka 会自创建目录
    4. log.dirs=/usr/kafka-logs
    5. #修改zk地址,用主机名
    6. zookeeper.connect=node06:2181

    启动命令:

     ./bin/kafka-server-start.sh  -daemon  config/server.properties
    

    可以看到有kafka进程

    关闭的命令是:

    ./kafka-server-stop.sh 

     至此,kafka安装成功了

    5、测试功能

       以下命令是topic相关的命令

    ./kafka-topics.sh --help

    创建topic

    ./kafka-topics.sh --bootstrap-server node05:9092 --create --topic topic01 --partitions 3 --replication-factor 1

    创建一个客户端,此时命令窗口会阻塞:

    ./kafka-console-consumer.sh --bootstrap-server node06:9092 --topic topic01 --group group1

    创建 一个生产者:

     ./kafka-console-producer.sh --broker-list node06:9092 --topic topic01

    此时可以发消息了

     

    6、window 10下安装

    安装包不变,window下安装更简单,把zookeeper解压

    然后修改配置文件,将zoo_sample.cfg复制一份改为zoo.cfg并添加data和log配置

     

     添加配置:

    1. dataDir=C:\apache-zookeeper-3.8.0-bin\data
    2. dataLogDir=C:\apache-zookeeper-3.8.0-bin\log

            然后到目录:G:\soft\apache-zookeeper-3.8.0-bin\apache-zookeeper-3.8.0-bin\bin

    直接命令行双击zkServer.cmd和zkCli.cmd启动

     

    把kafka解压,然后到window目录。 

    打开命令行

     

     

     然后启动kafka:

    kafka-server-start.bat   ../../config/server.properties

    创建topic的时候要注意,这个方式已经不能使用,最新版不能以下这种方式创建,会报错

    kafka-topics.bat --create --zookeeper 127.0.0.1:2181 --replication-factor 1 --partitions 1 --topic testtopic     

      会报:

    Exception in thread "main" joptsimple.UnrecognizedOptionException: zookeeper is not a recognized option

    应该使用这个命令:

    kafka-topics.bat --create --bootstrap-server localhost:9092 --replication-factor 1 --partitions 1 --topic testtopic

    生产者发消息:

    kafka-console-producer.bat --broker-list 127.0.0.1:9092 --topic testtopic

     消费者收:

    kafka-console-consumer.bat --bootstrap-server 127.0.0.1:9092 --from-beginning --topic testtopic

     可以看到生产者发的消息,消费都能收到了

  • 相关阅读:
    概率统计·大数定律及中心极限定理【大数定律、中心极限定律】
    线程池的使用
    PHP中isset() empty() is_null()的区别
    leetcode每天5题-Day06
    【力扣算法简单五十题】08.删除排序链表中的重复元素
    基于单片机的贪吃蛇设计
    【Luogu】 P4619 [SDOI2018] 旧试题
    录屏软件哪个好?比较好用的录屏软件,这4款值得一试!
    【全3D打印坦克——基于Arduino履带式机器人】
    网络安全(黑客)自学
  • 原文地址:https://blog.csdn.net/fyihdg/article/details/125552717