Burrow 服务的安装部署

                                      作者:尹正杰

版权声明:原创作品,谢绝转载!否则将追究法律责任。

  最近协助开发的同时帮忙把10个topic的数据使用5个topic的来工作。结果发现数据flume在手机数据时存在延迟消费的问题。因此遇到了不少坑,要是有个专门监控kafka consumer lag的开源软件就好了!当然我们通过kafka-consumer-groups.sh这个命令也可以查看到相应的参数,但每次都需要敲击命令行。无意间听网友说有LinkedIn公司开源有一款叫做Burrow都软件,专门是对kafka消费这延迟检查。

一.Burrow概述

1>.什么是Burrow

  Burrow是Apache Kafka的监控伴侣,它将消费者滞后检查作为服务提供,无需指定阈值。它监控所有消费者的承诺抵消额,并根据需要计算这些消费者的状态。提供HTTP端点以按需请求状态,以及提供其他Kafka群集信息。还有可配置的通知程序可以通过电子邮件或HTTP调用将状态发送到另一个服务。

2>.Burrow特征

没有门槛!通过滑动窗口评估组。
多个Kafka群集支持

使用Kafka提交的偏移自动监视所有使用者

可配置支持Zookeeper提交的偏移量

可配置支持Storm-committed offsets

消费者组状态的HTTP端点,以及代理和消费者信息

可配置的电子邮件程序,用于发送特定组的警报

可配置的HTTP客户端,用于向所有组的另一个系统发送警报

3>.先决条件

  Burrow是用Go编写的,所以在开始之前,你应该安装并设置Go。

二.安装Golang环境

1>.下载 go 的安装包

[root@node101.yinzhengjie.org.cn ~/Downloads]# wget https://dl.google.com/go/go1.12.1.linux-amd64.tar.gz
---- ::-- https://dl.google.com/go/go1.12.1.linux-amd64.tar.gz
Resolving dl.google.com (dl.google.com)... 203.208.41.70, 203.208.41.72, 203.208.41.65, ...
Connecting to dl.google.com (dl.google.com)|203.208.41.70|:... connected.
HTTP request sent, awaiting response... OK
Length: (122M) [application/octet-stream]
Saving to: ‘go1.12.1.linux-amd64.tar.gz’ %[=========================================================================================================================================================================>] ,, .27MB/s in 54s -- :: (2.28 MB/s) - ‘go1.12.1.linux-amd64.tar.gz’ saved [/] [root@node101.yinzhengjie.org.cn ~/Downloads]#

[root@node101.yinzhengjie.org.cn ~/Downloads]# wget https://dl.google.com/go/go1.12.1.linux-amd64.tar.gz

2>.解压go的安装包到指定目录

[root@node101.yinzhengjie.org.cn ~/Downloads]# tar -zxf go1.12.1.linux-amd64.tar.gz -C /yinzhengjie/softwares/
[root@node101.yinzhengjie.org.cn ~/Downloads]#
[root@node101.yinzhengjie.org.cn ~/Downloads]# ll /yinzhengjie/softwares/go/
total
drwxr-xr-x. root root Mar : api
-rw-r--r--. root root Mar : AUTHORS
drwxr-xr-x. root root Mar : bin
-rw-r--r--. root root Mar : CONTRIBUTING.md
-rw-r--r--. root root Mar : CONTRIBUTORS
drwxr-xr-x. root root Mar : doc
-rw-r--r--. root root Mar : favicon.ico
drwxr-xr-x. root root Mar : lib
-rw-r--r--. root root Mar : LICENSE
drwxr-xr-x. root root Mar : misc
-rw-r--r--. root root Mar : PATENTS
drwxr-xr-x. root root Mar : pkg
-rw-r--r--. root root Mar : README.md
-rw-r--r--. root root Mar : robots.txt
drwxr-xr-x. root root Mar : src
drwxr-xr-x. root root Mar : test
-rw-r--r--. root root Mar : VERSION
[root@node101.yinzhengjie.org.cn ~/Downloads]#
[root@node101.yinzhengjie.org.cn ~/Downloads]#

[root@node101.yinzhengjie.org.cn ~/Downloads]# tar -zxf go1.12.1.linux-amd64.tar.gz -C /yinzhengjie/softwares/

3>.配置go到环境变量

[root@node101.yinzhengjie.org.cn ~/Downloads]#
[root@node101.yinzhengjie.org.cn ~/Downloads]# mkdir /yinzhengjie/goproject
[root@node101.yinzhengjie.org.cn ~/Downloads]#
[root@node101.yinzhengjie.org.cn ~/Downloads]#
[root@node101.yinzhengjie.org.cn ~/Downloads]# tail - /etc/profile
#ADD GO_PATH
export GO_HOME=/yinzhengjie/softwares/go
export PATH=$PATH:$GO_HOME/bin
export GOPATH=/yinzhengjie/goproject [root@node101.yinzhengjie.org.cn ~/Downloads]#
[root@node101.yinzhengjie.org.cn ~/Downloads]#

