(3)单数据源多出口案例(Sink组)负载均衡器_单channel俩sink-程序员宅基地

技术标签: flume-下水道  

逻辑架构

单Source、Channel多Sink(负载均衡)如图7-3所示。
在这里插入图片描述
1)案例需求:使用Flume-1监控文件变动,Flume-1将变动内容传递给Flume-2,Flume-2负责存储到HDFS。同时Flume-1将变动内容传递给Flume-3,Flume-3也负责存储到HDFS
2)需求分析:
在这里插入图片描述
3)实现步骤:
在/opt/module/flume/job目录下创建group2文件夹

[root@note01 job]# mkdir group2
[root@note01 job]# cd group2/

1.创建flume-netcat-flume.conf

配置1个接收日志文件的source和1个channel、两个sink,分别输送给flume-flume-console1和flume-flume-console2。

vim flume-netcat-flume.conf
# 命名组件
a1.sources = r1
a1.channels = c1
# 配置sink组
a1.sinkgroups = g1
a1.sinks = k1 k2

# Describe/configure the source
a1.sources.r1.type = netcat
a1.sources.r1.bind = localhost
a1.sources.r1.port = 44444

# 配置选择器
a1.sinkgroups.g1.processor.type = load_balance
a1.sinkgroups.g1.processor.backoff = true
a1.sinkgroups.g1.processor.selector = round_robin
a1.sinkgroups.g1.processor.selector.maxTimeOut=10000

# Describe the sink
a1.sinks.k1.type = avro
a1.sinks.k1.hostname = note01
a1.sinks.k1.port = 4141

a1.sinks.k2.type = avro
a1.sinks.k2.hostname = note01
a1.sinks.k2.port = 4142


# Describe the channel
a1.channels.c1.type = memory
a1.channels.c1.capacity = 1000
a1.channels.c1.transactionCapacity = 100

# Bind the source and sink to the channel
a1.sources.r1.channels = c1
a1.sinkgroups.g1.sinks = k1 k2
a1.sinks.k1.channel = c1
a1.sinks.k2.channel = c1

注: Avro是由Hadoop创始人Doug Cutting创建的一种语言无关的数据序列化和RPC框架。
注: RPC(Remote Procedure Call)—远程过程调用,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。

2. 创建flume-flume-console1.conf

配置上级Flume输出的Source,输出是到本地控制台。
创建配置文件并打开

 vim flume-flume-console1.conf
# Name the components on this agent
a2.sources = r1
a2.sinks = k1
a2.channels = c1

# Describe/configure the source
a2.sources.r1.type = avro
a2.sources.r1.bind = note01
a2.sources.r1.port = 4141

# Describe the sink
a2.sinks.k1.type = logger

# Describe the channel
a2.channels.c1.type = memory
a2.channels.c1.capacity = 1000
a2.channels.c1.transactionCapacity = 100

# Bind the source and sink to the channel
a2.sources.r1.channels = c1
a2.sinks.k1.channel = c1
                            

3.创建flume-flume-console2.conf

vim flume-flume-console2.conf
# Name the components on this agent
a3.sources = r1
a3.sinks = k1
a3.channels = c2

# Describe/configure the source
a3.sources.r1.type = avro
a3.sources.r1.bind = note01
a3.sources.r1.port = 4142

# Describe the sink
a3.sinks.k1.type = logger

# Describe the channel
a3.channels.c2.type = memory
a3.channels.c2.capacity = 1000
a3.channels.c2.transactionCapacity = 100

# Bind the source and sink to the channel
a3.sources.r1.channels = c2
a3.sinks.k1.channel = c2

执行配置文件

分别开启对应配置文件:flume-flume-console2,flume-flume-console1,flume-netcat-flume
启动主

 bin/flume-ng agent --conf conf/ --name a1 --conf-file job/group2/flume-netcat-flume.conf

启动两个负载

bin/flume-ng agent --conf conf/ --name a2 --conf-file job/group2/flume-flume-console1.conf -Dflume.root.logger=INFO,console
 bin/flume-ng agent --conf conf/ --name a3 --conf-file job/group2/flume-flume-console2.conf -Dflume.root.logger=INFO,console

使用netcat工具向本机的44444端口发送内容

nc localhost 44444

可以发现1,2对数据进行负载均衡

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/wwwzydcom/article/details/102884325

智能推荐

EVE-NG 镜像导入_eve镜像-程序员宅基地

文章浏览阅读1.2k次。宿主机为intel平台,上传 模板 到 /opt/unetlab/html/templates/intel。宿主机为amd平台,上传 模板 到 /opt/unetlab/html/templates/amd。在 /opt/unetlab/addons/qemu/ 中创建Ruijieroute-1.0。文件夹命名时,"-" 前面和模板名保持一直,"-"后面的内容可以自定义,例如版本号。上传到 /opt/unetlab/html/images/icons。1.启动镜像:运行时加载的磁盘镜像文件;_eve镜像

C语言-求100000以内的所有自幂数_10w以内自幂数-程序员宅基地

文章浏览阅读822次。1.什么叫自幂数?如果在一个固定的进制中,一个n位自然数等于自身各个数位上数字的n次幂之和,则称此数为 自幂数 。例如: 在十进制中,153是一个三位数,各个数位的3次幂之和为13+53+3^3=153,所以153是十进制中的自幂数。在n进制中,所有小于n的正整数都为自幂数,比如2进制中1是自幂数,3进制中1和2都是自幂数,4进制中1,2和3都是自幂数… 2.思路:判断i是否是自幂数再计算i的每一位的n次方之和判断中1,2和3都是自幂数… 3.代码:#define .._10w以内自幂数

