flume搭建新手测试环境
硬件环境:
腾讯云,两台服务器8G 双核
软件环境:
flume1.8、jdk1.8,centos6
第一次搭建也是各种找文件,只知道flume是日志抓取服务,也听说了非常稳定强大的服务,正好公司需要抓取广告点击次数产生的日志要做费用统计,就和做大数据的同事学习了一下,初次学习flume的时候是通过flume官网还有各种论坛的例子结合查询,flume官网是纯英文,二把刀的我只能凭借关键字查询了解配置问题,没法官网是最权威的。
flume运行流程图:
手动绘画,忍着点把,^_^~ 简单解释一下图的意思,这是一个“单机版”的flume也就是新手第一次搭建的图,测试环境,安装flume之后去ping这台server的端口产生日志之后flume接收通过,然后输出到控制台的一个流程。
简单的介绍一下flume的工作流程,拿到日志(数据)——flume处理——发送——结束,大概就是这个样子 ,主要我们学习的是flume处理的这个过程
flume是一个分布式的java开发出来的服务工具,学过java的话,对它的报错和提示信息 我们基本是没问题能看得懂的,
当我们通过方式来接收数据是由flume中的source来接收的,它主要是用来配置:去哪里接收?怎么接收数据?数据如何发送?这些是需要我们来告诉它的,可以实时监听端口、日志、文件/文件夹,反正就是各种接收吧,具体怎么接收?哪种接收?如何配置?官网的帮助文档上写的特清晰,一定要忍住看一下。我现在只解读我的测试环境监听的配置是什么意思,(其实例子也是在官网看到的。。。。)就可以照猫画虎的去做了,途中肯定会报错,一定冷静下来,我也是一步一步解决的。
首先要准备flume和jdk
下载flume版本在官网 这个就不教了http://flume.apache.org/download.html
我这里用的是flume1.8版本,官网推荐1.6,可以在生产环境部署,比较稳定,我们测试环境就用最新的了。
jdk下载自己查一下吧,不会jdk安装估计也学不到这里了。。。
所有下载tar包到linux服务器上
我放到了/opt下面了
解压完成之后就来部署环境变量
vim /etc/profile
在最后加上jdk和flume的环境变量方便操作
立即生效profile文件
source /etc/profile
然后随便位置测试一下环境变量是否生效
出现可以命令参数就说明环境变量正常了。如果没有那一定要检查自己电脑的环境问题,会不会发生冲突了或其他问题
接下来配置flume的配置文件
首先要copy一份配置文件来用改名为flume.conf
cp /opt/apache-flume-1.8.-bin/conf/flume-conf.properties.template /opt/apache-flume-1.8.-bin/conf/flume.conf
打开刚复制好的配置文件来删除里面所有内容,然后修改成我这样的
vim /opt/apache-flume-1.8.-bin/conf/flume.conf
配置文件内容:
# example.conf: A single-node Flume configuration # Name the components on this agent
a1.sources = r1
a1.sinks = k1
a1.channels = c1 # Describe/configure the source
a1.sources.r1.type = netcat
a1.sources.r1.bind = localhost
a1.sources.r1.port = # Describe the sink
a1.sinks.k1.type = logger # Use a channel which buffers events in memory
a1.channels.c1.type = memory
a1.channels.c1.capacity =
a1.channels.c1.transactionCapacity = # Bind the source and sink to the channel
a1.sources.r1.channels = c1
a1.sinks.k1.channel = c1
其实已经配置完成了,现在就可以启动来测试flume是否能用了
启动命令:
flume-ng agent --conf conf --conf-file /opt/apache-flume-1.8.-bin/conf/flume.conf --name a1 -Dflume.root.logger=INFO,console
然后会进入监听状态:
这就说明启动成功了,然后在打开一个登陆窗口
使用telnet来检测这个端口是否能用,如果没有telnet需要安装,yum install telnet -y 这个如果有什么问题,自己解决一下把。
完成!
在这里我截图来解释一下这个配置文件的配置参数都是什么
对照参数和上面的画图,然后理解一下sources 、channels和sinks之间的工作原理,以上代码全部真实有效全部都是亲测之后,原创,不是转载别人的,所以复制可以直接使用。之后会研究flume集群搭建,到时候在分享给大家
flume搭建新手测试环境的更多相关文章
- 使用XAMPP和DVWA在Windows7上搭建渗透测试环境
前言: XAMPP是一个Web应用程序运行环境集成软件包,包括MySQL.PHP.PerI和Apache的环境及Apache.MySQL.FilleZilla.Mercury和Tomecat等组件.D ...
- 使用WampServer和DVWA在Windows10上搭建渗透测试环境
前言: DVWA是一个具有脆弱性的Web测试应用,需要PHP和MySQL的环境支持.我们可以手动配置DVWA所需的运行环境,也可以使用WampServer进行搭建.WampServer是集成了Apac ...
- 使用Rancher搭建K8S测试环境
使用Rancher搭建K8S测试环境 http://blog.csdn.net/csdn_duomaomao/article/details/75316926 环境准备(4台主机,Ubuntu16.0 ...
- 利用Docker Compose快速搭建本地测试环境
前言 Compose是一个定义和运行多个Docker应用的工具,用一个YAML(dockder-compose.yml)文件就能配置我们的应用.然后用一个简单命令就能启动所有的服务.Compose编排 ...
- 一文教您如何通过 Docker 快速搭建各种测试环境(Mysql, Redis, Elasticsearch, MongoDB) | 建议收藏
欢迎关注个人微信公众号: 小哈学Java, 文末分享阿里 P8 高级架构师吐血总结的 <Java 核心知识整理&面试.pdf>资源链接!! 个人网站: https://www.ex ...
- Docker-教你如何通过 Docker 快速搭建各种测试环境
今天给大家分享的主题是,如何通过 Docker 快速搭建各种测试环境,本文列举的,也是作者在工作中经常用到的,其中包括 MySQL.Redis.Elasticsearch.MongoDB 安装步骤,通 ...
- 一文带你趟过mac搭建appium测试环境的遇到的坑
做UI自动化,最难的一步就是在环境搭建上,怎么去搭建一个UI自动化测试的环境,会难住很多人,在Mac上搭建appium如何搭建呢,本文带着大家去领略如何在mac上搭建appium测试环境.下面就是详细 ...
- 快速搭建IE测试环境(Virtualbox+ievms)
IE下的测试 作为一个有追求的程序员,应该尽可能的远离Windows系统.不论从专业开发者的角度,还是仅仅作为最终用户从使用体验上来说,Windows都可以算是垃圾中的战斗机: 没有shell . 响 ...
- 搭建redsocks 测试环境
1. 先来谈谈pc的测试环境 socks5代理,因为要在centos下设置,没有yum到socks, 就安装ss5,wget http://jaist.dl.sourceforge.net/proje ...
随机推荐
- 【Leetcode】【Medium】Triangle
Given a triangle, find the minimum path sum from top to bottom. Each step you may move to adjacent n ...
- 设计模式:Builder模式
设计模式:Builder模式 一.前言 今天我们讨论一下Builder建造者模式,这个Builder,其实和模板模式非常的像,但是也有区别,那就是在模板模式中父类对子类中的实现进行操作,在父类之 ...
- .NET Core学习之路
1.NET Core环境搭建 安装.NET Core: .NET Core 包括.NET Core Runtime 和 .NET Core SDK: NET Core = 应用运行依赖的 .NET C ...
- FRP-Functional Reactive Programming-函数响应式编程
响应式编程是一种面向数据流和变化传播的编程范式: 响应式编程和函数式编程的融合: 响应式编程为内核:函数式编程为工具: 流的概念先天适合函数式编程. Some quotes from the arti ...
- WMIC_2
- 关于使用eclipse maven UpdateProject时报错,无法更新本地仓库的问题解决方案
在做项目中,需要从同事电脑中把Maven项目copy过来,但是copy的过程中只copy了代码,setting.xml文件和pom.xml,使用eclipse把项目导入,有红色的感叹号提示,由于我没有 ...
- Selenium图片上传
方式1: 如果是input类型的标签则可直接赋值 部分代码: driver.find_element_by_name("file").send_keys("E:\\tes ...
- 【luogu P3946 ことりのおやつ】 题解
题目链接:https://www.luogu.org/problemnew/show/P3946 交好几遍是因为虽然能过一直有提醒..强迫症qwq #include <bits/stdc++.h ...
- wshShell.SendKeys模拟键盘操作
Dim wshShellSet wshShell = CreateObject("Wscript.Shell")wshShell.SendKeys "{ENTER}&qu ...
- Andorid进阶7—— Ant自动编译打包&发布 android项目
http://www.cnblogs.com/tt_mc/p/3891546.html Eclipse用起来虽然方便,但是编译打包android项目还是比较慢,尤其将应用打包发布到各个渠道时,用Ecl ...