• 全国 [切换]
  • 二维码
    养老之家

    手机WAP版

    手机也能找商机,信息同步6大终端平台!

    微信小程序

    微信公众号

    当前位置: 首页 » 行业新闻 » 热点新闻 » 正文

    kafka集群部署

    放大字体  缩小字体 发布日期:2020-01-11 01:02:20   浏览次数:1208  发布人:a818****  IP:125.64.89.***  评论:0
    导读

    基本信息: 环境: centos 7.9 集群信息: ip:10.10.5.26 ip:10.10.5.25 ip:10.10.5.24 服务信息: zookeeper版本 3.6.3 kafka版本:2.8.1 1.安装Zookeeper #上传安装包,并创建zookeeper目录 mkdir -p /usr/local/zookeeper tar -xzvf zookeeper-3.6.3.t

    基本信息:

    环境:

    centos 7.9

    集群信息:

    ip:10.10.5.26
    ip:10.10.5.25
    ip:10.10.5.24

    服务信息:

    zookeeper版本 3.6.3
    kafka版本:2.8.1

    1.安装Zookeeper

    #上传安装包,并创建zookeeper目录 mkdir -p /usr/local/zookeeper tar -xzvf zookeeper-3.6.3.tar.gz -C /usr/local/zookeeper cd /usr/local/zookeeper/ #创建data和logs目录,用于存放产生的数据和日志文件 mkdir data mkdir logs mv apache-zookeeper-3.6.3-bin zookeeper-3.6.3 cd zookeeper-3.6.3/conf cp zoo_sample.cfg zoo.cfg #在配置文件zoo.cfg中配置数据和日志目录: vim zoo.cfg dataDir=/usr/local/zookeeper/data dataLogDir=/usr/local/zookeeper/logs

    因为要搭建集群,所以需要给每一个zookeeper节点一个id,这里是在data目录下新建一个myid文件,里面只包括该节点的id

    cd /usr/local/zookeeper/data #此id可设置为服务器ip最后一位 vim myid 1 然后三台虚拟机配完之后,还要到conf下的zoo.cfg把集群的节点都配置上 cd /usr/local/zookeeper/zookeeper-3.6.3/conf vim zoo.cfg #每个zookeeper节点都配置一下 server.1=10.10.5.26:2888:3888 server.2=10.10.5.25:2888:3888 server.3=10.10.5.24:2888:3888 为了我们使用,我们配置一下zookeeper的环境变量,否则的话每次启动zookeeper都要到zookeeper的bin目录下启动 vim /etc/profile #把下面内容复制到文件末尾(第一行的目录根据自己的安装路径来配置,可以使用pwd查看): # zk env export ZOOKEEPER_HOME=/usr/local/zookeeper/zookeeper-3.6.3 export PATH=$ZOOKEEPER_HOME/bin:$PATH export PATH source /etc/profile 三台电脑都这样配置上。 然后就可以启动了! zkServer.sh start 三个节点都启动后查看节点状态: zkServer.sh status 如果向这样(两个follower,一个leader)就算是成功了 ... Mode:follower ... Mode:follower ... Mode:leader

    如果出现error了可以去logs目录下查看.out文件,这是他的日志,报错都会在里面体现,有什么报错一般都可以百度到答案,大部分的错误是防火墙的问题,把防火墙关掉就好了。
    下面是几个常用的命令:

    zkServer.sh start #启动zookeeper zkServer.sh stop #关闭zookeeper zkServer.sh restart #重启 zkCli.sh -timeout 0 -r -server ip:port # 测试节点连通

    2.安装kafka

    #上传并解压 tar -xzvf kafka_2.13-2.8.1.tgz -C /usr/local/ mv /usr/local/kafka_2.12-2.8.1 /usr/local/kafka2.8.1

    配置环境变量

    cat <<EOF> /etc/profile.d/kafka.sh export KAFKA_HOME=/usr/local/kafka2.8.1 export PATH=$PATH:$KAFKA_HOME/bin EOF source /etc/profile.d/kafka.sh

    修改停止脚本

    vi bin/kafka-server-stop.sh #kill -s $SIGNAL $PIDS #修改为 kill -9 $PIDS

    vim bin/kafka-server-start.sh 用于监控的配置,修改,增加 JMX_PORT,可以获取更多指标 注意端口被占用 if [ "x$KAFKA_HEAP_OPTS" = "x" ]; then export KAFKA_HEAP_OPTS="-Xmx1G -Xms1G" export JMX_PORT="9198" fi

    关键配置如下:

    下面是重要配置注释 cat /usr/local/kafka2.8.1/config/server.properties name #含义 举例 broker.id #一个Kafka节点就是一个Broker.id,要保证唯一性 broker.id=0 listeners #kafka只面向内网时用到listeners,内外网需要作区分时才需要用到advertised.listeners listeners=PLAINTEXT://192.168.0.137:9092 zookeeper.connect #配置zk集群信息 zookeeper.connect=192.168.0.19:2181

    修改配置文件: vim /usr/local/kafka2.8.1/config/server.properties broker.id=17 listeners=PLAINTEXT://10.10.5.17: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=/usr/local/kafka_2.12-2.8.1/logs num.partitions=1 num.recovery.threads.per.data.dir=1 offsets.topic.replication.factor=1 transaction.state.log.replication.factor=1 transaction.state.log.min.isr=1 log.retention.hours=168 log.segment.bytes=1073741824 log.retention.check.interval.ms=300000 zookeeper.connect=10.10.5.24:2181,10.10.5.25:2181,10.10.5.26:2181 zookeeper.connection.timeout.ms=18000 group.initial.rebalance.delay.ms=0

    新建启动kafka脚本

    cat <<EOF> /usr/local/kafka2.8.1/start.sh #!/bin/bash nohup kafka-server-start.sh config/server.properties >> /usr/local/kafka2.8.1/nohup.out 2>&1 & EOF chmod +x /usr/local/kafka2.8.1/start.sh

    新建重启kafka脚本

    cat <<EOF> /usr/local/kafka2.8.1/restart.sh #!/bin/bash kafka-server-stop.sh nohup kafka-server-start.sh config/server.properties >> /usr/local/kafka2.8.1/nohup.out 2>&1 & EOF chmod +x /usr/local/kafka2.8.1/restart.sh

    设置systemd自启动

    cat /usr/lib/systemd/system/kafka.service [Unit] Description=kafka After=network.target remote-fs.target nss-lookup.target zookeeper.service [Service] Type=forking Environment="PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/java/jdk1.8.0_161/bin" ExecStart=/usr/local/kafka2.8.1/kafka_start_my.sh -daemon /usr/local/kafka2.8.1/config/server.properties ExecReload=/bin/kill -s HUP $MAINPID ExecStop=/usr/local/kafka2.8.1/bin/kafka-server-stop.sh #PrivateTmp=true [Install] WantedBy=multi-user.target

    以上kafka三节点集群搭建完毕
    注意:只有先启动zookeeper后才能正常启动kafka

    kafka 可视化

    再github上找kowl镜像,此应用为kafka-web(可视化工具)

    web管理 ----(kowl) docker run -d -p 19092:8080 -e KAFKA_BROKERS=10.10.5.22:9002 rsmnarts/kowl:latest

    不推荐电脑端访问(用户少)
    请微信扫一扫,查看完整信息(记得微信收藏)
     
    (文/匿名(若涉版权问题请联系我们核实发布者) / 非法信息举报 / 删稿)
    打赏
    免责声明
    • 
    本文为昵称为 a818**** 发布的作品,本文仅代表发布者个人观点,本站未对其内容进行核实,请读者仅做参考,如若文中涉及有违公德、触犯法律的内容,一经发现,立即删除,发布者需自行承担相应责任。涉及到版权或其他问题,请及时联系我们613427379@qq.com删除,我们积极做(权利人与发布者之间的调停者)中立处理。郑重说明:不 违规举报 视为放弃权利,本站不承担任何责任!
    有个别老鼠屎以营利为目的遇到侵权情况但不联系本站或自己发布违规信息然后直接向本站索取高额赔偿等情况,本站一概以诈骗报警处理,曾经有1例诈骗分子已经绳之以法,本站本着公平公正的原则,若遇 违规举报 我们100%在3个工作日内处理!
    0 条相关评论
     

    (c)2008-现在 0yw.com All Rights Reserved.