Zookeeper集群 + Kafka集群 + KafkaOffsetMonitor 监控

时间:2022-09-01 20:17:51

一、Zookeeper
ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。
ZooKeeper的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户。

zookeeper集群以奇数做集群
zookeeper1 10.207.101.100 21811
zookeeper2 10.207.101.100 21812
zookeeper3 10.207.101.100 21813

  1、下载地址:

http://mirrors.hust.edu.cn/apache/zookeeper/

  2、安装配置 ;

# tar -xf zookeeper-3.4.9.tar.gz
# mv zookeeper-3.4.9/ zookeeper
zookeeper/conf目录,输入命令 cp -rp zoo_sample.cfg zoo.cfg

zookeeper目录,新建子目录data和logs
# mkdir -p /opt/{data/{21811,21812,21813},logs{21811,21812,21813}}

  3、zoo.conf 配置如下:

(单点配置 其余节点配置更改port data logs不同)
# cat zoo.cfg
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/opt/server/zookeeper/data/21811
dataLogDir=/opt/server/zookeeper/logs/212812
clientPort=21811
server.1=zoo1:28881:38881
server.2=zoo2:28882:38882
server.3=zoo3:28883:38883

  4、启动:zookeeper (配置目录)

bin/zkServer.sh start

  5、链接测试

bin/zkCli.sh -server 127.0.0.1:21811
bin/zkCli.sh -server 127.0.0.1:21812
bin/zkCli.sh -server 127.0.0.1:21813

二、kafka
Kafka是分布式发布-订阅消息系统。它最初由LinkedIn公司开发,之后成为Apache项目的一部分。 Kafka是一个分布式的,可划分的,冗余备份的持久性的日志服务。它主要用于处理活跃的流式数据。通过集群来提供实时的消费。

单台测试规划 :
kafka1 10.207.101.100 90921
Kafka2 10.207.101.100 90921
kafka3 10.207.101.100 90921
prot:90921/90922/90923

  1、下载安装:

https://www.apache.org/dyn/closer.cgi?path=/kafka/0.10.1.1/kafka_2.11-0.10.1.1.tgz
# mkdir -p /opt/kafka/logs{90921,90922,90923}

  2、配置文件(单点配置 其余节点配置更改port data logs不同)

#cat config/server.properties

broker.id=1
listeners=PLAINTEXT://10.207.101.100:90921
log.dirs= /opt/kafka/logs/90921
zookeeper.connect=10.207.101.100:21811,10.207.101.100:21812,10.207.101.100:21813

  3、Kafka环境变量

# cat /etc/profile
export KAFKA_HEAP_OPTS="-Xms30g -Xmx30g -XX:+UseG1GC -XX:MaxGCPauseMillis=50 -XX:InitiatingHeapOccupancyPercent=45"
(注 设置根据硬件资源和系统资源本机测试环境都是64核256G8TSSD)

  4、启动

nohup bin/kafka-start.sh config/server.properties >/dev/null 2>&1 &

三、 kafak 集群监控
  1、kafka-monitor

1、监测Kafka集群状态
2、Topic、Consumer Group列表
3、图形化展示topic和consumer之间的关系
4、图形化展示consumer的Offset、Lag等信息

  2、kafka offset monitor

KafkaOffsetMonitor:程序一个jar包的形式运行,部署较为方便。只有监控功能,使用起来也较为安全。

  3、本文示例使用kafka offset monitor 进行监控

https://github.com/quantifind/KafkaOffsetMonitor
下载解压缩执行: 执行格式:
java -cp KafkaOffsetMonitor-assembly-0.2.1.jar \
com.quantifind.kafka.offsetapp.OffsetGetterWeb \
--offsetStorage kafka \
--zk zk-server1,zk-server2 \
--port 8899 \
--refresh 10.seconds \
--retain 2.days 注:
offsetStorage目前只支持kaka,zk按照host1:port1,host2:port2…的格式去写即可,port为开启web界面的端口号可自定义,refresh为刷新时间,retain为数据保留时间(单位seconds, minutes, hours, days)。

  4、设置shell启动示例:

# cat start.sh
# !/bin/sh
echo "KafkaOffsetMonitor starting"
nohup java -cp KafkaOffsetMonitor-assembly-0.3.0.jar com.quantifind.kafka.offsetapp.OffsetGetterWeb --offsetStorage kafka --zk zoo1:21811,zoo2:21812,zoo3:21813 --port 8090 --refresh 10.seconds --retain 1.days > /dev/null 2>&1 &

  5、kafka-monitor 监控平台测试访问:

