個人遇到的一些Hadoop錯誤
1、org.apache.hadoop.hdfs.BlockMissingException: Could not obtain block
對應的檔案和資料塊是存在的,之所以報這個錯,是因為開啟的資料流過多沒有及時關閉
2、INFO ipc.Client: Retrying connect to server: slave1/192.168.233.131:8485. Already tried 7 time(s); retry policy is RetryUpToMaximumCountWithFixedSleep(maxRetries=10, sleepTime=1000 MILLISECONDS)
情況之一:格式化NameNode時,連線的DataNode機器防火牆沒關
1)、ping master能通,telnet master 9000不能通,說明開啟了防火牆
2)、去master主機關閉防火牆/etc/init.d/iptables stop
情況之二:執行MapReduce任務時,yarn沒有啟動
3、java.io.IOException: Bad connect ack with firstBad
1)、某個節點機器開啟防火牆,導致不能連線
2)、強制kill掉某個節點(據說)
3)、某個機器直接當掉
4、hdfs所有nameNode都是standby,zkfc 程序鎖啟動不了
解決方法:hdfs zkfc -formatZK
5、Exception in thread "main" org.apache.hadoop.security.AccessControlException: Permission denied
給相應的檔案或目錄設定可訪問許可權
6、STARTUP_MSG: host = java.net.UnknownHostException: Name or service not known
修改/etc/hosts檔案
7、DataNode無法啟動
檢視DataNode日誌
日誌報錯“ulimit -a for user root”
原因:datanamenode執行時開啟檔案數,達到系統最大限制
當前最大限制
[
1024
解決:
調整最大開啟檔案數
[[email protected] hadoop-2.4.1]# ulimit -n 65536
[[email protected] hadoop-2.4.1]# ulimit -n
65536
再次啟動hadoop
ps:ulimit命令只是臨時修改,重啟又恢復預設。
8、Refusing to manually manage HA state, since it may cause a split-brain scenario or other incorrect state. If you are very sure you know what you are doing, please specify the forcemanual flag.
是因為開啟了zkfc 自動選active的namenode 不能手動切換了 zkfc會自動選擇namenode節點作為active的
9、org.apache.hadoop.HadoopIllegalArgumentException: Could not get the namenode ID of this node. You may run zkfc on the node other than namenode.
啟動zkfc的命令使用錯誤,使用hadoop-daemon.sh而不是hadoop-daemons.sh