out_forward是一个带缓存的输出插件,用于向其他节点转发日志事件,并支持转发节点之间的负载均衡和自动故障切换。

out_forward支持至多一次和至少一次传输模式,默认为至多一次。

out_forward内置于Fluentd,无需安装。

1.示例配置

<match pattern>
@type forward
send_timeout 60s
recover_wait 10s
hard_timeout 60s <server>
name myserver1
host 192.168.1.3
port 24224
weight 60
</server>
<server>
name myserver2
host 192.168.1.4
port 24224
weight 60
</server>
... <secondary>
@type file
path /var/log/fluent/forward-failed
</secondary>
</match>

这个例子使用out_forward向myserver1和myserver2转发日志,并使用本地file作为故障备份。

2.参数说明

  • Fluentd通用参数适用于out_forward
  • @type插件类型,取值为forward
  • <server>(至少包含一个,0.14.5(最低要求版本,下同))
    • host:server的ip地址
    • name:server的name,用在日志和ssl传输中
    • port:端口,默认24224,tcp和udp使用相同的端口
    • standby:
      • 是否为备用节点。备用节点会在活动节点故障时被提升为
      • 活动节点,并开始接收数据。
    • weight:
      • 负载均衡权重值,默认为60.
      • 若一个节点的权重值为20,另一个节点的权重值为30,
      • 那么out_forward会以2:3的比例向它们转发数据。
  • require_ack_response(0.14.0)是否开启接收应答,默认为false。若开启,out_forward会采用“至少一次”的传输模式,发送数据后会等待接收端的应答。
  • ack_response_timeout(0.14.0)设定应答响应超时时长。
  • send_timeout(0.14.0)设置发送超时时长
  • connect_timeout(1.6.0)设置socket连接超时时长
  • recover_wait(0.14.0)设置接收服务器故障恢复等待时间,默认10s。
  • heartbeat_type(0.14.12)设置心跳协议。取值可为transport、tcp、udp、none
  • heartbeat_interval(0.14.0)心跳包发送间隔,默认1s
  • keepalive(1.5.0)是否启用长连接,默认false
  • <secondary>(0.14.0)设置所有接收节点故障时的备份路径
  1. 常见问题

    3.1 如何启用数据压缩功能

    Fluentd自v0.14.7版本开始支持对传输数据的压缩,可通过如下配置开启压缩功能。
<match debug.**>
@type forward
compress gzip
<server>
host 192.168.1.2
port 24224
</server>
</match>

该配置只需在发送端开启,接收端可自动解压数据。

3.2 节点不可用报错

有时候会在Fluentd运行日志中发现“no nodes are available”这样的报错,这可能是因为网络不通造成的。

通信双方需要相互开放tcp和udp的24224端口。可通过以下命令进行检查:

$ telnet host 24224
$ nmap -p 24224 -sU host

14. Fluentd输出插件:out_forward用法详解的更多相关文章

  1. golang格式化输出-fmt包用法详解

    golang格式化输出-fmt包用法详解 注意:我在这里给出golang查询关于包的使用的地址:https://godoc.org    声明: 此片文章并非原创,大多数内容都是来自:https:// ...

  2. Vue插件编写、用法详解(附demo)

    Vue插件编写.用法详解(附demo) 1.概述 简单来说,插件就是指对Vue的功能的增强或补充. 比如说,让你在每个单页面的组件里,都可以调用某个方法,或者共享使用某个变量,或者在某个方法之前执行一 ...

  3. ZT --- extern "C"用法详解 2010-08-21 19:14:12

    extern "C"用法详解 2010-08-21 19:14:12 分类: C/C++ 1.前言: 时常在cpp的代码之中看到这样的代码: #ifdef __cplusplus ...

  4. Vue1.0用法详解

    Vue.js 不支持 IE8 及其以下版本,因为 Vue.js 使用了 IE8 不能实现的 ECMAScript 5 特性. 开发环境部署 可参考使用 vue+webpack. 基本用法 1 2 3 ...

  5. C#中string.format用法详解

    C#中string.format用法详解 本文实例总结了C#中string.format用法.分享给大家供大家参考.具体分析如下: String.Format 方法的几种定义: String.Form ...

  6. c++中vector的用法详解

    c++中vector的用法详解 vector(向量): C++中的一种数据结构,确切的说是一个类.它相当于一个动态的数组,当程序员无法知道自己需要的数组的规模多大时,用其来解决问题可以达到最大节约空间 ...

  7. 【转】linux expr命令参数及用法详解

    在抓包过程中,查看某个设定时间内,数据上下行多少,用命令expr 计算! --------------------------------------------------------------- ...

  8. linux curl用法详解

    linux ‍‍curl用法详解 ‍‍curl的应用方式,一是可以直接通过命令行工具,另一种是利用libcurl库做上层的开发.本篇主要总结一下命令行工具的http相关的应用, 尤其是http下载方面 ...

  9. SQL中CONVERT()函数用法详解

    SQL中CONVERT函数格式: CONVERT(data_type,expression[,style]) 参数说明: expression 是任何有效的 Microsoft® SQL Server ...

随机推荐

  1. 多校B层冲刺NOIP20211110 字符配对游戏

    原题 问题描述 操场边,运动会没有项目的同学也没闲着,经过几天的研究,他们发明了一个很有意思的字符串配对游戏,两位同学准备两张白纸,第一个同学在纸上写一个整数N和一个由小写字母组成的字符串S,将S重复 ...

  2. 第二十一天python3 python的正则表达式re模块学习

    python的正则表达式 python使用re模块提供了正则表达式处理的能力: 常量 re.M re.MULTILINE 多行模式 re.S re.DOTALL 单行模式 re.I re.IGNORE ...

  3. gotoscan:CMS指纹识别工具

    gotoscan 前言 项目地址 https://github.com/newbe3three/gotoscan 结合自己学习到的Go相关知识,通过实现这个简易的CMS指纹识别工具来锻炼一下自己写代码 ...

  4. python 操作pdf文档

    简介 在实际项目中,我们有可能需要提取当中的部分内容并导出,给PDF文件添加水印,合并多份PDF文件等等,而本文会着重用到PyPDF2模块来玩转PDF文档,以及tabula模块来对PDF文档中的表格数 ...

  5. Dubbo源码(七) - 集群

    前言 本文基于Dubbo2.6.x版本,中文注释版源码已上传github:xiaoguyu/dubbo 集群(cluster)就是一组计算机,它们作为一个总体向用户提供一组网络资源.这些单个的计算机系 ...

  6. MybatisPlus——全网配置最全的代码生成器

    MybatisPlus代码生成器 这里讲解的是新版 (mybatis-plus 3.5.1+版本),旧版不兼容 官方文档:https://baomidou.com/(建议多看看官方文档,每种功能里面都 ...

  7. 1.2_Selenium的三生三世

  8. Django-Import-Export插件控制数据导入流程

    前言 之前写过两篇跟这个插件有关的文章,可以回顾一下: Django数据导入导出神器django-import-export使用 Django-Import-Export插件关于外键的处理 最近有个朋 ...

  9. 01_Linux基础-部署-VMware-Xshell-Xftp-内核-安迪比尔定理

    01_Linux基础-部署-VMware-Xshell-Xftp-内核-安迪比尔定理 博客:https://blog.csdn.net/cpen_web CentOS开源 免费 --- CentOS是 ...

  10. Can't pickle local object '_createenviron.<locals>.encodekey'报错解决

    关于selenium传参报错问题,用下面是报错信息: Traceback (most recent call last): File "D:/code/read_book/main.py&q ...