3台机器部署kafka集群的分布

10.1.161.111 -> kafka(1个节点)+ zookeeper(一个节点)+ kowl(一个节点)

10.1.161.112 -> kafka(1个节点)+ zookeeper(一个节点)

10.1.161.113 -> kafka(1个节点)+ zookeeper(一个节点)

curl -fsSL https://get.docker.com | bash

yum -y install docker-ce

sudo systemctl start docker

sudo systemctl enable docker

sudo curl -L https://get.daocloud.io/docker/compose/releases/download/1.29.2/docker-compose-uname -s-uname -m -o /usr/local/bin/docker-compose

sudo chmod +x /usr/local/bin/docker-compose

docker compose -v

部署方法:

bash(10.1.161.111)

https://hub.docker.com/r/bitnami/kafka
https://hub.docker.com/r/bitnami/zookeeper

version: '2'

services:

zoo:

image: 'bitnami/zookeeper:latest'

restart: unless-stopped

hostname: zoo

container_name: zoo

ports:

- 2181:2181

- 2888:2888

- 3888:3888

volumes:

- ./data/zookeeper:/bitnami/zookeeper

environment:

ZOO_SERVER_ID: 1

ZOO_SERVERS: 0.0.0.0:2888:3888,10.1.161.112:2888:3888,10.1.161.113:2888:3888

ALLOW_ANONYMOUS_LOGIN: yes

kafka:

image: 'bitnami/kafka:latest'

restart: unless-stopped

hostname: kafka

container_name: kafka

ports:

- 9092:9092

environment:

KAFKA_ADVERTISED_HOST_NAME: 10.1.161.111

KAFKA_HOST_NAME: 10.1.161.111

KAFKA_ADVERTISED_PORT: 9092

KAFKA_BROKER_ID: 1

KAFKA_CFG_ZOOKEEPER_CONNECT: 10.1.161.111:2181,10.1.161.112:2181,10.1.161.113:2181

KAFKA_CFG_ADVERTISED_LISTENERS: PLAINTEXT://10.1.161.111:9092

KAFKA_CFG_LISTENERS: PLAINTEXT://:9092

ALLOW_PLAINTEXT_LISTENER: yes

KAFKA_CFG_AUTO_CREATE_TOPICS_ENABLE: true

volumes:

- ./data/kafka:/bitnami/kafka

docker compose -f 10.1.161.111.yml up -d

bash(10.1.161.112)

https://hub.docker.com/r/bitnami/kafka
https://hub.docker.com/r/bitnami/zookeeper

version: '2'

services:

zoo:

image: 'bitnami/zookeeper:latest'

restart: unless-stopped

hostname: zoo

container_name: zoo

ports:

- 2181:2181

- 2888:2888

- 3888:3888

volumes:

- ./data/zookeeper:/bitnami/zookeeper

environment:

ZOO_SERVER_ID: 2

ZOO_SERVERS: 10.1.161.111:2888:3888,0.0.0.0:2888:3888,10.1.161.113:2888:3888

ALLOW_ANONYMOUS_LOGIN: yes

kafka:

image: 'bitnami/kafka:latest'

restart: unless-stopped

hostname: kafka

container_name: kafka

ports:

- 9092:9092

environment:

KAFKA_ADVERTISED_HOST_NAME: 10.1.161.112

KAFKA_HOST_NAME: 10.1.161.112

KAFKA_ADVERTISED_PORT: 9092

KAFKA_BROKER_ID: 2

KAFKA_CFG_ZOOKEEPER_CONNECT: 10.1.161.111:2181,10.1.161.112:2181,10.1.161.113:2181

KAFKA_CFG_ADVERTISED_LISTENERS: PLAINTEXT://10.1.161.112:9092

KAFKA_CFG_LISTENERS: PLAINTEXT://:9092

ALLOW_PLAINTEXT_LISTENER: yes

KAFKA_CFG_AUTO_CREATE_TOPICS_ENABLE: true

volumes:

- ./data/kafka:/bitnami/kafka

docker compose -f 10.1.161.112.yml up -d

bash(10.1.161.113)

https://hub.docker.com/r/bitnami/kafka
https://hub.docker.com/r/bitnami/zookeeper

version: '2'

services:

zoo:

image: 'bitnami/zookeeper:latest'

restart: unless-stopped

hostname: zoo

container_name: zoo

