• mac 安转zookeeper+kafka


    安装版本

    zookeeper:3.8.0

    kafka:2.13-3.2.0

    一、安转zookeeper


    zookeeper下载


        https://zookeeper.apache.org/releases.html#download
        https://archive.apache.org/dist/zookeeper/

    解压

    1. tar -zxvf apache-zookeeper-3.8.0-bin.tar.gz
    2. mv apache-zookeeper-3.8.0-bin zookeeper

    配置核心文件

    1. cd zookeeper/
    2. mkdir data
    3. cd zookeeper/conf
    4. cp zoo_sample.cfg zoo.cfg
    5. vim zoo.cfg
    6.     
    7. clientPort=2181
    8. server.1=127.0.0.1:2888:3888
    9. dataDir=/Users/sijing.tong/Public/bin/zookeeper/data

    主要配置项

    tickTime

    Zookeeper心跳时间,以毫秒为单位,默认2000ms(2s).

    它用来控制心跳和超时,默认情况下最小的会话超时时间为两倍的 tickTime。
    比如:tickTime=2000

    initLimit

    用于集群初始化时,follower(从)节点连接并同步到leader(主)节点的初始化连接时间,以tickTime的倍数来表示.
    比如:initLimit=10
    当已经超过10个 tickTime长度后 ,Zookeeper服务器还没有收到leader客户端的返回信息,那么表明这个客户端连接失败。

    总的时间长度就是 10*2000=20 s

    syncLimit

    用于集群通信期间,leader(主)节点与leader(从)节点之间发送消息,请求和应答时间长度(心跳机制)。

    比如:syncLimit=5

    leader和follower之间发送消息, 请求和应答的最大时间长度超过5个tickTime后,说明leader和follower之间超时了。

    总的时间长度就是 5*2000=10 s

    clientPort连接服务器的端口,默认是2181 dataDir 快照日志目录,存放内存数据库快照的位置,必须配置
    dataLogDir事务日志目录,不配置则和dataDir共用   
    dataDir存放内存数据库快照的位置
     server.{x}={ip}:{port1}:{port2}

    {x} : 服务器编号(也就是myid里面的值) 
    {ip}: 服务器的 ip 地址;
    {port1} : Flower 跟 Leader的通信端口,简称服务端内部通信的端口(默认2888);
    {port2} : 选举端口(默认是3888)。如果是伪集群的配置方式,由于 ip 都是一样,要给它们分配不同的端口号。
    比如:

    伪集群,同一个ip,端口不同即可
        server.1=ip:2888:3888
        server.2=ip:4888:5888
        server.3=ip:6888:7888
    zookeeper集群,不同ip。端口号可以相同
        server.1=ip1:2888:3888
        server.2=ip2:2888:3888
        server.3=ip3:2888:3888
    单机
    server.1=ip1:2888:3888


             

    环境变量

    1. vim ~/.bash_profile
    2. #zookeeper
    3. export ZOOKEEPER_HOME=/Public/bin/zookeeper
    4. export PATH=$PATH:${ZOOKEEPER_HOME}/bin
    5. source ~/.bash_profile


    启动并查看状态

    ./bin/zkServer.sh start|stop|restart|status

    客户端查看

    1. ./bin/zkCli.sh -server localhost:2181
    2. ./bin/zkCli.sh 
    3. [zk: localhost:2181(CONNECTED) 15] ls /
    4. [zookeeper]
    5. [zk: localhost:2181(CONNECTED) 16] ls /zookeeper 
    6. [config, quota]
    7. [zk: localhost:2181(CONNECTED) 17] quit


    zookeeper 可视化工具


    1.ZooInspector
    Apache官方基于Java的zookeeper可视化工具
    https://issues.apache.org/jira/secure/attachment/12436620/ZooInspector.zip
    解压ZooInspector
    java -jar ZooInspector/build/zookeeper-dev-ZooInspector.jar

    mac环境打开界面看不到,听说是编码问题,我就换了一个工具

    2.PrettyZoo
    https://github.com/vran-dev/PrettyZoo/releases


    二、安转kafka

    kafka下载

    https://kafka.apache.org/downloads

    解压

    1. tar -zxf kafka_2.13-3.2.0.tgz 
    2. mv kafka_2.13-3.2.0 kafka

    环境变量

    1. vim ~/.bash_profile
    2.  
    3. #kafka
    4. export KAFKA_HOME=/Users/sijing.tong/Public/bin/kafka
    5. export PATH=$PATH:${KAFKA_HOME}/bin 
    6. source ~/.bash_profile

    配置核心文件

    1. vim config/server.properties 
    2. broker.id=0 
    3. listeners=PLAINTEXT://localhost:9092 
    4. log.dirs=/Public/bin/kafka/logs 
    5. zookeeper.connect=localhost:2181

    启动

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


    创建topics


    2.8+的kafka,已经不需要依赖zookeeper来创建topic,新版本使用 --bootstrap-server 参数

    1. ./bin/kafka-topics.sh --bootstrap-server localhost:9092--create --topic my_test_topic --partitions 1
    2. ./bin/kafka-topics.sh --create --bootstrap-server localhost:9092 --replication-factor 1 --partitions 1 --topic test_topic

    查看主题

    ./bin/kafka-topics.sh --list --bootstrap-server localhost:9092

    创建生产者和消费者
     

    1. ./bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test_topic
    2. ./bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test_topic --from-beginning

             
             
            
           

     

  • 相关阅读:
    JAVAEE初阶相关内容第九弹--多线程(初阶)
    【UT】如何进行单元测试
    ECMA Script Module(ES module)知识点
    Ubuntu 20.04.06 PCL C++学习记录(二十六)
    【Python 实战基础】Pandas如何转换时间类型字段
    一个快递包裹的跨国之旅
    【云原生】云原生相关技术概念总结
    barzilar_borwein算法微调函数的优化收敛
    三层交换、VLAN总结
    YOLO物体检测-系列教程5:YOLOV3源码解读2之 模型创建函数
  • 原文地址:https://blog.csdn.net/tsj11514oo/article/details/126455311