最簡單的Kafka集羣搭建方式!

前言

本文使用Docker compose 快速搭建kafka集羣 , Docker Compose 是 Docker 容器進行編排的工具,定義和運行多容器的應用,可以一條命令啓動多個容器。

安裝Docker Compose

使用Docker compose 的前提是安裝了Docker , Docker的安裝這裏就省略了 , 如果沒有安裝的可以自行百度安裝, 接下來是安裝Docker Compose的步驟:

  1. 首先直接從github下載即可, 版本要1.9.1以上;
# curl -L https://github.com/docker/compose/releases/download/1.8.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
# chmod +x /usr/local/bin/docker-compose
  1. 安裝後確認是否已經安裝成功;
# docker-compose --version

看到一下內容表示已經安裝成功
在這裏插入圖片描述

Kafka集羣搭建

  1. 新建一個docker-compose.yml 文件
  2. 在文件中輸入以下內容 ,注意: 宿主機IP要換成你自己宿主機的IP
version: "2"
services:
  zoo1:
    image: wurstmeister/zookeeper
    restart: unless-stopped
    hostname: zoo1
    ports:
      - "2181:2181"
    container_name: zookeeper
  kafka1:
    image: wurstmeister/kafka
    ports:
      - "9092:9092"
    environment:
      KAFKA_ADVERTISED_HOST_NAME: 宿主機IP                     ## 修改:宿主機IP
      KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://宿主機IP:9092    ## 修改:宿主機IP
      KAFKA_ZOOKEEPER_CONNECT: "zoo1:2181"
      KAFKA_ADVERTISED_PORT: 9092
      KAFKA_BROKER_ID: 1
      KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
    depends_on:
      - zoo1
    container_name: kafka1

  kafka2:
    image: wurstmeister/kafka
    ports:
      - "9093:9092"
    environment:
      KAFKA_ADVERTISED_HOST_NAME: 宿主機IP                    ## 修改:宿主機IP
      KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://宿主機IP:9093   ## 修改:宿主機IP
      KAFKA_ZOOKEEPER_CONNECT: "zoo1:2181"
      KAFKA_ADVERTISED_PORT: 9093
      KAFKA_BROKER_ID: 2
      KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
    depends_on:
      - zoo1
    container_name: kafka2
  kafka-manager:
    image: sheepkiller/kafka-manager              ## 鏡像:開源的web管理kafka集羣的界面
    environment:
        ZK_HOSTS: 宿主機IP                   ## 修改:宿主機IP
    ports:
      - "9000:9000"                               ## 暴露端口
  1. 使用一條命令快速生成Kafka容器集羣
# docker-compose up -d
  1. 如下圖所示 , 使用docker ps 查看即可, 其中kafka-manager 爲kafka可視化工具, 可以直接訪問9000端口

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章