fluentd out_forward翻譯

weixin_34148340發表於2016-12-20

td-agent server配置
官網:http://docs.fluentd.org/articles/out_forward
翻譯:
out_forward緩衝輸出外掛將事件轉發到其他fluentd節點。 此外掛支援負載平衡和自動故障轉移(又名主動 - 主動備份)。 對於複製,請使用out_copy外掛。

out_forward外掛使用“φaccrual failure detector”演算法檢測伺服器故障。 您可以自定義演算法的引數。 當伺服器故障恢復時,外掛使伺服器在幾秒鐘後自動可用。

out_forward外掛支援最多一次和至少一次語義。 預設值為最多一次。
{請勿在沒有安全連線的情況下使用此外掛進行DC或公共網際網路資料傳輸。 所有資料未加密,並且此外掛不是為高延遲網路環境設計的。 如果需要節點之間的安全連線,請考慮使用in_secure_forward。}

Example Configuration:
out_forward包含在Fluentd的核心中。 無需額外的安裝過程。
<match pattern>
@type forward
send_timeout 60s
recover_wait 10s
heartbeat_interval 1s
phi_threshold 16
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>

Parameters
型別(必需)

該值必須為forward。

<server>(至少需要一個)

目標伺服器。 每個伺服器必須具有以下資訊。

name:伺服器的名稱。 此引數用於錯誤訊息。
host(必需):伺服器的IP地址或主機名。
port:主機的埠號。 預設值為24224.請注意,TCP資料包(事件流)和UDP資料包(心跳訊息)都會傳送到此埠。
重量:負載平衡重量。 如果一個伺服器的權重為20,另一個伺服器的權重為30,則事件以2:3的比率傳送。 預設權重為60。
require_ack_response

將協議更改為至少一次。 外掛等待來自目標的in_forward外掛的ack。

ack_response_timeout

當require_ack_response為true時,使用此選項。 預設值為190.此預設值基於常用的tcp_syn_retries。

如果設定為0,這個外掛不等待ack響應。
<secondary>(可選)

所有伺服器不可用時使用的備份目標。
send_timeout

傳送事件日誌的超時時間。 預設值為60秒。

recover_wait

接受伺服器故障恢復之前的等待時間。 預設值為10秒。

心跳型別

用於心跳的傳輸協議。 預設值為“udp”,但您也可以選擇“tcp”。 設定“none”以禁用心跳。

heartbeat_interval

心跳包裝器的間隔。 預設值為1秒。

phi_failure_detector

使用“Phi應計故障檢測器”檢測伺服器故障。 預設值為true。

phi_threshold

用於檢測伺服器故障的閾值引數。 預設值為16。

hard_timeout

用於檢測伺服器故障的硬超時。 預設值等於send_timeout引數。

standby
將節點標記為Fluentd節點之間的活動 - 備用模型的備用節點。 當活動節點關閉時,備用節點將升級到活動節點。 在此之前,out_forward外掛不使用備用節點。

<match pattern>
@type forward
...

<server>
name myserver1
host 192.168.1.3
weight 60
</server>
<server> # forward doesn't use myserver2 until myserver1 goes down
name myserver2
host 192.168.1.4
weight 60
standby
</server>
...
</match>
expire_dns_cache

設定TTL以秒為單位過期DNS快取。 設定為0不使用DNS快取。 預設值為nil(表示永續性快取)。

dns_round_robin

啟用客戶端DNS輪循。 統一隨機選擇IP地址以在主機名具有伺服器IP地址時傳送資料。

Buffered Output Parameters
對於高階用途,您可以使用這些引數調整Fluentd的內部緩衝機制。

buffer_type

預設情況下,緩衝區型別是記憶體(buf_memory)。也可以選擇檔案(buf_file)緩衝區型別。如果使用檔案緩衝區型別,則需要使用buffer_path引數。

buffer_queue_limit,buffer_chunk_limit

塊佇列的長度和每個塊的大小。請參閱緩衝區外掛概述文章瞭解基本緩衝區結構。預設值分別為64和8m。字尾“k”(KB),“m”(MB)和“g”(GB)可以用於buffer_chunk_limit。

flush_interval

資料重新整理之間的間隔。預設值為60s。可以使用字尾“s”(秒),“m”(分鐘)和“h”(小時)。

