一、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. 了不起的Node.js--之五 TCP连接

    TCP连接 传输控制协议(TCP)是一个面向连接的协议,它保证了两台计算机之间数据传输的可靠性和顺序. TCP是一种传输层协议,它可以让你将数据从一台计算机完整有序地传输到另一台计算机. Node.j ...

  2. PHP学习 Cookie和Session

    <?phpheader("Content-type:text/html;charset=utf-8");session_start(); $_SESSION['count'] ...

  3. PAT甲题题解-1043. Is It a Binary Search Tree (25)-二叉搜索树

    博主欢迎转载,但请给出本文链接,我尊重你,你尊重我,谢谢~http://www.cnblogs.com/chenxiwenruo/p/6789220.html特别不喜欢那些随便转载别人的原创文章又不给 ...

  4. eclipse实现热部署和热启动

    不用每次修改一个class文件就要重启tomcat这么麻烦: http://blog.csdn.net/fuzhongyu2/article/details/52073050

  5. 每日scrum(4)

    今天是冲刺第4天,大家都忙着找大二的学弟学妹来点评来支持我们的软件. 遇到的问题主要是如何劝说学弟学妹选择我们的软件然后继续往下做. 任务看板: 燃尽图:

  6. ES6实用新特性

    兼容性 http://kangax.github.io/compat-table/es5/ http://kangax.github.io/compat-table/es6/ ES6(ES2015)兼 ...

  7. 如何访问cxGrid控件过滤后的数据集

    var I: Integer; begin Memo1.Lines.Clear; with cxGrid1DBTableView1.DataController do for I := 0 to Fi ...

  8. [转帖]Windows10七大版本区别在哪?

    Windows10七大版本区别在哪? http://os.51cto.com/art/201804/570132.htm 一.Windows10家庭版 对于绝大多数用户来说,最后可能获得的应该就是Wi ...

  9. Python进阶-配置文件

    一. 什么是配置文件?为什么要做配置文件? 将所有的代码和配置都变成模块化可配置化,这样就提高了代码的重用性,不再每次都去修改代码内部,这个就是我们逐步要做的事情,可配置化 二. 配置文件长啥样? 配 ...

  10. Python模块-pandas

    目录 数据读取 数据探索 数据清洗 数据清洗 类型转换 缺失值 重复值 值替换 修改表结构 新增列 删除列 删除行 修改列名 数据分组(数值变量) 数据分列(分类变量) 设置索引 排序 数据筛选/切片 ...