flume安装和介绍
一、安装
1、flume-ng-1.5.0-cdh5.3.6.tar.gz 下载
链接:https://pan.baidu.com/s/1AWPGP2qnY6_VpYr_iSnJ3w 密码:tiog
2、对flume进行解压缩:tar -zxvf flume-ng-1.5.0-cdh5.3.6.tar.gz
3、对flume目录进行重命名:mv apache-flume-1.5.0-cdh5.3.6-bin flume
4、配置相关的环境变量
vi ~/.bashrc
export FLUME_HOME=/usr/local/bigdata/flume
export FLUME_CONF_DIR=$FLUME_HOME/conf
export PATH=$PATH:$FLUME_HOME/bin
source ~/.bashrc
5、修改配置文件 flume-conf.properties
进入conf目录下,添加如下,下面agent监听指定文件夹,并上传到HDFS上去:
root@spark1:/usr/local/bigdata/flume# cd ./conf
touch flume-conf.properties
vim flume-conf.properties
#agent1
agent1.sources=source1
agent1.sinks=sink1
agent1.channels=channel1
#source1
agent1.sources.source1.type=spooldir
agent1.sources.source1.spoolDir=/usr/local/bigdata/flume_logs
agent1.sources.source1.channels=channel1
agent1.sources.source1.fileHeader = false
agent1.sources.source1.interceptors = i1
agent1.sources.source1.interceptors.i1.type = timestamp
#channel1
agent1.channels.channel1.type=file
agent1.channels.channel1.checkpointDir=/usr/local/bigdata/flume_logs_tmp_cp
agent1.channels.channel1.dataDirs=/usr/local/bigdata/flume_logs_tmp
#sink1
agent1.sinks.sink1.type=hdfs
agent1.sinks.sink1.hdfs.path=hdfs://spark1:9000/flume_logs
agent1.sinks.sink1.hdfs.fileType=DataStream
agent1.sinks.sink1.hdfs.writeFormat=TEXT
agent1.sinks.sink1.hdfs.rollInterval=1
agent1.sinks.sink1.channel=channel1
agent1.sinks.sink1.hdfs.filePrefix=%Y-%m-%d
创建本地文件夹
mkdir /usr/local/bigdata/flume_logs
mkdir /usr/local/bigdata/flume_logs_tmp_cp
mkdir /usr/local/bigdata/flume_logs_tmp
hdfs dfs -mkdir /flume_logs
6、修改配置文件
cp flume-env.sh.template flume-env.sh
vim flume-env.sh
添加java完整路径
export JAVA_HOME=/usr/local/bigdata/jdk
启动flume
flume-ng agent -n agent1 -c conf -f /usr/local/bigdata/flume/conf/flume-conf.properties -Dflume.root.logger=DEBUG,console
7、测试
在 /usr/local/bigdata/flume_logs 目录下创建一个文件,flume会自动上传到hdfs中
查看hdfs目录
root@spark1:/usr/local/bigdata/flume_logs# hdfs dfs -lsr /flume_logs
lsr: DEPRECATED: Please use 'ls -R' instead.
-rw-r--r-- 3 root supergroup 25 2018-09-17 15:03 /flume_logs/2018-09-17.1537167831660
-rw-r--r-- 3 root supergroup 11 2018-09-17 15:07 /flume_logs/2018-09-17.1537168036300
查看日志文件
root@spark1:/usr/local/bigdata/flume_logs# hdfs dfs -text /flume_logs/2018-09-17.1537167831660 hello flume
hello word
二、flume介绍
1. Flume OG(original generation, 2009年7月):分布式日志收集系统,有Master概念,依赖于Zookeeper,分为agent, collector, storage三种角色
2. Flume NG(next generation, 2011年10月):代码重构,功能精简,去掉master, collector角色,专注数据的收集与传递
3.

