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. Ubuntu18.04环境下安装网络代理软件 proxychains

    安装: 网络代理软件proxychains安装: sudo apt-get install proxychains 为保证使用 proxychains 时 sudo proxychains 时可以实现 ...

  2. baselines算法库common/vec_env/subproc_vec_env.py模块分析

    模块代码: import multiprocessing as mp import numpy as np from .vec_env import VecEnv, CloudpickleWrappe ...

  3. Auto.js 入门教程(二)

    来了来了 ~ 下面开始学习auto.js 了! 准备材料 : android7.0及以上版本的手机一部(需要开启 '无障碍服务') auto.js软件 vscode (安装配套插件Auto.js-VS ...

  4. Problem - 616C - Codeforces

    Problem - 616C - Codeforces C. The Labyrinth 如果是直接对\(*\)去跑dfs或者bfs的话无疑是会超时的 既然如此,那我们可以去对 \(.\) 跑搜索,将 ...

  5. apollo配置动态更新

    简单配置 使用@Value注解的配置会自动刷新配置 复杂对象 @Component("systemConfig") @ConfigurationProperties(prefix ...

  6. 关于封装axios报错Cyclic dependency的问题

    在npm start的时候直接报错Cyclic dependency循环依赖 JS 循环依赖 (require cycle)_腾飞日记-CSDN博客_js循环依赖 可以看上面的博文了解一下这个错大概在 ...

  7. 最详细STL(三)list

    list就是链表啦,他的一个结点由两个指针域,一个数据域组成.list可以在任何位置以O(n)的复杂度插入元素,头部和尾部的插入的复杂度为O(1).然而list也有一个致命的缺点,因为链表的空间申请是 ...

  8. 【Python】Selenium自动化测试之动态识别验证码图片方法(附静态图片文字获取)

    目录 一.前提 二.获取验证码 三.获取4位验证码 四.判断验证码是否正确 五.输入验证码登录 六.登录页面类 七.完整的获取验证码类代码 八.附录:静态图片文字提取 一.前提 返回目录 经常会遇到登 ...

  9. animate动画库的使用

    在vue中便捷使用animate动画库效果. 安装animate动画库 npm install animate.css --save 在vue跟目录中 main.js 导入animate动画库 imp ...

  10. 用 SQL 写的俄罗斯方块游戏「GitHub 热点速览」

    在开始介绍上周热门开源项目之前,要插播一条开源新闻:Nginx 已正式迁移至 GitHub. 近日,Nginx 官方宣布将 Nginx 开源项目,从 Mercurial 迁移至 GitHub 代码托管 ...