日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網(wǎng)為廣大站長提供免費收錄網(wǎng)站服務(wù),提交前請做好本站友鏈:【 網(wǎng)站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(wù)(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

目錄
  • 安裝單個節(jié)點
  • docker-compose.yml 配置
  • 安裝集群環(huán)境
    • docker-compose.yml配置
    • 啟動kafka集群
  • 總結(jié)

    Docker是最受歡迎的容器引擎之一,軟件行業(yè)用于創(chuàng)建、打包、部署應(yīng)用。本教程學(xué)習(xí)如何使用Docker搭建Apache Kafka。

    安裝單個節(jié)點

    安裝單節(jié)點Kafka代理需能夠滿足本地開發(fā)需求,我們首先學(xué)習(xí)單節(jié)點安裝。

    docker-compose.yml 配置

    使用Apache Kafka服務(wù),首先需要啟動Zookeeper 服務(wù)。這可以通過在docker-compose.yml 文件配置依賴實現(xiàn),但要確保Zookeeper服務(wù)總是在Kafka服務(wù)之前啟動,反之zookeeper最后停止。

    首先創(chuàng)建docker-compose.yml文件,增加兩個服務(wù):zookeeper和kafka:

    version: '2'
    services:
      zookeeper:
        image: confluentinc/cp-zookeeper:latest
        environment:
          ZOOKEEPER_CLIENT_PORT: 2181
          ZOOKEEPER_TICK_TIME: 2000
        ports:
          - 22181:2181
      
      kafka:
        image: confluentinc/cp-kafka:latest
        depends_on:
          - zookeeper
        ports:
          - 29092:29092
        environment:
          KAFKA_BROKER_ID: 1
          KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
          KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka:9092,PLAINTEXT_HOST://localhost:29092
          KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,PLAINTEXT_HOST:PLAINTEXT
          KAFKA_INTER_BROKER_LISTENER_NAME: PLAINTEXT
          KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
    

    Zookeeper服務(wù)監(jiān)聽2181端口為Kafka提供服務(wù),但對于運行在本機的客戶端,暴露的端口為22181.
    類似的,kafka通過端口29092暴露給主機應(yīng)用,但實際上在容器中的端口9092。有KAFKA_ADVERTISED_LISTENERS屬性來配置。

    下面通過使用命令啟動容器、開啟kafka服務(wù):

    $ docker-compose up -d
    Creating network "kafka_default" with the default driver
    Creating kafka_zookeeper_1 ... done
    Creating kafka_kafka_1     ... done
    

    下面通過nc命令嚴(yán)重兩個服務(wù)正在監(jiān)聽各自的端口:

    $ nc -z localhost 22181
    Connection to localhost port 22181 [tcp/*] succeeded!
    $ nc -z localhost 29092
    Connection to localhost port 29092 [tcp/*] succeeded!
    

    另外,也可以檢查日志,當(dāng)容器正在運行時驗證kafka服務(wù)是否啟動:

    $ docker-compose logs kafka | grep -i started

    可以看到Kafka服務(wù)已經(jīng)啟動。

    最后可以使用Kafka Tool Gui 工具連接已安裝的Kafka服務(wù):

    使用Docker搭建Apache Kafka環(huán)境的詳細(xì)過程

    安裝集群環(huán)境

    生產(chǎn)環(huán)境需要更穩(wěn)定的環(huán)境,下面擴展 docker-compose.yml文件創(chuàng)建多節(jié)點集群環(huán)境:

    docker-compose.yml配置

    集群安裝需要zookeeper和Kafka有多個實例,下面為zookeeper和kafka增加多個服務(wù):

    ---
    version: '2'
    services:
      zookeeper-1:
        image: confluentinc/cp-zookeeper:latest
        environment:
          ZOOKEEPER_CLIENT_PORT: 2181
          ZOOKEEPER_TICK_TIME: 2000
        ports:
          - 22181:2181
    
      zookeeper-2:
        image: confluentinc/cp-zookeeper:latest
        environment:
          ZOOKEEPER_CLIENT_PORT: 2181
          ZOOKEEPER_TICK_TIME: 2000
        ports:
          - 32181:2181
      
      kafka-1:
        image: confluentinc/cp-kafka:latest
        depends_on:
          - zookeeper-1
          - zookeeper-2
    
        ports:
          - 29092:29092
        environment:
          KAFKA_BROKER_ID: 1
          KAFKA_ZOOKEEPER_CONNECT: zookeeper-1:2181,zookeeper-2:2181
          KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka-1:9092,PLAINTEXT_HOST://localhost:29092
          KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,PLAINTEXT_HOST:PLAINTEXT
          KAFKA_INTER_BROKER_LISTENER_NAME: PLAINTEXT
          KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
      kafka-2:
        image: confluentinc/cp-kafka:latest
        depends_on:
          - zookeeper-1
          - zookeeper-2
        ports:
          - 39092:39092
        environment:
          KAFKA_BROKER_ID: 2
          KAFKA_ZOOKEEPER_CONNECT: zookeeper-1:2181,zookeeper-2:2181
          KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka-2:9092,PLAINTEXT_HOST://localhost:39092
          KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,PLAINTEXT_HOST:PLAINTEXT
          KAFKA_INTER_BROKER_LISTENER_NAME: PLAINTEXT
          KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
    

    必須要確保kafka服務(wù)名稱唯一,通過KAFKA_BROKER_ID 屬性設(shè)置。而且每個服務(wù)必須暴露唯一主機端口。雖然zookeeper-1 和 zookeeper-2 監(jiān)聽2181端口,但對于主機端口分別為 22181 和 32181。類似的,kafka-1 和 kafka-2 services對應(yīng)主機端口分別為 29092 和 39092。

    啟動kafka集群

    現(xiàn)在通過docker-compose命令啟動集群:

    $ docker-compose up -d
    Creating network "kafka_default" with the default driver
    Creating kafka_zookeeper-1_1 ... done
    Creating kafka_zookeeper-2_1 ... done
    Creating kafka_kafka-2_1     ... done
    Creating kafka_kafka-1_1     ... done
    

    啟動完成,使用Kafka Tool連接集群,地址通過逗號分割只讀多個zookeeper地址和端口:

    總結(jié)

    本文使用Docker技術(shù)創(chuàng)建單個Kafka節(jié)點和Kafka集群環(huán)境,并且使用可視化工具連接服務(wù)查看代理服務(wù)器的配置信息。

    分享到:
    標(biāo)簽:搭建 服務(wù)器 環(huán)境 詳細(xì) 過程
    用戶無頭像

    網(wǎng)友整理

    注冊時間:

    網(wǎng)站:5 個   小程序:0 個  文章:12 篇

    • 51998

      網(wǎng)站

    • 12

      小程序

    • 1030137

      文章

    • 747

      會員

    趕快注冊賬號,推廣您的網(wǎng)站吧!
    最新入駐小程序

    數(shù)獨大挑戰(zhàn)2018-06-03

    數(shù)獨一種數(shù)學(xué)游戲,玩家需要根據(jù)9

    答題星2018-06-03

    您可以通過答題星輕松地創(chuàng)建試卷

    全階人生考試2018-06-03

    各種考試題,題庫,初中,高中,大學(xué)四六

    運動步數(shù)有氧達(dá)人2018-06-03

    記錄運動步數(shù),積累氧氣值。還可偷

    每日養(yǎng)生app2018-06-03

    每日養(yǎng)生,天天健康

    體育訓(xùn)練成績評定2018-06-03

    通用課目體育訓(xùn)練成績評定