一、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. commitizen和cz-customizable配置git commit message

    起因 团队对提交的commit message格式有约定俗称的要求,但是没有一个统一的规范,导致大家提交的commit message或多或少不太一样.因此,需要一个工具来帮助大家统一commit m ...

  2. StackGAN 阅读笔记

    StackGAN 阅读笔记 StackGAN论文下载链接(arxiv) 创新点 提出多尺度的GAN Stage-I GAN Stage-II GAN Stage-I GAN 主要是根据文本描述抓取目标 ...

  3. HyperLedger/Fabric SDK使用Docker容器镜像快速部署上线

    HyperLedger/Fabric SDK Docker Image 该项目在github上的地址是:https://github.com/aberic/fabric-sdk-container ( ...

  4. 毕业设计---json,Struts,ajax以及JQuery简单案例

    <!-- Struts2的xml文件配置 --><struts> <package name="default" namespace="/& ...

  5. ios UnitTest 学习笔记

    一.运行第一个单元测试: 1.在Xcode 5中新建一个工程默认自带一个单元测试的文件夹,IDE自动生成了一个实现XCTestCase的.m文件,里面有一个失败测试(早期版本中实现的是SenTestC ...

  6. 团队项目7——团队冲刺beta版本目录

    Beta版本冲刺计划及安排http://www.cnblogs.com/zy-96/p/8017331.html 第二次项目冲刺(Beta版本12.04) www.cnblogs.com/zy-96/ ...

  7. Ubuntu安装eclipse,并创建桌面快捷方式

    系统:Ubuntu 16.04 JDK版本:1.8.0_121 Ubuntu下安装JDK配置环境变量可见我的这篇文章   http://www.cnblogs.com/AloneZ/p/Ubuntu1 ...

  8. 11th 5个新的问题——关于软件工程

    5个新的问题: 1.现在课上,我们每一个团队开发一个软件,遵循的是敏捷流程,近乎每天都召开Scrum会议,但这一切都基于团队人数很少,这样我们可以畅所欲言,而且不会花费过长时间,但是,如果是大团队呢? ...

  9. final发布简评

    1.nice!——约跑app:本次发布使用摄像头展示,比之前清晰的多,展示效果很好,值得学习!功能都已实现,已经可以使用,好评. 2.飞天小女警——礼物挑选:本次发布风格与上次不同,除此之外添加了猜你 ...

  10. Linux命令(十九) 查看系统负载 uptime

    一.命令介绍 Linux 系统中 uptime 命令主要用于获取主机运行时长和查询Linux系统负载等信息. uptime 命令可以显示系统已经运行了多长时间,信息显示依次为:现在时间.系统已经运行时 ...