logstash的webhdfs使用問題

2018年4月25日 星期三

10:11

現(xiàn)象

Logstash使用webhdfs插件桑滩,配置完成后無法正常輸出到HDFS中称簿,日志中報錯:

[2018-04-25T00:00:26,915][WARN ][logstash.outputs.webhdfs ] Failed to flush outgoing items {:outgoing_count=>1, :exception=>"WebHDFS::ServerError", :backtrace=>["/opt/logstash-6.2.4/vendor/bundle/jruby/2.3.0/gems/webhdfs-0.8.0/lib/webhdfs/client_v1.rb:351:in `request'", "/opt/logstash-6.2.4/vendor/bundle/jruby/2.3.0/gems/webhdfs-0.8.0/lib/webhdfs/client_v1.rb:270:in `operate_requests'", "/opt/logstash-6.2.4/vendor/bundle/jruby/2.3.0/gems/webhdfs-0.8.0/lib/webhdfs/client_v1.rb:73:in `create'", "/opt/logstash/vendor/bundle/jruby/2.3.0/gems/logstash-output-webhdfs-3.0.6/lib/logstash/outputs/webhdfs.rb:228:in `write_data'", "/opt/logstash/vendor/bundle/jruby/2.3.0/gems/logstash-output-webhdfs-3.0.6/lib/logstash/outputs/webhdfs.rb:211:in `block in flush'", "org/jruby/RubyHash.java:1343:in `each'", "/opt/logstash/vendor/bundle/jruby/2.3.0/gems/logstash-output-webhdfs-3.0.6/lib/logstash/outputs/webhdfs.rb:199:in `flush'", "/opt/logstash/vendor/bundle/jruby/2.3.0/gems/stud-0.0.23/lib/stud/buffer.rb:219:in `block in buffer_flush'", "org/jruby/RubyHash.java:1343:in `each'", "/opt/logstash/vendor/bundle/jruby/2.3.0/gems/stud-0.0.23/lib/stud/buffer.rb:216:in `buffer_flush'", "/opt/logstash/vendor/bundle/jruby/2.3.0/gems/stud-0.0.23/lib/stud/buffer.rb:159:in `buffer_receive'", "/opt/logstash/vendor/bundle/jruby/2.3.0/gems/logstash-output-webhdfs-3.0.6/lib/logstash/outputs/webhdfs.rb:182:in `receive'", "/opt/logstash/logstash-core/lib/logstash/outputs/base.rb:92:in `block in multi_receive'", "org/jruby/RubyArray.java:1734:in `each'", "/opt/logstash/logstash-core/lib/logstash/outputs/base.rb:92:in `multi_receive'", "/opt/logstash/logstash-core/lib/logstash/output_delegator_strategies/legacy.rb:22:in `multi_receive'", "/opt/logstash/logstash-core/lib/logstash/output_delegator.rb:49:in `multi_receive'", "/opt/logstash/logstash-core/lib/logstash/pipeline.rb:477:in `block in output_batch'", "org/jruby/RubyHash.java:1343:in `each'", "/opt/logstash/logstash-core/lib/logstash/pipeline.rb:476:in `output_batch'", "/opt/logstash/logstash-core/lib/logstash/pipeline.rb:428:in `worker_loop'", "/opt/logstash/logstash-core/lib/logstash/pipeline.rb:386:in `block in start_workers'"]}

分析

檢查配置

既然報這個錯誤随静,就確定是訪問WebHDFS過程中出錯茅特,那么首先檢查下配置哆料。

配置內(nèi)容如下:

input {
  beats {
        port => "5044"
    }
}
output {
  stdout{
    codec => rubydebug
  }
  webhdfs {
    host => "x.x.x.x"                
    port => 9870                     
    path => "/weblog/iis/%{@source_host}/%{+YYYY-MM-dd}/iislog-%{@source_host}-%{YYYYMMddHH}.log"  
    user => "root"             
    retry_times => 100        
  }
}

WebHDFS: ServerError

因為沒用過Logstash,但是直到很簡單易用策添。所以直接搜關(guān)鍵字材部,查找到了logstash-output-webhdfs Failed to flush outgoing items這篇文章,提到:

It seems you should set user option of logstash-output-webhdfs to the hdfs supergroup user,which is the user you use to start hdfs.For example ,if you use root to run start-dfs.sh bash,then the user option shuold be root.
In addition, you should edit /etc/hosts ,add the hdfs cluster node route list .

可以確認兩點常見問題:

  1. HDFS訪問賬戶問題唯竹;
  2. HDFS的主機解析問題乐导;

解決

HDFS訪問賬戶問題

這個很容易確認,HDFS上使用的賬戶就是root浸颓。

HDFS主機解析問題

查看/etc/hosts內(nèi)容物臂,發(fā)現(xiàn)只有namenode做了配置。

簡單思考了下产上,Logstash默認可能使用主機名進行解析的棵磷,而且從namenode獲取到的也應(yīng)該是主機名。因此Answer中才說要加入節(jié)點路由列表晋涣。