ports:

- 2181:2181

- 2888:2888

- 3888:3888

volumes:

- ./data/zookeeper:/bitnami/zookeeper

environment:

ZOO_SERVER_ID: 3

ZOO_SERVERS: 10.1.161.111:2888:3888,10.1.161.112:2888:3888,0.0.0.0:2888:3888

ALLOW_ANONYMOUS_LOGIN: yes

kafka:

image: 'bitnami/kafka:latest'

restart: unless-stopped

hostname: kafka

container_name: kafka

ports:

- 9092:9092

environment:

KAFKA_ADVERTISED_HOST_NAME: 10.1.161.113

KAFKA_HOST_NAME: 10.1.161.113

KAFKA_ADVERTISED_PORT: 9092

KAFKA_BROKER_ID: 3

KAFKA_CFG_ZOOKEEPER_CONNECT: 10.1.161.111:2181,10.1.161.112:2181,10.1.161.113:2181

KAFKA_CFG_ADVERTISED_LISTENERS: PLAINTEXT://10.1.161.113:9092

KAFKA_CFG_LISTENERS: PLAINTEXT://:9092

ALLOW_PLAINTEXT_LISTENER: yes

KAFKA_CFG_AUTO_CREATE_TOPICS_ENABLE: true

volumes:

- ./data/kafka:/bitnami/kafka

docker compose -f 10.1.161.113.yml up -d

bash(10.1.161.111)

mkdir -p /app/conf

chmod -R 777 /app/conf

放这里面

docker-compose.yml
参考 https://github.com/cloudhut/kowl

version: '2'

services:

kowl:

image: 'quay.io/cloudhut/kowl:master'

restart: unless-stopped

hostname: kowl

container_name: kowl

ports:

- 8085:8085

volumes:

- .:/app/conf

environment:

CONFIG_FILEPATH: /app/conf/kowl.yaml

kowl.yaml
参考 https://github.com/cloudhut/kowl/blob/master/docs/config/kowl.yaml

kafka:

brokers:

- 10.1.161.111:9092

- 10.1.161.112:19092

- 10.1.161.113:19092

server:

listenPort: 8085

basePath: "/kowl/"

readTimeout: 30s

writeTimeout: 30s

idleTimeout: 30s

compressionLevel: 4

cd /app/conf

docker compose up -d

镜像源可能拉不下来,看我前面的文章,里面有解决办法

没权限自动新建文件夹:

yml文件放主目录里

sudo mkdir -p /root/data/zookeeper

sudo chmod -R 777 /root/data/zookeeper

sudo mkdir -p /root/data/zookeeper

sudo chmod -R 777 /root/data/kafka

访问:

http://10.1.161.111:8085/kowl/

admin/admin

快速部署kafka集群和可视化界面的更多相关文章

  1. docker 快速部署ES集群 spark集群

    1) 拉下来 ES集群  spark集群 两套快速部署环境, 并只用docker跑起来,并保存到私库. 2)弄清楚怎么样打包 linux镜像(或者说制作). 3)试着改一下,让它们跑在集群里面. 4) ...

  2. docker swarm 集群及可视化界面的安装及配置

    docker swarm 集群及可视化界面的安装及配置 2016-12-14 16:08:46 标签:swarm consul registrator 原创作品,允许转载,转载时请务必以超链接形式标明 ...

  3. 使用RKE快速部署k8s集群

    一.环境准备 1.1环境信息 IP地址 角色 部署软件 10.10.100.5 K8s Master Etcd.Control 10.10.100.17 K8s Worker1 Worker 10.1 ...

  4. MariaDB Galera Cluster 部署(如何快速部署 MariaDB 集群)

    MariaDB Galera Cluster 部署(如何快速部署 MariaDB 集群)  OneAPM蓝海讯通7月3日 发布 推荐 4 推荐 收藏 14 收藏,1.1k 浏览 MariaDB 作为 ...

  5. MariaDB Galera Cluster 部署(如何快速部署MariaDB集群)

    MariaDB Galera Cluster 部署(如何快速部署MariaDB集群) [日期:--] 来源:Linux社区 作者:Linux [字体:大 中 小] MariaDB作为Mysql的一个分 ...

  6. Kubernetes探索学习001--Centos7.6使用kubeadm快速部署Kubernetes集群

    Centos7.6使用kubeadm快速部署kubernetes集群 为什么要使用kubeadm来部署kubernetes?因为kubeadm是kubernetes原生的部署工具,简单快捷方便,便于新 ...

  7. 菜鸟系列k8s——快速部署k8s集群

    快速部署k8s集群 1. 安装Rancher Rancher是业界唯一完全开源的企业级容器管理平台,为企业用户提供在生产环境中落地使用容器所需的一切功能与组件. Rancher2.0基于Kuberne ...

  8. 通过kubeadm快速部署K8S集群

    kubeadm是官方社区推出的一个用于快速部署kubernetes集群的工具. 这个工具能通过两条指令完成一个kubernetes集群的部署: # 创建一个 Master 节点 $ kubeadm i ...

  9. 教你在Kubernetes中快速部署ES集群

    摘要:ES集群是进行大数据存储和分析,快速检索的利器,本文简述了ES的集群架构,并提供了在Kubernetes中快速部署ES集群的样例:对ES集群的监控运维工具进行了介绍,并提供了部分问题定位经验,最 ...

  10. 快速安装 kafka 集群

    前言 最近因为工作原因,需要安装一个 kafka 集群,目前网络上有很多相关的教程,按着步骤来也能完成安装,只是这些教程都显得略微繁琐.因此,我写了这篇文章帮助大家快速完成 kafka 集群安装.   ...

