14. Fluentd输出插件:out_forward用法详解
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)设置所有接收节点故障时的备份路径
- 常见问题
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用法详解的更多相关文章
- golang格式化输出-fmt包用法详解
golang格式化输出-fmt包用法详解 注意:我在这里给出golang查询关于包的使用的地址:https://godoc.org 声明: 此片文章并非原创,大多数内容都是来自:https:// ...
- Vue插件编写、用法详解(附demo)
Vue插件编写.用法详解(附demo) 1.概述 简单来说,插件就是指对Vue的功能的增强或补充. 比如说,让你在每个单页面的组件里,都可以调用某个方法,或者共享使用某个变量,或者在某个方法之前执行一 ...
- ZT --- extern "C"用法详解 2010-08-21 19:14:12
extern "C"用法详解 2010-08-21 19:14:12 分类: C/C++ 1.前言: 时常在cpp的代码之中看到这样的代码: #ifdef __cplusplus ...
- Vue1.0用法详解
Vue.js 不支持 IE8 及其以下版本,因为 Vue.js 使用了 IE8 不能实现的 ECMAScript 5 特性. 开发环境部署 可参考使用 vue+webpack. 基本用法 1 2 3 ...
- C#中string.format用法详解
C#中string.format用法详解 本文实例总结了C#中string.format用法.分享给大家供大家参考.具体分析如下: String.Format 方法的几种定义: String.Form ...
- c++中vector的用法详解
c++中vector的用法详解 vector(向量): C++中的一种数据结构,确切的说是一个类.它相当于一个动态的数组,当程序员无法知道自己需要的数组的规模多大时,用其来解决问题可以达到最大节约空间 ...
- 【转】linux expr命令参数及用法详解
在抓包过程中,查看某个设定时间内,数据上下行多少,用命令expr 计算! --------------------------------------------------------------- ...
- linux curl用法详解
linux curl用法详解 curl的应用方式,一是可以直接通过命令行工具,另一种是利用libcurl库做上层的开发.本篇主要总结一下命令行工具的http相关的应用, 尤其是http下载方面 ...
- SQL中CONVERT()函数用法详解
SQL中CONVERT函数格式: CONVERT(data_type,expression[,style]) 参数说明: expression 是任何有效的 Microsoft® SQL Server ...
随机推荐
- ACWing95. 费解的开关
题解 这道题目有三个状态条件值得考虑: 每一个开关被按0次或者1次才有意义,如果超过1次,那么等同于按0或1次. 最终的结果与按的顺序无关 因为2,所以可以人为地规定比较合理的顺序. 现在以每一行为顺 ...
- goalng-sync/atomic原子操作
目录 1.go已经提供了锁,为什么还需要atomic原子操作? 2.atomic原子操作为什么比mutex快? 3.CAS 4.互斥锁与原子操作区别 5.原子操作方法 5.1 atomic.AddIn ...
- 【docker专栏8】使用IDEA远程管理docker镜像及容器服务
使用命令行的方式管理服务器镜像及容器是运维人员最常用的方式,但是有的时候我们不得不远程操作docker或者是面向对docker并不熟悉的技术人员提供能力(配置管理员.测试人员),这种情况下图形界面就有 ...
- (WebFlux)002、如何打印日志与链路ID
一.背景 最近在持续改造项目,想通过日志查看用户所有的接口链路日志.在原来基于SpirngMVC的时候,那是比较好处理的,通过ThreadLocal,放入TraceId,就可以把一个TraceId传到 ...
- transform: scale() 实现鼠标悬浮在元素之上出现和消失
前言 transform属性允许你旋转,缩放,倾斜或平移给定元素.其中scale(x, y)就是实现元素缩放的属性值. scale(x, y)的 x 乘以原本元素的 x:y 乘以原本的元素 y,就可以 ...
- Word 文字多选方式有哪些?
Ctrl + 鼠标左键:不连续地选择文字. Shift + 鼠标左键:连续地选择文字. Alt + 鼠标左键:自由选择文字.
- Lua环境搭建编译[Lua5.2+VS2010]
这里是我编译的和一个测试Demo:http://download.csdn.net/detail/allh45601/6783653 大家如果看我下边说的不是很清楚,可以下载这个具体工程: 群:103 ...
- JS的简介
JS式JavaScript的简称,它是一门弱语言,它可以实现让网页动起来 JS的构成 核心(ECMAScript) 文档对象模型(DOM)-- Document Object Module 浏览器对 ...
- Spring源码环境搭建
Spring源码在github上,地址是https://github.com/spring-projects/spring-framework/,选择5.3.x版本,直接从github上克隆项目网速很 ...
- 【LOJ#3197】【eJOI2019】T形覆盖 - (图论、简单推导)
题面 题解 (题目中说的四种摆放方式实际上是分别旋转0°,90°,180°,270°后的图形) 题目中关于摆放方式的描述听起来很臭,我们把它转换一下,每个拼版先覆盖"上下左右中"五 ...