zoukankan      html  css  js  c++  java
  • CentOS 7 安装 Zookeeper + Kafka 集群

    介绍

    Kafka是由Apache软件基金会开发的一个开源流处理平台,由Scala和Java编写。

    Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据。

    安装 kafka 集群,需要把集群状态保存在 zookeeper 上,所以需要先安装 zookeeper

    环境准备

    主机名 系统 IP地址 zk 端口 kafka 版本 kafka 端口
    node01 Centos7.5 172.16.1.11 2181 2.12 9092
    node02 Centos7.5 172.16.1.12 2181 2.12 9092
    node03 Centos7.5 172.16.1.13 2181 2.12 9092

    zookeeper 集群

    zookeeper 的集群安装之前文章已经介绍过, CentOS 7 Zookeeper 介绍 及 集群安装,本次也同样使用该环境;

    kafka 集群安装

    下载地址:

    下面的操作,需要在三台机器上郡

    [root@node01 ~]# cd /opt/soft/
    [root@node01 soft]# tar xf kafka_2.12-2.2.1.tgz 
    [root@node01 soft]# mv kafka_2.12-2.2.1 /opt/kafka-2.12
    [root@node01 soft]# ln -s /opt/kafka-2.12 /opt/kafka
    [root@node01 soft]# ls -ld /opt/kafka*
    lrwxrwxrwx 1 root root 15 Mar  3 16:03 /opt/kafka -> /opt/kafka-2.12
    drwxr-xr-x 6 root root 89 May 14  2019 /opt/kafka-2.12
    

    服务管理脚本

    cat > /etc/systemd/system/kafka.service <<EOF
    [Unit]
    Description=Apache Kafka server (broker)
    Documentation=http://kafka.apache.org/documentation.html
    Requires=network.target remote-fs.target
    After=network.target remote-fs.target zookeeper.service
    [Service]
    Type=simple
    User=kafka
    Group=kafka
    Environment=JAVA_HOME=/opt/jdk1.8.0_192
    ExecStart=/opt/kafka/bin/kafka-server-start.sh /opt/kafka/config/server.properties
    ExecStop=/opt/kafka/bin/kafka-server-stop.sh
    [Install]
    WantedBy=multi-user.target
    EOF
    

    配置

    需要注意,三个服务配置文件 server.properties 中的 broker.idlisteners 需要根据服务器做相应的修改 不能相同,否则集群会报错,要注意修改。

    cd /opt/kafka/config/
    
    cp server.properties server.properties.default
    
    cat > server.properties <<EOF
    broker.id=1
    listeners=PLAINTEXT://172.16.1.11:9092
    num.network.threads=3
    num.io.threads=8
    socket.send.buffer.bytes=102400
    socket.receive.buffer.bytes=102400
    socket.request.max.bytes=104857600
    log.dirs=/opt/kafka-2.12/data
    num.partitions=30
    num.recovery.threads.per.data.dir=2
    offsets.topic.replication.factor=3
    transaction.state.log.replication.factor=1
    transaction.state.log.min.isr=1
    log.flush.interval.messages=10000
    log.flush.interval.ms=1000
    log.retention.hours=144
    log.segment.bytes=1073741824
    log.retention.check.interval.ms=300000
    zookeeper.connect=172.16.1.11:2181,172.16.1.12:2181,172.16.1.13:2181
    zookeeper.connection.timeout.ms=6000
    group.initial.rebalance.delay.ms=0
    EOF
    

    启动测试

    注意:修改好 配置文件server.properties 中的 broker.idlisteners 不同之后,相继启动三个服务;

    systemctl enable kafka
    systemctl start kafka
    systemctl status kafka
    
    ● kafka.service - Apache Kafka server (broker)
       Loaded: loaded (/etc/systemd/system/kafka.service; disabled; vendor preset: disabled)
       Active: active (running) since Thu 2020-02-20 21:29:28 CST; 1 weeks 4 days ago
         Docs: http://kafka.apache.org/documentation.html
      Process: 30768 ExecStop=/opt/kafka-2.12/bin/kafka-server-stop.sh (code=exited, status=0/SUCCESS)
     Main PID: 30784 (java)
       CGroup: /system.slice/kafka.service
               └─30784 /opt/jdk1.8.0_192/bin/java -Xmx2G -Xms2G -server -XX:+UseG1GC -XX:MaxGCPauseMillis=20 -XX:InitiatingHeapOccupancyPercent=35 -XX:+ExplicitGCInvokesConcurrent -Djava.awt...
    
  • 相关阅读:
    获取网站注册中发送验证信息的链接
    SSH hibernate 使用时最好添加访问数据库的编码
    hibernate 数据行数统计 count(*)
    【转】Java自动装箱、拆箱、缓冲池
    struts2文件下载 火狐浏览器的文件名乱码问题
    struts2 action中传递两个参数到url
    IText 生成简单表格(报表)doc文档 单元居中
    IText 生成横向的doc文档
    IText PdfPTable表格 单元的居中显示
    IText 中文字体解决方案 生成doc文档
  • 原文地址:https://www.cnblogs.com/winstom/p/12404232.html
Copyright © 2011-2022 走看看