1、錯誤:errorg . a : block sender . send chunks()exception
解決:附加的yarn-site-xml配置
!-每個容器請求的最小內(nèi)存資源(MB)。-
Property
Nameyarn。/name
值512/值
/property
!-每個容器請求的最大內(nèi)存資源(MB)。-
Property
Nameyarn。/name
值512/值
/property
Property
Nameyarn。/name
值512/值
/property
!-每個容器請求的最大內(nèi)存資源(MB)。-
Property
Nameyarn。/name
值2048/值
/property
!-容器虛擬內(nèi)存和物理內(nèi)存之間的比率。-
Property
nameyarn . node manager . vmem-pmem-ratio/name
值4/值
/property
2、錯誤:Java . io . IO Exception : incompatible Cluster IDS在重新格式化NameNode后經(jīng)常發(fā)生。
原因:每個NameNode fotmat都會重新生成namenodeId。數(shù)據(jù)目錄包含最后一個format的id。namenodeformat將清除NameNode下的數(shù)據(jù),但不會清除datanode下的數(shù)據(jù),因此啟動時將失敗
解決方法:停止群集并刪除問題節(jié)點的數(shù)據(jù)目錄下的所有內(nèi)容。文件中配置的d目錄。重新格式化Namenode。
另一種更簡單的方法是停止群集,然后將datanode節(jié)點目錄/dfs/data/current/VERSION中的更改與NameNode相匹配。
3,錯誤:org.a request to start container
問題原因:namenode、datanode時間同步問題
解決方法:多個datanode與NameNode執(zhí)行時間同步,在每臺服務器上運行:ntpdate,確認時間同步成功。
建議在每臺服務器的/etc/crontab中添加以下行:
0 2 * * *根ntpdate hwclock-w
4、錯誤:Java . net . sockettimeoutexception : 480000 millis time out while waiting for channel to be ready for write
原因:I/o超時
解決方法:
修改Hadoop配置文件以增加d和d屬性的設置。
Property
Named/name '
值6000000/值
/property
Property
Named/name
值6000000/值
/property
5、錯誤:datax ceiver error processing write _ block operation
原因:文件活動的超租期實際上是在數(shù)據(jù)流活動期間刪除了文件。
解決方法:
修改(對于2.x版,1.x版屬性的名稱必須為:d):
Property
命名;/name
值8192/值
/property
您可以復制到每個datanode節(jié)點,然后重新啟動datanode
6、錯誤:Java . io . io exception : failed to replace a baddata node on the existin
g pipeline due to no more good datanodes being availableto try.&原因:無法寫入;我的環(huán)境中有3個datanode,備份數(shù)量設置的是3。在寫操作時,它會在pipeline中寫3個機器。默認re是DEFAULT,如果系統(tǒng)中的datanode大于等于3,它會找另外一個datanode來拷貝。目前機器只有3臺,因此只要一臺datanode出問題,就一直無法寫入成功。
解決辦法:修改文件,添加或者修改如下兩項:
<property>
<name>d;/name>
<value>true</value>
</property>:
<property>
<name>dfs.client.block.write.re</name>
<value>NEVER</value>
</property>
對于d,客戶端在寫失敗的時候,是否使用更換策略,默認是true沒有問題。
對于,dfs.client.block.write.re,default在3個或以上備份的時候,是會嘗試更換結(jié)點嘗試寫入datanode。而在兩個備份的時候,不更換datanode,直接開始寫。對于3個datanode的集群,只要一個節(jié)點沒響應寫入就會出問題,所以可以關掉。
7、錯誤:org.a$DiskErrorException:Could not find any valid local directory for & a&
原因:兩種可能,或者data目錄存儲空間不足。
解決辦法:看了一下我的dfs狀態(tài),data使用率不到40%,所以推測是空間不足,導致無法創(chuàng)建Jog臨時文件。查看core-發(fā)現(xiàn)沒有配置,因此使用的是默認的/tmp目錄,在這目錄一旦服務器重啟數(shù)據(jù)就會丟失,因此需要修改。添加:
<property>
<name></dir>
<value>/data/tmp</value>
</property>
然后重新格式化:hadoopnamenode -format重啟。
8、錯誤:NameNode metrics systemshutdown complete
原因:namenode元數(shù)據(jù)被破壞,需要修復
解決:恢復一下namenode
hadoop namenode -recover
一路選擇c,一般就OK了
9、Hadoop中出現(xiàn)內(nèi)存錯誤(out of Memory Error in Hadoop)
解決: 編輯conf / mapred-文件并添加屬性來分配更多內(nèi)存:
<property>
<name>ma;/name>
<value>-Xmx1024m</value>
</property>
10、datanode連接報錯
ERROR org.a: BlockSender.sendChunks() exception: java.io.IOException: 連接被對方重設
ERROR org.a: BlockSender.sendChunks() exception: java.io.IOException: 斷開的管道
解決:
查看,發(fā)現(xiàn)語言配置的是中文
export LANG=z
export LC_ALL=z
可以改成英文,解決
export LANG=en_US.UTF-8
export LC_ALL=en_US.UTF-8
11、報錯:其中一個為datanode無法啟動,ERROR org.a
問題描述:namenode、datanode都有進程,但在WebUI界面(master:50070)其中一個datanode為dead。
ERROR org.a: Initialization failed for Block pool BP-837022277-172.17.30.3-47 (Datanode Uuid null) service to master-30018-30019-30020-qwxg6 Datanode denied communication with namenode because hostname cannot be resolved (ip=172.17.5.0, hostname=172.17.5.0): DatanodeRegistration, datanodeUuid=54cf20e1-9346-43d1-865c-fdd5230fae24, infoPort=50075, ipcPort=50020, storageInfo=lv=-56;cid=CID-1a4de553-71e9-469d-8b48-b255315e0f4e;nsid=1722675192;c=0)
解決方案1、檢查/etc/hosts是否配置成功,有錯則改正然后重啟集群
解決方案2、在master的文件里加入:
<property>
<name>d;/name>
<value>false</value>
</property>
如果您喜歡本文,就請動動您的發(fā)財手為本文點贊評論轉(zhuǎn)發(fā),讓我們一起學習更多運維相關知識,最后請記得關注我。
1.《【cfoutofmemory怎么解決】如何在Hadoop群集上報告錯誤》援引自互聯(lián)網(wǎng),旨在傳遞更多網(wǎng)絡信息知識,僅代表作者本人觀點,與本網(wǎng)站無關,侵刪請聯(lián)系頁腳下方聯(lián)系方式。
2.《【cfoutofmemory怎么解決】如何在Hadoop群集上報告錯誤》僅供讀者參考,本網(wǎng)站未對該內(nèi)容進行證實,對其原創(chuàng)性、真實性、完整性、及時性不作任何保證。
3.文章轉(zhuǎn)載時請保留本站內(nèi)容來源地址,http://f99ss.com/gl/2594529.html