开源:VS.NET打印思想与2003/5DataGrid、DataGridView及二维数据如ListView等终极打印实现_vb.net dategridview横向打印-程序员宅基地

文章浏览阅读1k次。前言  当.NET时代到来时,我们在高兴激动的时候,把自己的系统升级到.NET或是用它开发新的系统。  打印--管理信息系统永恒的话题。于是,我们在开发业务系统的时候不得不再专门做一个打印组件或是购买一个中间件完成单据合同、清单、文档、工资单、报表等等的打印。在开始之前,如果您还想了解更多关于打印的信息,可以查看我曾经写的一篇技术文档:NET环境下有关打印页面设置、打印机设置、打印预览_vb.net dategridview横向打印

C++多线程之创建线程及运行_c++ 创建一个线程并执行-程序员宅基地

文章浏览阅读554次,点赞10次,收藏9次。【代码】C++多线程之创建线程及运行。_c++ 创建一个线程并执行

Bigemap如何添加谷歌图源?-程序员宅基地

文章浏览阅读1.2k次。Arcgis : https://livingatlas.arcgis.com/wayback 包含:卫星影像、历史影像。原文链接:https://blog.csdn.net/kiko677/article/details/133324051。mapbox: https://www.mapbox.com/contribute/ 包含:卫星影像、电子地图。必应地图(bing):http://cn.bing.com/maps 包含:卫星影像、电子地图、地形图。谷歌卫星地图(有偏移)_谷歌图源

AI识别教程 yolov5 穿越火线,csgo等FPS游戏识别,角色识别-程序员宅基地

文章浏览阅读1.2k次,点赞37次,收藏14次。我们本次只是识别穿越火线中的人物,还没有实现自动瞄准,我只用了一百张图片进行预测,预测效果不是很好,你可以增加些图片进行训练。后期还会更新!!!!!!!!!!!!!!!!!!!

随便推点

TUM数据集官方说明&&相应的评估文件evaluate_rpe.py和evaluate_ate.py的使用-程序员宅基地

文章浏览阅读8.9k次,点赞3次,收藏54次。TUM数据集使用方法TUM数据集的格式解读地址:https://vision.in.tum.de/data/datasets/rgbd-dataset/file_formats文件格式我们以以下格式提供来自Kinect的RGB-D数据集:彩色图像和深度地图我们以gzip格式的tar文件(TGZ)提供带有时间戳的颜色和深度图像。彩色图像以PNG格式存储为640x480 8位RGB图像。深度图存储为640x480的16位单色图像PNG格式。颜色和深度图像已经使用PrimeSense的OpenNI_tum数据集

【Centos8】RuntimeError: The NVIDIA driver on your system is too old (found version 11060)-程序员宅基地

文章浏览阅读1.2k次,点赞17次,收藏19次。最近在做大模型方面的产品,部署模型时启动模型遇到这样一个问题:RuntimeError: The NVIDIA driver on your system is too old (found version 11060). Please update your GPU driver by downloading and installing a new version from the URL: 驱动版本跟我们的模型不兼容_runtimeerror: the nvidia driver on your system is too old (found version 110

深入理解Linux内核系列-内核网络协议栈架构_linux内核协议栈数据结构图-程序员宅基地

文章浏览阅读1.1k次,点赞3次,收藏7次。Linux内核层还提供网络防火墙的框架netfilter,基于netfilter框架编写网络过滤程序是 Linux 环境下内核层网络处理的常用方法。视频教程:内核网络协议栈架构详解1、Linux内核源代码结构Linux 的内核源代码可以从 https://www.kernel.org/网站上下载,Linux-3.9.5以上的版本(含)。 其代码目录结构如下:Documentation:这个目录下面没有内核的代码,有一套有用的内核文档。其中文档质量良莠不齐,有很多内核文档的质量很优秀并且相当完整_linux内核协议栈数据结构图

设置QListWidgetItem选中的样式_qt qlistwidget设置始终显示高亮行-程序员宅基地

文章浏览阅读1.1w次。如果在QListWidget中插入QListWidgetItem(比方itemA),默认情况下,在点击itemA时,会被选中而且呈高亮,但是我们往往希望这些是可以自己改变的。为了这个目的,我在网上一直搜索QListWidget改变选中,也确实找到了设置的方法,如下:是利用QPalette的setBrush设置,然后将此QPalette设置成QListWidget的palette。 Q_qt qlistwidget设置始终显示高亮行

【Notepad】NotepadFree安装Json格式化插件-程序员宅基地

文章浏览阅读217次,点赞10次,收藏4次。Jsonviewer2.dll(64位): https://github.com/zbeboy/Jsonviewer2/releases。NPPJSONViewer.dll(32位): https://github.com/kapilratnani/JSON-Viewer。4、选中要格式化的JSON文本,点击 插件->JSON Viewer->Format JSON。3、重启notepad++软件,插件安装成功。2、在plugins文件夹下创建一个和插件。_notepadfree

预训练模型相对位置编码和绝对位置编码的通俗理解_为什么用相对位置embedding,为什么不直接用0,1,2…-程序员宅基地

文章浏览阅读836次,点赞2次,收藏3次。上图中以第5个位置(索引为4)的单词为中心,那么其左边的单词的编号为:-1,-2,-3,-4,右边的单词的编号为:+1,+2,+3,+4。对于第一个位置的单词“I”,当transformer计算“I”跟“therefore”的attention信息时候,"therefore"会采用第6个位置编码,因为我们是以第4个索引为中心,“therefore”是位于“I”的右边相对于“I”的相对距离为2,所以其采用的是第6个embedding向量。1.作者认为超出范围的位置还采用精准的位置编码时没必要的。_为什么用相对位置embedding,为什么不直接用0,1,2…

推荐文章

热门文章

相关标签