Get corrupt file blocks returned error: Operation category READ is not supported in state standby

hadoop
この記事は約2分で読めます。

Cloudera ManagerでNameNode HAしてから,以下のWARNメッセージがStandbyNameNodeのログに定期的に出力される。結構な頻度で書き込まれ,また診断のログの方にも上がってくるので何とか抑制したい。

このJIRAのことだろうか。。

[HDFS-7452] Can we skip getCorruptFiles() call for standby NameNode..? – ASF JIRA

ソースを追っていくと,このgetCorruptFiles()の先のStandbyState#checkOperationStandbyExceptionからのようだった。どのサービスが影響しているのかと,手元の仮想環境で試してところ,どうも以下の状況でログにこのメッセージが吐かれているもよう(他にもあるかもしれない。。)

  • SNNのcloudera-scm-agentがrunning
  • SNNのWebUIへのアクセス
  • Cloudera Management Service,Event Server

そこそこログを占める割合も大きく,診断>イベントでも頻繁に上がってくるため,filterで対応することにした。以下をNameNode ログの高度な設定スニペット(安全バルブ)に設定して再起動する。

他に,dfs.ha.allow.stale.readsというプロパティをtrueにすることでもできそうだったが,ソースのコメントを見て触らないことにした。。

コメント

タイトルとURLをコピーしました