随机推荐

  1. LeetCode 上1769号 面试编程题,python编程

    原题地址: https://leetcode-cn.com/problems/minimum-number-of-operations-to-move-all-balls-to-each-box/ - ...

  2. 电视家APP,从此以后电视盒子只是盒子,再与电视毫无关系

    广电总局封掉了电视家APP,于是我决定把我的"当贝盒子"挂咸鱼了,从此以后电视盒子就只是个盒子. PS: 广电的一刀切简直是绝了,绝绝子.

  3. 【VMware ESXi】把硬盘当内存用?VMware 内存分层(Memory Tiering),你值得拥有!

    VMware vSphere 8.0 U3 发布了一个非常有意义的功能叫内存分层(Memory Tiering),以利用基于 PCIe 的 NVMe 设备充当第二层(辅助)内存,从而使 ESXi 主机 ...

  4. Java学习笔记1--JDK,JRE和JVM

    1.Java开发环境 Java开发环境是指Java程序员开发.编写.测试和调试Java程序所使用的所有工具和技术.Java开发环境通常由以下几个部分组成: JDK(Java Development K ...

  5. 国内IT行业67家外包公司,有多少程序员在里面待过?

    之前写过一篇关于外包公司的文章, <什么是软件外包公司?要不要去外包公司?> 很多粉丝看了后,感觉都在说自己, 存在即合理, 外包大幅度降(可)低(以)了(压)用(榨)人(更)成(多)本( ...

  6. 瑞芯微 | I2S-音频基础 -1

    最近调试音频驱动,顺便整理学习了一下i2s.alsa相关知识,整理成了几篇文章,后续会陆续更新. 喜欢嵌入式.Li怒晓得老铁可以关注一口君账号. 1. 音频常用术语 名称 含义 ADC(Analog ...

  7. 模板链表类的扩展(QListEx<T>)

    以前写的链表都是比较简单的,插入节点是在头节点上,所以循环链表时都是从最后一个数据往前找的,给人的感觉是倒着的, 今天写一个在链表尾部插入数据 1.链表节点类的定义 /链表节点类 template & ...

  8. 修改kubeadm证书过期时间及更新k8s集群证书

    一.为什么要修改 kubeadm 证书时间 Kubernetes 官方提供了 kubeadm 工具安装 kubernetes 集群,使用这个工具安装集群非常便捷,使部署和升级 Kubernetes 变 ...

  9. stm32学习之调试篇踩坑记录

    如何下载fml文件 找不到64k的fml文件 could not stop cortex-m device:无法连接,我当时是在程序中的一些初始化函数中,有几条语句禁用了(JTAG+SW) 接线顺序, ...

  10. 推荐一款流量录制回放工具:jvm-sandbox-repeater

    在软件开发和测试过程中,我们经常会遇到需要对网络请求进行录制和回放的需求,以便进行调试.测试和分析.为了模拟真实的用户请求,我们通常会使用各种流量录制回放工具来记录并重放网络请求. 其中,jvm-sa ...