http://10.207.101.100:8899/#/clusterviz

Zookeeper集群 + Kafka集群 + KafkaOffsetMonitor 监控的更多相关文章

  1. zookeeper集群+kafka集群 部署

    zookeeper集群 +kafka 集群部署 1.Zookeeper 概述: Zookeeper 定义 zookeeper是一个开源的分布式的,为分布式框架提供协调服务的Apache项目 Zooke ...

  2. 【拆分版】Docker-compose构建Zookeeper集群管理Kafka集群

    写在前边 在搭建Logstash多节点之前,想到就算先搭好Logstash启动会因为日志无法连接到Kafka Brokers而无限重试,所以这里先构建下Zookeeper集群管理的Kafka集群. 众 ...

  3. kafka 集群

    在kafka中,我们能创建多种类型的集群,一般如下: 单节点——单个broker集群 单节点——多broker集群 多结点——多broker集群 kafka集群中主要有五个组件: Topic:主题主要 ...

  4. Kafka集群管理工具kafka-manager

    一.kafka-manager简介 kafka-manager是目前最受欢迎的kafka集群管理工具,最早由雅虎开源,用户可以在Web界面执行一些简单的集群管理操作.具体支持以下内容: 管理多个集群 ...

  5. 六十一.常用组件 、 Kafka集群 、 Hadoop高可用

    1.Zookeeper安装搭建Zookeeper集群并查看各服务器的角色停止Leader并查看各服务器的角色 1.1 安装Zookeeper1)编辑/etc/hosts ,所有集群主机可以相互 pin ...

  6. Kafka集群搭建和配置

    Kafka配置优化 https://www.jianshu.com/p/f62099d174d9 1.安装&配置 下载tar包 解压后即可使用 修改配置文件 将server.propertie ...

  7. kafka集群及监控部署

    1. kafka的定义 kafka是一个分布式消息系统,由linkedin使用scala编写,用作LinkedIn的活动流(Activity Stream)和运营数据处理管道(Pipeline)的基础 ...

  8. kafka集群和zookeeper集群的部署,kafka的java代码示例

    来自:http://doc.okbase.net/QING____/archive/19447.html 也可参考: http://blog.csdn.net/21aspnet/article/det ...

  9. 搭建zookeeper+kafka集群

      搭建zookeeper+kafka集群 一.环境及准备 集群环境:   软件版本: 部署前操作: 关闭防火墙,关闭selinux(生产环境按需关闭或打开) 同步服务器时间,选择公网ntpd服务器或 ...

随机推荐

  1. Hadoop各商业发行版之比较

    Hadoop的发行版除了社区的Apache hadoop外,cloudera,hortonworks,mapR,EMC,IBM,INTEL,华为等等都提供了自己的商业版本.商业版主要是提供了专业的技术 ...

  2. AX2012单元格显示颜色 displayOption

    public void displayOption(HV_WMSLocationStatusHistory _record, FormRowDisplayOption _options){    #d ...

  3. android高级---->AsyncTask的源码分析

    在Android中实现异步任务机制有两种方式,Handler和AsyncTask,它在子线程更新UI的例子可以参见我的博客(android基础---->子线程更新UI).今天我们通过一个小的案例 ...

  4. scu 4436: Easy Math 水题

    4436: Easy Math Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.scu.edu.cn/soj/problem.actio ...

  5. Android添加标题进度条

    requestWindowFeaure(Window.FEATURE_PROGRESS); setProgressBarVisibility(true); 这两步必须在setContentView() ...

  6. [POJ] 2456 Aggressive cows (二分查找)

    题目地址:http://poj.org/problem?id=2456 最大化最小值问题.二分牛之间的间距,然后验证. #include<cstdio> #include<iostr ...

  7. TEA加密算法的文件加密和解密的实现

    一.TEA加密算法简介 TEA加密算法是由英国剑桥大学计算机实验室提出的一种对称分组加密算法.它采用扩散和混乱方法,对64位的明文数据块,用128位密钥分组进行加密,产生64位的密文数据块,其循环轮数 ...

  8. php中的捕获异常操作

    <?php if(!isset($_SESSION)){ session_start(); } include '../common/mysql.class.php'; include '../ ...

  9. 电子产品使用感受之----AirPods的一天使用体验分享

    2019.03.29 晚上8点50分更新: 3月28日我的新款AirPods终于到货了,作为一代产品使用2年的用户,终于可以说说这枚新品的一天使用感受了: 我们会从以下几个方面来进行阐述: 外观 技术 ...

  10. django 模板语言

    母版与继承: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UT ...