<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      中間件一鍵部署腳本:zookeeper/kafka集群模式

      1. 什么是 Kafka?

      Kafka 是一個分布式流處理平臺,主要用于高吞吐量、低延遲的消息處理。它具有以下特點:

      • 發(fā)布-訂閱模型:生產者將消息發(fā)布到主題,消費者訂閱主題并處理消息。

      • 高可用性:通過多個 Broker 組成集群,保證數(shù)據的可靠性。

      • 持久化存儲:數(shù)據存儲在磁盤上,可重復消費。

      2. Kafka 集群的基本架構

      Kafka 集群由多個組件組成,包括:

      • Broker:消息的存儲和轉發(fā)節(jié)點,一個 Kafka 集群通常有多個 Broker。

      • Zookeeper:管理 Kafka 元數(shù)據、選舉 Controller,協(xié)調 Broker。

      • Producer(生產者):向 Kafka 發(fā)送消息的客戶端。

      • Consumer(消費者):從 Kafka 讀取消息的客戶端。

      • Topic(主題):Kafka 消息的邏輯分類。

      • Partition(分區(qū)):一個 Topic 可以拆分成多個分區(qū),實現(xiàn)并行處理。

      一鍵部署腳本說明:

      • 部署 3 臺服務器組成的 Kafka + Zookeeper 集群

      • 每臺服務器都會啟動 Zookeeper 和 Kafka,并且根據傳入的 IP,正確配置 Zookeeper myid 和 Kafka broker.id

      腳本運行方式

       需要傳入三個節(jié)點的IP地址做參數(shù)
      ./deploy_kafka_cluster.sh 1.1.1.1 2.2.2.2 3.3.3.3
      

      腳本內容:cat deploy_kafka_cluster.sh

      #!/bin/bash
      
      kafka_tar_name=$(ls kafka*)
      
      if [[ -z "${kafka_tar_name}" ]]; then
          echo "未找到 kafka 二進制安裝包"
          exit 1
      fi
      
      zookeeper_tar_name=$(ls *zookeeper*)
      
      if [[ -z "${zookeeper_tar_name}" ]]; then
          echo "未找到 zookeeper 二進制安裝包"
          exit 1
      fi
      
      if [ $# -ne 3 ];then echo "ERROR: 腳本需要參數(shù)三個IP";exit ;fi
      
      #解析參數(shù)
      node1=$1
      node2=$2
      node3=$3
      
      deployment_zookeeper(){
      tar -xzf ${zookeeper_tar_name}
      cd *zookeeper* 
      zoo_currentdir=$(pwd)
      mkdir data
      #zookeeper配置
      cat >conf/zoo.cfg<<EOF
      tickTime=2000
      initLimit=20
      syncLimit=10
      dataDir=$zoo_currentdir/data
      dataLogDir=$zoo_currentdir/datalog
      clientPort=2181
      maxClientCnxns=2000
      4lw.commands.whitelist=*
      autopurge.snapRetainCount=3
      autopurge.purgeInterval=1
      server.1=$node1:2888:3888
      server.2=$node2:2888:3888
      server.3=$node3:2888:3888
      EOF
      
      cat >$zoo_currentdir/data/myid<<EOF
      $1
      EOF
      
      #啟動zk
      $zoo_currentdir/bin/zkServer.sh start
      }
      
      deployment_kafka(){
      cd - >/dev/null
      tar -xzf ${kafka_tar_name}
      cd kafka* 
      currentdir=$(pwd)
      
      #kafka配置
      cat >config/server.properties<<EOF
      broker.id=$1
      advertised.listeners=PLAINTEXT://$current_ip: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=$currentdir/logs/kafka
      num.partitions=3
      num.recovery.threads.per.data.dir=1
      default.replication.factor=3
      offsets.topic.replication.factor=3
      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=$node1:2181,$node2:2181,$node3:2181
      zookeeper.connection.timeout.ms=60000
      group.initial.rebalance.delay.ms=0
      message.max.bytes=104857600
      replica.fetch.max.bytes=104857600
      EOF
      cat >config/consumer.properties<<EOF
      bootstrap.servers=localhost:9092
      group.id=test-consumer-group
      fetch.message.max.bytes=104857600
      EOF
      
      
      cat >config/producer.properties<<EOF
      bootstrap.servers=localhost:9092
      compression.type=none
      max.request.size=104857600
      acks=all
      EOF
      
      #啟動服務
      $currentdir/bin/kafka-server-start.sh -daemon $currentdir/config/server.properties
      }
      
      
      
      #判斷當前服務器是否在節(jié)點中
      ##獲取當前節(jié)點的 IP(多個 IP 會用空格分隔)
      current_ip_list=$(hostname -I)
      current_ip=$(echo "$current_ip_list"|tr ' ' '\n' |grep -Fxf - <(echo "$node1 $node2 $node3"|tr ' ' '\n'))
      if [ -z "$current_ip" ];then echo "ERROR: 當前服務器不在指定節(jié)點范圍中,退出部署";exit; fi
      
      if [[ $current_ip == $node1 ]];then
      echo "當前節(jié)點IP為node1:$current_ip"
      deployment_zookeeper 1
      deployment_kafka 1
      elif [[ $current_ip == $node2 ]];then
      echo "當前節(jié)點IP為node2:$current_ip"
      deployment_zookeeper 2
      deployment_kafka 2
      else
      echo "當前節(jié)點IP為node3:$current_ip"
      deployment_zookeeper 3
      deployment_kafka 3
      fi
      
      
      echo "zookeeper/Kafka 已啟動,請檢查 $current_ip:9092 端口是否可以正常訪問"
      

        

      posted @ 2025-04-02 10:19  瘦阿瘦  閱讀(66)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 普兰店市| 国产精品视频午夜福利| 国产性色的免费视频网站| 欧美精品在线观看视频 | 国产av亚洲精品ai换脸电影| 国产成人精品一区二区秒拍1o| 免费观看添你到高潮视频| 亚洲线精品一区二区三区| 苗栗市| 国产一区二区三区黄色片| 国产成人高清亚洲综合| 三级三级三级A级全黄| 中文字幕亚洲人妻一区| 中文字幕久久精品波多野结| 无码中文字幕av免费放| 人妻少妇精品专区性色av| 亚洲中文字幕无码中字| 国产精品天堂蜜av在线播放| 亚洲色欲色欲www在线看| 成人综合人人爽一区二区| 亚洲中文字幕无码中文字| 激情综合色区网激情五月| 亚洲色成人一区二区三区| xxxx丰满少妇高潮| 最新亚洲av日韩av二区| 亚洲另类激情专区小说图片 | 中文字幕无码精品亚洲35| 日韩精品一卡二卡三卡在线| 亚洲国产日韩一区三区| 亚洲精品日韩中文字幕| 久青草国产综合视频在线| 大桥未久亚洲无av码在线| 日本伊人色综合网| 亚洲一区av在线观看| 亚洲夜夜欢一区二区三区| 国产精品久久久国产盗摄| 亚洲国产午夜精品福利| 麻豆精品一区二区三区蜜臀| 熟妇人妻激情偷爽文| 久久精品久久精品久久精品| jizzjizz少妇亚洲水多|