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. 21条最佳实践,全面保障 GitHub 使用安全

    GitHub 是开发人员工作流程中不可或缺的一部分.无论你去哪个企业或开发团队,GitHub 都以某种形式存在.它被超过8300万开发人员,400万个组织和托管超过2亿个存储库使用.GitHub 是世 ...

  2. fpga中的存储器

    fpga中的存储器三种:RAM,ROM,FIFO. RAM和ROM已经比较熟悉了,记录一下FIFO. FIFO:first in first out ,顺序存取,先入先出.是一种数据缓存器,用来作不同 ...

  3. Mybatis源码解读-插件

    插件允许对Mybatis的四大对象(Executor.ParameterHandler.ResultSetHandler.StatementHandler)进行拦截 问题 Mybatis插件的注册顺序 ...

  4. 反射概述和反射获取字节码Class对象的三种方式

    反射:框架设计的灵魂 框架:半成品软件.可以在框架的基础上进行软件开发,简化变法 反射:将类的各个组成部分封装为其他对象,这就是反射机制 好处: 1.可以在程序运行的过程中操作这些对象. 2.可以解耦 ...

  5. 主线程和创建多线程程序的第一种方式_创建Thread类的子类

    /** * 主线程:执行主方法的线程(main) * 单线程程序:在java程序中只有一个线程 * 执行从main方法开始,从上倒下依次执行 */ public class Demo01MainThr ...

  6. 【原创】Selenium获取请求头、响应头

    本文仅供学习交流使用,如侵立删! Selenium获取请求头.响应头 操作环境 win10 . mac Python3.9 selenium.seleniumwire selenium是没有办法直接获 ...

  7. 利用MySQL Router构建读写分离MGR集群

    GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源. 目录 1. 部署MySQL Router 2. 启动mysqlrouter服务 3. 确认读写分离效果 4. 确认只读负载 ...

  8. React报错之react component changing uncontrolled input

    正文从这开始~ 总览 当input的值被初始化为undefined,但后来又变更为一个不同的值时,会产生"A component is changing an uncontrolled in ...

  9. 一文理解Hadoop分布式存储和计算框架入门基础

    @ 目录 概述 定义 发展历史 发行版本 优势 生态项目 架构 组成模块 HDFS架构 YARN架构 部署 部署规划 前置条件 部署步骤 下载文件(三台都执行) 创建目录(三台都执行) 配置环境变量( ...

  10. Java SE 18 新增特性

    Java SE 18 新增特性 作者:Grey 原文地址:Java SE 18 新增特性 源码 源仓库: Github:java_new_features 镜像仓库: GitCode:java_new ...