flush_at_shutdown

如果設定為true,Fluentd會在關閉時等待緩衝區重新整理。預設情況下,它對於記憶體緩衝區設定為true,對於檔案緩衝區設定為false。

retry_wait,max_retry_wait

寫重試之間的初始和最大間隔。預設值為1.0秒,未設定(無限制)。間隔加倍(+/- 12.5%隨機性),每次重試,直到達到max_retry_wait。在預設配置中,最後一次重試等待大約131072秒,大約36小時。

retry_limit,disable_retry_limit

緩衝資料之前的重試次數的限制被丟棄,並且有一個選項禁用該限制(如果為true,則忽略retry_limit的值,沒有限制)。預設值為17和false(不禁用)。如果達到限制,則丟棄緩衝資料,並將重試間隔重置為其初始值(retry_wait)。

num_threads

重新整理緩衝區的執行緒數。此選項可用於將寫入並行到輸出外掛指定的輸出中。增加執行緒數可提高重新整理吞吐量,以隱藏寫入/網路延遲。預設值為1。

slow_flush_log_threshold

用於檢查塊沖洗效能的閾值。預設值為20.0秒。注意,引數型別是float,而不是時間。

如果chunk flush需要比這個閾值更長的時間,fluentd日誌警告訊息如下:

2016-12-19 12:00:00 +0000 [warn]:緩衝區重新整理花費的時間比slow_flush_log_threshold更長:elapsed_time = 15.0031226690043695 slow_flush_log_threshold = 10.0 plugin_id =“foo”
log_level選項

log_level選項允許使用者為每個外掛設定不同級別的日誌記錄。支援的日誌級別是:致命,錯誤,警告,資訊,除錯和跟蹤。

故障排除
“沒有節點可用”

請確保您可以使用不僅TCP,而且UDP與埠24224通訊。 這些命令將有助於檢查網路配置。

有關更多詳細資訊,請參閱日誌記錄文章。
$ telnet host 24224
$ nmap -p 24224 -sU主機
請注意,有一個已知的問題,VMware會偶爾丟失用於心跳的小UDP資料包。 td-agent server配置
官網:http://docs.fluentd.org/articles/out_forward
翻譯:
out_forward緩衝輸出外掛將事件轉發到其他fluentd節點。 此外掛支援負載平衡和自動故障轉移(又名主動 - 主動備份)。 對於複製,請使用out_copy外掛。

out_forward外掛使用“φaccrual failure detector”演算法檢測伺服器故障。 您可以自定義演算法的引數。 當伺服器故障恢復時,外掛使伺服器在幾秒鐘後自動可用。

out_forward外掛支援最多一次和至少一次語義。 預設值為最多一次。
{請勿在沒有安全連線的情況下使用此外掛進行DC或公共網際網路資料傳輸。 所有資料未加密,並且此外掛不是為高延遲網路環境設計的。 如果需要節點之間的安全連線,請考慮使用in_secure_forward。}

Example Configuration:
out_forward包含在Fluentd的核心中。 無需額外的安裝過程。
<match pattern>
@type forward
send_timeout 60s
recover_wait 10s
heartbeat_interval 1s
phi_threshold 16
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>

Parameters
型別(必需)

該值必須為forward。

<server>(至少需要一個)

目標伺服器。 每個伺服器必須具有以下資訊。

name:伺服器的名稱。 此引數用於錯誤訊息。
host(必需):伺服器的IP地址或主機名。
port:主機的埠號。 預設值為24224.請注意,TCP資料包(事件流)和UDP資料包(心跳訊息)都會傳送到此埠。
重量:負載平衡重量。 如果一個伺服器的權重為20,另一個伺服器的權重為30,則事件以2:3的比率傳送。 預設權重為60。
require_ack_response

將協議更改為至少一次。 外掛等待來自目標的in_forward外掛的ack。

ack_response_timeout

當require_ack_response為true時,使用此選項。 預設值為190.此預設值基於常用的tcp_syn_retries。

如果設定為0,這個外掛不等待ack響應。
<secondary>(可選)

所有伺服器不可用時使用的備份目標。
send_timeout

傳送事件日誌的超時時間。 預設值為60秒。

