0
私は大量のNameNodeに20005の編集ログファイルを持っていますが、fsimageにそれらをマージする方法はありますか?私はNameNodeを再起動しましたが、それは役に立ちませんでした。hdfsのログファイルをどのようにマージできますか?
私は大量のNameNodeに20005の編集ログファイルを持っていますが、fsimageにそれらをマージする方法はありますか?私はNameNodeを再起動しましたが、それは役に立ちませんでした。hdfsのログファイルをどのようにマージできますか?
NNにHAを有効にしていない場合は、これを行うセカンダリネームノードが必要です。
HAを有効にしている場合は、スタンバイNNがこれを行います。
これがある場合は、ログを確認して何が起こり、なぜ失敗するのかを確認してください。 RAMが不足している可能性があり、これらの役割のヒープサイズを大きくする必要がありますが、その前にログで確認する必要があります。 あなたは、その後、これを修正し、それが自動的に行われます、チェックポイントのタイミングに影響を与え、関連するコンフィグNN横にそれらのいずれかを持っていない場合:
dfs.namenode.checkpoint.period (default: 3600s)
dfs.namenode.checkpoint.txns (default: 1 million txn)
をあなたにも、次のコマンドを実行することができますが、これは一時的なものです修正:
hdfs dfsadmin -safemode enter
hdfs dfsadmin -rollEdits
hdfs dfsadmin -saveNamespace
hdfs dfsadmin -safemode leave
注:セーフモモードに入った後、HDFSはセーフモードを離れるまで読み取り専用になります。