一、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不同)

# vim zoo.cfg

tickTime=2000

# Client - server 通信心跳时间

initLimit=10

# leader-follower 初始链接时能容忍的最多心跳数;

syncLimit=5

# follower 服务器和人leade 服务器 之间请求和应答之间能容忍的最多心跳数;

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不同)

vim  config/server.properties

broker.id=1

# broker 标识

listeners=PLAINTEXT://10.207.101.100:90921

#  listeners一定要配置成为IP地址;如果配置为localhost或服务器的hostname,在使用java发送数据时就会抛出异 ;也可以设置hostname

log.dirs= /opt/kafka/logs/90921

# kafka 数据存放目录

zookeeper.connect=10.207.101.100:21811,10.207.101.100:21812,10.207.101.100:21813

# zookeeper 链接串

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

监测Kafka集群状态

Topic、Consumer Group列表

图形化展示topic和consumer之间的关系

图形化展示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

转载于:https://blog.51cto.com/51log/1918419

Zookeeper集群 + Kafka集群 + KafkaOffsetMonitor 监控相关推荐

  1. ELK集群+Kafka集群+FileBeat——命运多舛的安装采坑之路

    欢迎大家关注我的公众号,添加我为好友! 开始的时候感觉日志监控是比较NB的技术,感觉很神奇,那么多日志,为什么一下子就能够找到自己想要的?后来初步了解到了ELK(ElasticSearch + Log ...

  2. php连接kafka集群,Kafka集群环境配置

    Kafka集群环境配置 1 环境准备 1.1 集群规划 Node02 Node03 Node04 zk zk zk kafka kafka kafka 1.2 jar包下载 安装包:kafka_2.1 ...

  3. kafka集群搭建教程(使用自带的zookeeper)

    kafka集群搭建教程(使用自带的zookeeper) 一.kafka简介 二.kafka名词解释 三.zookeeper与Kafka 四.kafka集群搭建前准备 1.下载 2.检验jdk 3.系统 ...

  4. 汽车位置服务之kafka集群配置注意事项

    1)  重复消费问题. 问题描述  采用kafka读取消息进行处理时,consumer会重复读取afka队列中的数据. 问题原因  kafka的consumer消费数据时首先会从broker里读取一批 ...

  5. java kafka 集群消费_kafka集群简单生产者消费者实例

    项目描述 本项目是个简单的kafka集群简单生产者和消费者实例,生产者能生产消息,消费者能消费消息,这里将消费的消息存入了mysql数据库,适合刚kafka刚入门的朋友借鉴使用,里面的zookeepe ...

  6. kafka 集群服役新节点

    前言 在生产环境下,kafka集群中发现遇到了性能瓶颈,主要体现在现有的集群下,某个topic的分区存储不够用了,生产者生产消息量太大,或者消费端消费速度跟不上生产进度,导致分区数据大量堆积: 在这种 ...

  7. Kafka:Docker Compose部署Kafka集群

    创建目录用于存放Docker Compose部署Kafka集群的yaml文件: mkdir -p /root/composefile/kafka/ 写入该yaml文件: vim /root/compo ...

  8. docker-compose快速搭建kafka集群

    文章目录 前言 docker-compose快速搭建kafka集群(较详细) docker-compose快速搭建Zookeeper集群+kafka集群 参考资料 前言 当前是在学习kafka3.0的 ...

  9. docker快速搭建kafka集群

    一.准备工作 1.拉取kafka镜像 docker pull wurstmeister/kafka docker tag docker.io/wurstmeister/kafka kafka dock ...

最新文章

  1. c语言2维动态数组的创建,如何创建一个动态2维数组?
  2. POJ2253 Frogger(最短路径)
  3. 011_CSS子元素选择器
  4. 浅谈分库分表那些事儿
  5. 远程桌面无法复制文本时解决办法
  6. One order error message log and storage
  7. java版我的世界光追,老瓶装新酒 光追版《我的世界》将至你心动了吗
  8. Origami 用于Quartz 的免费的交互设计框架
  9. zedgraph控件使用
  10. c语言多功能日历菜单,C语言课程设计日历显示
  11. 一文带你彻底了解电子灌封(灌胶)工艺技术
  12. 【MPEG】DVB / ATSC / ISDB区别
  13. live streaming领域基础知识与论文总结
  14. Maven启动被终止---构建路径指定执行环境 J2SE-1.5。工作空间中没有与此环境严格兼容的JRE...
  15. 程序员专属小情话,哎呦,不错哦!!!
  16. contest17 CF593 div2 ooxxx ooxxx ooooo
  17. KVM内存管理(一)—— 设置基本参数
  18. ?php exit('dedecms');?,包罗万象的织梦CMS的图片处理类库
  19. 推荐一个相见恨晚的免费精品学习网站,编程、平面、游戏、影视、动画,通通都可以免费学习!
  20. 会“教”难“育”,AIGC卷不了教师

热门文章

  1. 简明Python3教程 8.控制流
  2. 分析文件上传过程中的HTTP头部
  3. ubuntu 14.04 LTS 右键菜单解压压缩包时出错
  4. 【POJ 2482】 Stars in Your Window(线段树+离散化+扫描线)
  5. MYSQL注入天书之前言
  6. OC动态创建的问题变量数组.有数组,在阵列13要素,第一个数据包阵列,每3元素为一组,分成若干组,这些数据包的统一管理。最后,一个数组.(要动态地创建一个数组).两种方法...
  7. 数据库设计:关于枚举类型的表结构设计法,个人拙见
  8. GridView利用FootTemplate插入新记录
  9. 一切都不能够想当然D
  10. TensorFlow 官方文档中文版发布啦(持续维护)