当前位置: 首页 > news >正文

dcoker-compose一键部署EFAK —— 筑梦之路

简介

EFAKEagle For Apache Kafka,以前称为 Kafka Eagle)是一款由国内公司开源的Kafka集群监控系统,可以用来监视kafka集群的broker状态、Topic信息、IO、内存、consumer线程、偏移量等信息,并进行可视化图表展示。独特的KQL还可以通过SQL在线查询kafka中的数据。

 

前提条件

需要安装docker+docker-compose

配置文件

# system-config.properties# 指定zookeeper
######################################
# multi zookeeper & kafka cluster list
######################################
# kafka.eagle.zk.cluster.alias=cluster1,cluster2,cluster3
kafka.eagle.zk.cluster.alias=cluster1
cluster1.zk.list=zookeeper:2181######################################
# zookeeper enable acl
######################################
cluster1.zk.acl.enable=false
cluster1.zk.acl.schema=digest
cluster1.zk.acl.username=test
cluster1.zk.acl.password=test123######################################
# broker size online list
######################################
cluster1.kafka.eagle.broker.size=10######################################
# zk client thread limit
######################################
kafka.zk.limit.size=25######################################
# kafka eagle webui port
######################################
kafka.eagle.webui.port=8048######################################
# kafka jmx acl and ssl authenticate
######################################
cluster1.kafka.eagle.jmx.acl=false
cluster1.kafka.eagle.jmx.user=keadmin
cluster1.kafka.eagle.jmx.password=keadmin123
cluster1.kafka.eagle.jmx.ssl=false
cluster1.kafka.eagle.jmx.truststore.location=/Users/dengjie/workspace/ssl/certificates/kafka.truststore
cluster1.kafka.eagle.jmx.truststore.password=ke123456######################################
# kafka offset storage
######################################
cluster1.kafka.eagle.offset.storage=kafka
cluster2.kafka.eagle.offset.storage=zookeeper######################################
# kafka metrics, 15 days by default
######################################
kafka.eagle.metrics.charts=true
kafka.eagle.metrics.retain=15######################################
# kafka sql topic records max
######################################
kafka.eagle.sql.topic.records.max=5000######################################
# delete kafka topic token
######################################
kafka.eagle.topic.token=keadmin######################################
# kafka sasl authenticate
######################################
cluster1.kafka.eagle.sasl.enable=false
cluster1.kafka.eagle.sasl.protocol=SASL_PLAINTEXT
cluster1.kafka.eagle.sasl.mechanism=SCRAM-SHA-256
cluster1.kafka.eagle.sasl.jaas.config=org.apache.kafka.common.security.scram.ScramLoginModule required username="kafka" password="kafka-eagle";
cluster1.kafka.eagle.sasl.client.id=
cluster1.kafka.eagle.blacklist.topics=
cluster1.kafka.eagle.sasl.cgroup.enable=false
cluster1.kafka.eagle.sasl.cgroup.topics=
cluster2.kafka.eagle.sasl.enable=false
cluster2.kafka.eagle.sasl.protocol=SASL_PLAINTEXT
cluster2.kafka.eagle.sasl.mechanism=PLAIN
cluster2.kafka.eagle.sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required username="kafka" password="kafka-eagle";
cluster2.kafka.eagle.sasl.client.id=
cluster2.kafka.eagle.blacklist.topics=
cluster2.kafka.eagle.sasl.cgroup.enable=false
cluster2.kafka.eagle.sasl.cgroup.topics=######################################
# kafka ssl authenticate
######################################
cluster3.kafka.eagle.ssl.enable=false
cluster3.kafka.eagle.ssl.protocol=SSL
cluster3.kafka.eagle.ssl.truststore.location=
cluster3.kafka.eagle.ssl.truststore.password=
cluster3.kafka.eagle.ssl.keystore.location=
cluster3.kafka.eagle.ssl.keystore.password=
cluster3.kafka.eagle.ssl.key.password=
cluster3.kafka.eagle.blacklist.topics=
cluster3.kafka.eagle.ssl.cgroup.enable=false
cluster3.kafka.eagle.ssl.cgroup.topics=# eagle 默认使用hadoop 存储信息
######################################
# kafka sqlite jdbc driver address
######################################
#kafka.eagle.driver=org.sqlite.JDBC
#kafka.eagle.url=jdbc:sqlite:/hadoop/kafka-eagle/db/ke.db
#kafka.eagle.username=root
#kafka.eagle.password=www.kafka-eagle.org# 我们使用MySQL 进行数据存储
######################################
# kafka mysql jdbc driver address
######################################
kafka.eagle.driver=com.mysql.jdbc.Driver
kafka.eagle.url=jdbc:mysql://192.168.100.100:3306/ke?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull
kafka.eagle.username=root
kafka.eagle.password=123456