增加hosts

直接將所有Hadoop的節(jié)點/IP映射放入/etc/hosts中仪媒。

修改配置

然后修改logstash配置。

input {
  beats {
        port => "5044"
    }
}
output {
  stdout{
    codec => rubydebug
  }
  webhdfs {
    host => "namenode"                
    port => 9870                     
    path => "/weblog/iis/%{+YYYY-MM-dd}/%{@source_host}/iislog-%{+HH}.log"
    user => "root"             
    retry_times => 100        
  }
}

確認結(jié)果

查看HDFS中谢鹊,如果有建立對應(yīng)目錄和文件就OK了算吩。

遺留問題

實際上還存在一些問題:

  1. 按照官網(wǎng)示例,年月日前面有個dt=不明白什么作用撇贺。
  2. %{@source_host}無法解析赌莺。
  3. {+HH}不是按照UTC+0800來建立的冰抢。

參考

  1. logstash-output-webhdfs Failed to flush outgoing items
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末松嘶,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子挎扰,更是在濱河造成了極大的恐慌翠订,老刑警劉巖巢音,帶你破解...
    沈念sama閱讀 219,539評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件震叙,死亡現(xiàn)場離奇詭異荐健,居然都是意外死亡抽高,警方通過查閱死者的電腦和手機哭懈,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,594評論 3 396
  • 文/潘曉璐 我一進店門拢驾,熙熙樓的掌柜王于貴愁眉苦臉地迎上來匣摘,“玉大人蕊梧,你說我怎么就攤上這事压固」ぃ” “怎么了秃诵?”我有些...
    開封第一講書人閱讀 165,871評論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長塞琼。 經(jīng)常有香客問我菠净,道長,這世上最難降的妖魔是什么彪杉? 我笑而不...
    開封第一講書人閱讀 58,963評論 1 295
  • 正文 為了忘掉前任毅往,我火速辦了婚禮,結(jié)果婚禮上派近,老公的妹妹穿的比我還像新娘攀唯。我一直安慰自己,他們只是感情好渴丸,可當(dāng)我...
    茶點故事閱讀 67,984評論 6 393
  • 文/花漫 我一把揭開白布革答。 她就那樣靜靜地躺著,像睡著了一般曙强。 火紅的嫁衣襯著肌膚如雪残拐。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,763評論 1 307
  • 那天碟嘴,我揣著相機與錄音溪食,去河邊找鬼。 笑死娜扇,一個胖子當(dāng)著我的面吹牛错沃,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播雀瓢,決...
    沈念sama閱讀 40,468評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼枢析,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了刃麸?” 一聲冷哼從身側(cè)響起醒叁,我...
    開封第一講書人閱讀 39,357評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后把沼,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體啊易,經(jīng)...
    沈念sama閱讀 45,850評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,002評論 3 338
  • 正文 我和宋清朗相戀三年饮睬,在試婚紗的時候發(fā)現(xiàn)自己被綠了租谈。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,144評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡捆愁,死狀恐怖割去,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情昼丑,我是刑警寧澤劫拗,帶...
    沈念sama閱讀 35,823評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站矾克,受9級特大地震影響页慷,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜胁附,卻給世界環(huán)境...
    茶點故事閱讀 41,483評論 3 331
  • 文/蒙蒙 一酒繁、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧控妻,春花似錦州袒、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,026評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至菇存,卻和暖如春夸研,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背依鸥。 一陣腳步聲響...
    開封第一講書人閱讀 33,150評論 1 272
  • 我被黑心中介騙來泰國打工亥至, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人贱迟。 一個月前我還...
    沈念sama閱讀 48,415評論 3 373
  • 正文 我出身青樓姐扮,卻偏偏與公主長得像,于是被迫代替她去往敵國和親衣吠。 傳聞我的和親對象是個殘疾皇子茶敏,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,092評論 2 355

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn)缚俏,斷路器惊搏,智...
    卡卡羅2017閱讀 134,672評論 18 139
  • 搜索引擎介紹Elasticsearch的使用Logstash的使用Filebeat的使用Kibana的使用Elas...
    哈嘍別樣閱讀 927評論 1 4
  • 一贮乳、ELK初步接觸 1.1為什么要用ELK 日志主要包括系統(tǒng)日志、應(yīng)用程序日志和安全日志胀屿。系統(tǒng)運維和開發(fā)人員可以通...
    CobubRazor閱讀 7,823評論 1 26
  • 入門指南 1. 簡介 Quickstart會讓你啟動和運行一個單節(jié)點單機HBase。 2. 快速啟動 – 單點HB...
    和心數(shù)據(jù)閱讀 4,577評論 1 41
  • 成績: 上半年投資收益25.43%包雀; 八年半累計收益1815%宿崭; 復(fù)合增長率38%(把上半年收益當(dāng)成全年業(yè)績進行計...
    刺猬偷腥閱讀 117評論 0 0