[root@node101.yinzhengjie.org.cn ~/Downloads]# tail -5 /etc/profile

[root@node101.yinzhengjie.org.cn ~/Downloads]# source /etc/profile
[root@node101.yinzhengjie.org.cn ~/Downloads]#
[root@node101.yinzhengjie.org.cn ~/Downloads]# go env
GOARCH="amd64"
GOBIN=""
GOCACHE="/root/.cache/go-build"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/yinzhengjie/goproject"
GOPROXY=""
GORACE=""
GOROOT="/yinzhengjie/softwares/go"
GOTMPDIR=""
GOTOOLDIR="/yinzhengjie/softwares/go/pkg/tool/linux_amd64"
GCCGO="gccgo"
CC="gcc"
CXX="g++"
CGO_ENABLED=""
GOMOD=""
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build685793832=/tmp/go-build -gno-record-gcc-switches"
[root@node101.yinzhengjie.org.cn ~/Downloads]#
[root@node101.yinzhengjie.org.cn ~/Downloads]#

[root@node101.yinzhengjie.org.cn ~/Downloads]# go env

三.Burrow安装

1>.Burrow的github地址(https://github.com/linkedin/Burrow)

2>.安装git工具

[root@node101.yinzhengjie.org.cn ~]# yum -y install git
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
Resolving Dependencies
--> Running transaction check
---> Package git.x86_64 :1.8.3.1-.el7 will be installed
--> Processing Dependency: perl-Git = 1.8.3.1-.el7 for package: git-1.8.3.1-.el7.x86_64
--> Processing Dependency: perl(Term::ReadKey) for package: git-1.8.3.1-.el7.x86_64
--> Processing Dependency: perl(Git) for package: git-1.8.3.1-.el7.x86_64
--> Processing Dependency: perl(Error) for package: git-1.8.3.1-.el7.x86_64
--> Running transaction check
---> Package perl-Error.noarch :0.17020-.el7 will be installed
---> Package perl-Git.noarch :1.8.3.1-.el7 will be installed
---> Package perl-TermReadKey.x86_64 :2.30-.el7 will be installed
--> Finished Dependency Resolution Dependencies Resolved ===================================================================================================================================================================================================================
Package Arch Version Repository Size
===================================================================================================================================================================================================================
Installing:
git x86_64 1.8.3.1-.el7 updates 4.4 M
Installing for dependencies:
perl-Error noarch :0.17020-.el7 base k
perl-Git noarch 1.8.3.1-.el7 updates k
perl-TermReadKey x86_64 2.30-.el7 base k Transaction Summary
===================================================================================================================================================================================================================
Install Package (+ Dependent packages) Total download size: 4.5 M
Installed size: M
Downloading packages:
(/): perl-Error-0.17020-.el7.noarch.rpm | kB ::
perl-TermReadKey-2.30-.el7.x FAILED
http://mirrors.cloud.aliyuncs.com/centos/7/os/x86_64/Packages/perl-TermReadKey-2.30-20.el7.x86_64.rpm: [Errno 14] curl#6 - "Could not resolve host: mirrors.cloud.aliyuncs.com; Unknown error" 0 B --:--:-- ETA
Trying other mirror.
(/): perl-TermReadKey-2.30-.el7.x86_64.rpm | kB ::
perl-Git-1.8.3.1-.el7.noarch FAILED
http://mirrors.cloud.aliyuncs.com/centos/7/updates/x86_64/Packages/perl-Git-1.8.3.1-20.el7.noarch.rpm: [Errno 14] curl#6 - "Could not resolve host: mirrors.cloud.aliyuncs.com; Unknown error" 0 B --:--:-- ETA
Trying other mirror.
(/): git-1.8.3.1-.el7.x86_64.rpm | 4.4 MB ::
(/): perl-Git-1.8.3.1-.el7.noarch.rpm | kB ::
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Total 2.1 MB/s | 4.5 MB ::
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : :perl-Error-0.17020-.el7.noarch /
Installing : perl-TermReadKey-2.30-.el7.x86_64 /
Installing : git-1.8.3.1-.el7.x86_64 /
Installing : perl-Git-1.8.3.1-.el7.noarch /
Verifying : perl-Git-1.8.3.1-.el7.noarch /
Verifying : :perl-Error-0.17020-.el7.noarch /
Verifying : git-1.8.3.1-.el7.x86_64 /
Verifying : perl-TermReadKey-2.30-.el7.x86_64 / Installed:
git.x86_64 :1.8.3.1-.el7 Dependency Installed:
perl-Error.noarch :0.17020-.el7 perl-Git.noarch :1.8.3.1-.el7 perl-TermReadKey.x86_64 :2.30-.el7 Complete!
[root@node101.yinzhengjie.org.cn ~]#

[root@node101.yinzhengjie.org.cn ~]# yum -y install git

2>.

3>.

4>.

5>. 

Burrow 服务的安装部署的更多相关文章

  1. 通过跳板机建立信任,对多个tomcat服务统一安装部署(shell编写)

    unifyDeploy 自动化统一安装部署 系统版本: unifyDeploy0.1 文件编号: 0.1 发布日期: 2014-06-26 编    制: WangYong 版权所有 内部资料注意保密 ...

  2. Zabbix 3.4 服务端安装部署

    关于zabbix的安装部署官方也提供了详细的安装文档,链接如下: https://www.zabbix.com/download 选择zabbix的版本,服务器平台及使用的数据库 安装和配置zabbi ...

  3. Windows 2008 R2环境下DHCP服务的安装部署使用

    (第一版本) 这个实验好像需要在部署了activity directory服务的基础上的,给个直达链接 http://blog.csdn.net/qq_34829953/article/details ...

  4. 对象存储服务MinIO安装部署分布式及Spring Boot项目实现文件上传下载

    目录 一.MinIO快速入门 1. MinIO简介 2. CentOS7更换成阿里云镜像 3. 安装 3.1 下载 3.2 运行测试 4. 配置脚本执行文件 4.1 创建配置执行文件 4.2 执行 二 ...

  5. OpenVPN Windows 平台安装部署教程

    一.环境准备: 操作系统Windows 服务器IP:192.168.88.123  VPN:192.168.89.1 客户端IP:192.168.78.3 客户端服务端单网卡,路由器做好端口映射 安装 ...

  6. 使用Kickstart+pxe自动化安装部署无人值守的linux服务器

    Kickstart+pxe Kickstart无人职守安装RHEL5过程分享(详细图解版) 启动应用有:httpd.dhcpd.named.xinetd 无人职守自动批量安装linux系统超详细 参考 ...

  7. centos7安装部署SVN

      SVN介绍 SVN是个自由.开源的版本控制系统,绝大多数开源软件都使用SVN作为代码版本管理软件. SVN的官方网站http://subversion.apache.org/.目前SVN在开源社区 ...

  8. Spring boot centos7 后台服务安装部署

    Spring boot 应用服务安装部署(maven工程) 1.首先在maven工程的pom文件中引入以下标签并保存 <build> <plugins> <plugin& ...

  9. 微服务(入门一):netcore安装部署consul

    环境准备  vs开发环境:vs2017 consul版本: 1.4.4 netcore版本:2.1 安裝Consul  1.从官网下载consul到本地,选择系统对应的版本进行下载到本地,下载地址:h ...

随机推荐

  1. python代码块,小数据池,驻留机制深入剖析

    一,什么是代码块. 根据官网提示我们可以获知: 根据提示我们从官方文档找到了这样的说法: A Python program is constructed from code blocks. A blo ...

  2. socket跟TCP/IP 的关系,单台服务器上的并发TCP连接数可以有多少

    常识一:文件句柄限制 在Linux下编写网络服务器程序的朋友肯定都知道每一个tcp连接都要占一个文件描述符,一旦这个文件描述符使用完了,新的连接到来返回给我们的错误是"Socket/File ...

  3. maven加载本地jar包到repository

    maven加载本地jar到repository 这是一个常见场景,此处以本地opencv jar文件导入repository为例 1.Ubuntu下 mvn install:install-file ...

  4. python 项目目录结构

    目录组织方式 关于如何组织一个较好的Python工程目录结构,已经有一些得到了共识的目录结构.在Stackoverflow的这个问题上,能看到大家对Python目录结构的讨论. 这里面说的已经很好了, ...

  5. JVM深入理解<二>

    以下内容来自: http://www.jianshu.com/p/ac7760655d9d JVM相关知识详解 一.Java虚拟机指令集 Java虚拟机指令由一个字节长度的.代表某种特定含义的操作码( ...

  6. POJ 2352 树状数组

    学习自:链接以及百度百科 以及:https://www.bilibili.com/video/av18735440?from=search&seid=363548948825132979 理解 ...

  7. IDEA Failed to prepare an update: Temp directory inside installation

    具体错误: Connection Error Failed to prepare an update: Temp directory inside installation: F:\IDEA_Tool ...

  8. ajax 提交数组 泛型集合(嵌套集合)

    直接上代码 后台接口: A类型中嵌套了 List<B> B类型中嵌套了 List<C> [HttpPost] public string Post(A a) { return ...

  9. web页面简单布局的修改,测试中的应用

    在做功能测试的时候发现,界面显示不美观,觉得登录按钮应向上移动,那么如何移动呢? 很简单:使用开发者工具找到这个按钮所在的div,修改其中的属性值,top值减小,即可实现按钮向上移动,具体可以看效果

  10. Katu Puzzle POJ - 3678(水2 - sat)

    题意: 有n个未知量,m对未知量之间的关系,判断是否能求出所有的未知量且满足这些关系 解析: 关系建边就好了 #include <iostream> #include <cstdio ...