docker-compose.yml文件

services:zookeeper:image:  registry.cn-hangzhou.aliyuncs.com/bigdata_cloudnative/efak-zookeeper:3.8.1container_name: zookeeperrestart: alwaysenvironment:- ZOOKEEPER_CLIENT_PORT=2181# 必须开启 允许匿名登录- ALLOW_ANONYMOUS_LOGIN=yes- TZ=Asia/Shanghaivolumes:- /etc/localtime:/etc/localtimeports:- 2181:2181networks:- bigdatakafka:image:  registry.cn-hangzhou.aliyuncs.com/bigdata_cloudnative/kafka:3.2.3container_name: kafkarestart: alwaysenvironment:- KAFKA_BROKER_ID=1# 内部访问- KAFKA_CFG_LISTENERS=PLAINTEXT://:9092# 外部访问 由于有端口冲突 指定为190092- KAFKA_CFG_ADVERTISED_LISTENERS=PLAINTEXT://192.168.182.110:19092- KAFKA_CFG_ZOOKEEPER_CONNECT=zookeeper:2181- ALLOW_PLAINTEXT_LISTENER=yes# 是否启用kafka Raft 模式 默认是yes 要给关闭- KAFKA_ENABLE_KRAFT=no- JMX_PORT=9999- TZ=Asia/Shanghaivolumes:- /etc/localtime:/etc/localtimeports:- 19092:9092- 9999:9999depends_on:- zookeepernetworks:- bigdatamysql-kafka:image: registry.cn-hangzhou.aliyuncs.com/bigdata_cloudnative/mysql:5.7container_name: mysql-kafkarestart: alwaysenvironment:- MYSQL_ROOT_PASSWORD=123456- MYSQL_DATABASE=ke- TZ=Asia/Shanghaivolumes:- /etc/localtime:/etc/localtime- ./mysql/data:/var/lib/mysql- ./mysql/logs:/var/log/mysqlnetworks:- bigdataports:- 13306:3306eagle:image:  registry.cn-hangzhou.aliyuncs.com/bigdata_cloudnative/kafka-eagle:2.0.3container_name: eagleenvironment:- EFAK_CLUSTER_ZK_LIST=zookeeper:2181# 所有的做时间同步宿主机 要不然会有时间问题- TZ=Asia/Shanghaivolumes:- /etc/localtime:/etc/localtime- ./system-config.properties:/kafka-eagle/conf/system-config.propertiesdepends_on:- kafkaports:- 8048:8048networks:- bigdatanetworks:bigdata:driver: bridge

访问验证

http://ip:8048

账号/密码:admin/123456

 参考资料:

https://www.cnblogs.com/liugp/p/16307589.html

http://www.lryc.cn/news/262423.html

相关文章:

  • 音视频:Ubuntu下安装 FFmpeg 5.0.X
  • 【LSM tree 】Log-structured merge-tree 一种分层、有序、面向磁盘的数据结构
  • 配置OSPF与BFD联动示例
  • 01到底应该怎么理解“平均负载”
  • jmeter,动态参数之随机数、随机日期
  • uniApp常见知识点-问题答案
  • 云原生基础入门概念
  • 一个 tomcat 下如何部署多个项目?附详细步骤
  • pycharm强制让terminal停止执行的快捷键
  • MFC(Microsoft Foundation Classes)中 MessageBox
  • 如何让.NET应用使用更大的内存
  • 【从零开始学习JVM | 第九篇】了解 常见垃圾回收器
  • Wordle 游戏实现 - 使用 C++ Qt
  • Python 爬虫开发完整环境部署,爬虫核心框架安装
  • 汽车标定技术(十三)--标定概念再详解
  • PostgreSQL常用命令
  • 使用python脚本部署k8s集群
  • 【C语言】操作符详解(四):结构成员访问操作符
  • 【算法】二分法
  • 2023.12.18 JAVA学习day03,while与for循环
  • 使用Pytorch从零开始构建StyleGAN2
  • C++ Qt 开发:ListWidget列表框组件
  • 手机天线市场分析:预计2029年将达到576亿美元
  • FPGA引脚分配的问题
  • 面试经典150题(27-28)
  • 计算机图形学头歌合集(题集附解)
  • MacBook Air提供了丰富多彩的截图选项,大到整个屏幕,小到具体的区域
  • 【CMU 15-445】Lecture 12: Query Execution I 学习笔记
  • 低代码开发平台的优势及应用场景分析
  • ES常见查询总结