recover_wait

接受伺服器故障恢復之前的等待時間。 預設值為10秒。

心跳型別

用於心跳的傳輸協議。 預設值為“udp”,但您也可以選擇“tcp”。 設定“none”以禁用心跳。

heartbeat_interval

心跳包裝器的間隔。 預設值為1秒。

phi_failure_detector

使用“Phi應計故障檢測器”檢測伺服器故障。 預設值為true。

phi_threshold

用於檢測伺服器故障的閾值引數。 預設值為16。

hard_timeout

用於檢測伺服器故障的硬超時。 預設值等於send_timeout引數。

standby
將節點標記為Fluentd節點之間的活動 - 備用模型的備用節點。 當活動節點關閉時,備用節點將升級到活動節點。 在此之前,out_forward外掛不使用備用節點。

<match pattern>
@type forward
...

<server>
name myserver1
host 192.168.1.3
weight 60
</server>
<server> # forward doesn't use myserver2 until myserver1 goes down
name myserver2
host 192.168.1.4
weight 60
standby
</server>
...
</match>
expire_dns_cache

設定TTL以秒為單位過期DNS快取。 設定為0不使用DNS快取。 預設值為nil(表示永續性快取)。

dns_round_robin

啟用客戶端DNS輪循。 統一隨機選擇IP地址以在主機名具有伺服器IP地址時傳送資料。

Buffered Output Parameters
對於高階用途,您可以使用這些引數調整Fluentd的內部緩衝機制。

buffer_type

預設情況下,緩衝區型別是記憶體(buf_memory)。也可以選擇檔案(buf_file)緩衝區型別。如果使用檔案緩衝區型別,則需要使用buffer_path引數。

buffer_queue_limit,buffer_chunk_limit

塊佇列的長度和每個塊的大小。請參閱緩衝區外掛概述文章瞭解基本緩衝區結構。預設值分別為64和8m。字尾“k”(KB),“m”(MB)和“g”(GB)可以用於buffer_chunk_limit。

flush_interval

資料重新整理之間的間隔。預設值為60s。可以使用字尾“s”(秒),“m”(分鐘)和“h”(小時)。

flush_at_shutdown

如果設定為true,Fluentd會在關閉時等待緩衝區重新整理。預設情況下,它對於記憶體緩衝區設定為true,對於檔案緩衝區設定為false。

retry_wait,max_retry_wait

寫重試之間的初始和最大間隔。預設值為1.0秒,未設定(無限制)。間隔加倍(+/- 12.5%隨機性),每次重試,直到達到max_retry_wait。在預設配置中,最後一次重試等待大約131072秒,大約36小時。

retry_limit,disable_retry_limit

緩衝資料之前的重試次數的限制被丟棄,並且有一個選項禁用該限制(如果為true,則忽略retry_limit的值,沒有限制)。預設值為17和false(不禁用)。如果達到限制,則丟棄緩衝資料,並將重試間隔重置為其初始值(retry_wait)。

num_threads

重新整理緩衝區的執行緒數。此選項可用於將寫入並行到輸出外掛指定的輸出中。增加執行緒數可提高重新整理吞吐量,以隱藏寫入/網路延遲。預設值為1。

slow_flush_log_threshold

用於檢查塊沖洗效能的閾值。預設值為20.0秒。注意,引數型別是float,而不是時間。

如果chunk flush需要比這個閾值更長的時間,fluentd日誌警告訊息如下:

2016-12-19 12:00:00 +0000 [warn]:緩衝區重新整理花費的時間比slow_flush_log_threshold更長:elapsed_time = 15.0031226690043695 slow_flush_log_threshold = 10.0 plugin_id =“foo”
log_level選項

log_level選項允許使用者為每個外掛設定不同級別的日誌記錄。支援的日誌級別是:致命,錯誤,警告,資訊,除錯和跟蹤。

故障排除
“沒有節點可用”

請確保您可以使用不僅TCP,而且UDP與埠24224通訊。 這些命令將有助於檢查網路配置。

有關更多詳細資訊,請參閱日誌記錄文章。
$ telnet host 24224
$ nmap -p 24224 -sU主機
請注意,有一個已知的問題,VMware會偶爾丟失用於心跳的小UDP資料包。

相關文章