4.Flume Flow:
Flow:数据采集流程·
Event:消息处理的最小单位,带有一个可选的消息头
Agent:一个独立的Flume进程,包含组件Source. Channel, Sink
Source: 以event为单位接收信息,并确保信息被推送(push)到channel .
Channel:缓存信息,确保信息在被sink处理前不会丢失,
Sink:从channel中拉取(pull)并处理信息 .
Interceptor: event拦截器,可以修改或丢弃event
处理流程:source以event为单位从数据源接收信息,然后保存到一个或多个channel中 (可以经过一个或多个interceptor的预处理) , sink从channel中拉取并处理信息(保存,丢弃或传递到下一个agent) ,然后通知channel删除信息
5.Source
Avro:监听地址接收avro信息
Thrift:监听地址,接收thrift信息
JMS:监听JMS地址,接收jms信息
Exec:监听命令输出,如tail-fxx.log
Spooling Directory:监听放置到指定文件夹下的新文件,读取文件中的内容,
Kafka:监听kafka服务器,接收kafka消息
自定义:自定义的source
6.channel
Memory Channel:Event数据存储在内存中。处理速度快,但是不能保证信息的持久化,而且容量受限于内存大小。
File Channel:Event数据存储在磁盘文件中。处理速度一般,但是可以保证信息不会丢失,,容量也几乎无限制.
JDBC Channel:Event数据存储在持久化存储中,当前Flume Channel内置支持Derby
Spillable Memory Channel :Event数据存储在内存中和磁盘上,当内存队列满了,会持久化到磁盘文件,(当前为试验性的,不建议生产环境使用)
自定义Channel:实现Custom Channel
7.sink
HDFS:数据写入HDFS
Hive:数据写入Hive数据
Logger:写入日志文件
Avтo:数据被转换成Avro Event,然后发送到配置的RPC端口上,
Thrift:数据被转换成Thrift Event,然后发送到配置的RPC端口上.
HBase:数据写入HBase数据库
ElasticSearch:数据发送到Elastic Search搜索服务器(集群)
Kafka:数据发送到Kafka
Null:丢弃到所有数据
Custom:自定义Sink实现
flume安装和介绍的更多相关文章
- Flume(一)Flume的基础介绍与安装
一.背景 Hadoop业务的整体开发流程: 从Hadoop的业务开发流程图中可以看出,在大数据的业务处理过程中,对于数据的采集是十分重要的一步,也是不可避免的一步. 许多公司的平台每天会产生大量的日志 ...
- Flume简介与使用(一)——Flume安装与配置
Flume简介与使用(一)——Flume安装与配置 Flume简介 Flume是一个分布式的.可靠的.实用的服务——从不同的数据源高效的采集.整合.移动海量数据. 分布式:可以多台机器同时运行采集数据 ...
- flume安装及配置
Flume安装 介绍 Flume本身的安装比较简单(flume的介绍请参考http://blog.csdn.net/rzhzhz/article/details/7448633),安装前先说明几个概念 ...
- Flume学习之路 (一)Flume的基础介绍
一.背景 Hadoop业务的整体开发流程: 从Hadoop的业务开发流程图中可以看出,在大数据的业务处理过程中,对于数据的采集是十分重要的一步,也是不可避免的一步. 许多公司的平台每天会产生大量的日志 ...
- CentOS6安装各种大数据软件 第七章:Flume安装与配置
相关文章链接 CentOS6安装各种大数据软件 第一章:各个软件版本介绍 CentOS6安装各种大数据软件 第二章:Linux各个软件启动命令 CentOS6安装各种大数据软件 第三章:Linux基础 ...
- Sikuli图形脚本测试工具安装及介绍(适合小白的测试神器)
sikuli简单安装以及介绍附图: 一.简单介绍 SikuliX官方网站:https://launchpad.net/sikuli/(官方的最新版本是SikuliX1.1.0更新于2015-10-06 ...
- sqoop、flume 安装
sqoop安装步骤 1.上传解压tar包 tar -zxvf sqoop-1.4.6.bin__hadoop-2.0.4-alpha.tar.gz 2.修改配置文件 进入 sqoop/conf/ c ...
- python Scrapy安装和介绍
python Scrapy安装和介绍 Windows7下安装1.执行easy_install Scrapy Centos6.5下安装 1.库文件安装yum install libxslt-devel ...
- Visual Studio 2017正式版离线安装及介绍
Visual Studio 2017 RTM正式版离线安装及介绍. 首先至官网下载:https://www.visualstudio.com/zh-hans/downloads/ VS 2017 正式 ...
随机推荐
- Github桌面端安装慢问题
失败截图: 原因是某些域名被墙,所以这里想安装快的话还是得翻墙.如何翻墙请自行百度. 如果翻墙还是很慢,请参考网上大神文章:https://www.yaozeyuan.online/2015/10/0 ...
- javascript input只输入数字和字母
<input type="text" placeholder="请输入您的用户名..."> <script type="text/j ...
- C#版本websocket及时通信协议实现(教程示例)
1:Websocket有java.nodejs.python.PHP.等版本 ,我现在使用的是C3版本,服务器端是Fleck.客户端和服务器端来使用websocket的,下面开始讲解如何使用: 2:在 ...
- 网页背景H5视频自动播放---PC端、移动端兼容问题完美解决方案(IOS、安卓、微信端)
最近公司官网需要使用视频当做banner背景且自动播放,并且因为是官网需要做到PC端和移动端都可以适配兼容,这些问题很是头疼: 兵来将挡,水来土掩,进过查阅相关技术资料,现已完美兼容PC端和移动端.下 ...
- opencv::基于距离变换与分水岭的图像分割
什么是图像分割 图像分割(Image Segmentation)是图像处理最重要的处理手段之一 图像分割的目标是将图像中像素根据一定的规则分为若干(N)个cluster集合,每个集合包含一类像素. 根 ...
- Vue系列---源码构建过程(四)
在了解源码如何构建之前,我们有必要了解下 项目中一个简单的目录结构如下: |---- vue | |---- dist # 打包后的存放文件目录 | |---- scripts # 存放构建相关的代码 ...
- Java Stream函数式编程图文详解(二):管道数据处理
一.Java Stream管道数据处理操作 在本号之前发布的文章<Java Stream函数式编程?用过都说好,案例图文详解送给你>中,笔者对Java Stream的介绍以及简单的使用方法 ...
- 以np.concatenate为主题,谈谈numpy数组按维度合并的问题
1.引言 最近在做多模态融合的图像问题,其中最需要解决的就是不同模态的图像用什么方法进行融合,最简单也最直观的方法就是采用合并数组的方法,将不同模态的图像合并为多通道进行处理.在一些论文中,比如< ...
- java中多线程 - 多线程中的基本方法
介绍一下线程中基本的方法使用 线程睡眠sleep() Thread.sleep(毫秒);我们可以通过sleep方法设置让线程睡眠.可以看到sleep是个静态方法 public static nativ ...
- 一文让你彻底了解大数据实时计算引擎 Flink
前言 在上一篇文章 你公司到底需不需要引入实时计算引擎? 中我讲解了日常中常见的实时需求,然后分析了这些需求的实现方式,接着对比了实时计算和离线计算.随着这些年大数据的飞速发展,也出现了不少计算的框架 ...