Java知識分享網 - 輕松學習從此開始!????

Java知識分享網

Java1234官方群25:java1234官方群25
Java1234官方群25:838462530
     

GIT視頻教程(結合github,碼云)免費領取

SpringBoot打造全棧在線教育平臺實戰課程

SpringBoot打造企業級進銷存

Java1234 VIP課程

領取微信掃碼登錄Java實現視頻教程

Java1234至尊VIP(特價活動)
當前位置: 主頁 > Java文檔 > 大數據云計算 >

Hadoop平臺常見故障匯總以及操作系統性能調優


分享到:
時間:2020-08-11 10:23來源:http://www.248787.tw 作者:小鋒  侵權舉報
Hadoop平臺常見故障匯總以及操作系統性能調優 PDF 下載
失效鏈接處理
Hadoop平臺常見故障匯總以及操作系統性能調優  PDF 下載


本站整理下載:
 
相關截圖:
 
主要內容:

1.如何下線一個 datanode 節點?
當一個 datanode 節點所在的服務器故障或者將要退役時,你需要在 Hadoop 中下線這個節點,下線一個 datanode 節點的過程如下。
(1)修改 hdfs-site.xml 文件
如下選項,找到 namenode 節點配置文件 /etc/hadoop/conf/hdfs-site.xml:
<property>     
<name>dfs.hosts.exclude</name>      
<value>/etc/hadoop/conf/hosts-exclude</value>  
</property>  
(2)修改 hosts-exclude 文件
執行如下操作,在 hosts-exclude 中添加需要下線的 datanode 主機名:
vi /etc/hadoop/conf/hosts-exclude  
172.16.213.188  
(3)刷新配置
在 namenode 上以 hadoop 用戶執行下面命令,刷新 hadoop 配置
[[email protected] ~]$hdfs dfsadmin -refreshNodes 
(4)檢查是否完成下線
執行如下命令,檢查下線是否完成:
[[email protected] ~]$hdfs dfsadmin -report 
也可以通過 NameNode 的 50070 端口訪問 Web 界面,查看 HDFS 狀態,需要重點關注退役的節點數,以及復制的塊數和進度。
2.如何新增一個 DataNode 節點到 Hadoop 集群?
當集群資源不夠時,需要新增幾臺機器加入集群,這是 Hadoop 運維最常見的處理方式之一。那么如何將新增的服務器加入 Hadoop 集群呢,主要有以下步驟。
(1)新節點部署 Hadoop 環境
新增節點在系統安裝完成后,要進行一系列的操作,比如系統基本優化設置、Hadoop 環境的部署和安裝、JDK 的安裝等,這些基礎工作都需要你事先完成。
(2)修改 hdfs-site.xml 文件
在 NameNode 查看 /etc/hadoop/conf/hdfs-site.xml 文件,找到如下內容:
<property> 
  <name>dfs.hosts</name> 
  <value>/etc/hadoop/conf/hosts</value> 
</property> 
(3)修改 hosts 文件
在 NameNode 修改 /etc/hadoop/conf/hosts 文件,添加新增的節點主機名,操作如下:
vi /etc/hadoop/conf/hosts 
slave0191.iivey.cloud  
最后,將配置同步到所有 DataNode 節點的機器上。
(4)使配置生效
新增節點后,要讓 NameNode 識別新的節點,則需要在 NameNode 上刷新配置,執行如下操作:
[[email protected] ~]$hdfs dfsadmin -refreshNodes  
(5)在新節點啟動 dn 服務
在 NameNode 完成配置后,還需在新增節點上啟動 DataNode 服務,執行如下操作:
[[email protected] ~]$ hdfs --daemon start datanode 
這樣,一個新的節點就增加到集群了,Hadoop 的這種機制,可以在不影響現有集群運行的狀態下,新增或者刪除任意節點,非常方便。
3.某個 datanode 節點磁盤壞掉怎么辦?
如果某個 datanode 節點的磁盤出現故障,那么該節點將不能進行寫入操作,并導致 datanode 進程退出,針對這個問題,你可以如下解決:
首先,在故障節點上查看 /etc/hadoop/conf/hdfs-site.xml 文件中對應的 dfs.datanode.data.dir 參數設置,去掉故障磁盤對應的目錄掛載點;
然后,在故障節點上查看 /etc/hadoop/conf/yarn-site.xml 文件中對應的 yarn.nodemanager.local-dirs 參數設置,去掉故障磁盤對應的目錄掛載點;
最后,重啟該節點的 DataNode 服務和 NodeManager 服務即可。
4.Hadoop 進入安全模式怎么辦?
Hadoop 剛啟動時,由于各個服務的驗證和啟動還未完成,此時 Hadoop 會進入安全模式,這時文件系統的內容不允許修改,也不允許刪除,這種狀態會一直持續,直到安全模式結束為止。
而這個安全模式主要是為了系統啟動時,能夠對各個 DataNode 數據塊的有效性進行檢查,并根據策略對部分數據塊進行必要的復制或者刪除。
如果 Hadoop 的啟動和驗證都正常,那么只需等待一會兒,Hadoop 便將自動結束安全模式。
當然,執行如下命令,也可以手動結束安全模式:
[[email protected]  conf]$ hdfs dfsadmin -safemode leave 
5.NodeManager 出現 Java heap space 錯誤怎么辦?
這種錯誤,一般是 JVM 內存不夠導致的,所以你需要修改所有 DataNode 和 NodeManager 的 JVM 內存大小,至于設置具體多大的內存,需要根據服務器的實際環境而定。
如果設置的 JVM 值已經很大,但還是出現該問題,則需要查看 NodeManager 運行日志,具體是什么原因導致的,需要具體問題具體分析,當然,最直接的方法就是重啟此節點的 NodeManager 服務。
6.DataNode 節點出現 Too many fetch-failures 錯誤的原因是什么?
出現這個問題的原因主要是,DataNode 節點間的連通性不夠通暢,或者網絡環境不太穩定。
你可以從如下方面查找原因,便基本能判斷問題所在:
檢查 DataNode 節點和 NameNode 節點之間的網絡延時;
通過 Nslookup 命令測試 DNS 解析主機名情況;
檢查 /etc/hosts 和對應的主機名信息;
檢查 NameNode 到 DataNode 節點的 SSH 單向信任情況。
7.出現 No route to host 怎么辦?
這個問題一般會在 DataNode 連接不上 NameNode,從而導致 DataNode 無法啟動的情況下發生,問題發生時可在 DataNode 日志中看到如下類似信息:
這個問題,一般是本機防火墻、本機網絡,或系統的 selinux 導致的,所以你可以關閉本機防火墻或者 selinux,然后檢查本機與 NameNode 之間的連通性,從而你便能判斷出問題癥結所在。
8.NameNode 服務器故障了怎么辦?
在 HDFS 集群中,NameNode 主機上存儲了所有元數據信息,一旦這些信息丟失,那么 HDFS 上面的所有數據都將無法使用。
所以 NameNode 服務器發生故障無法啟動時,有兩種方法可以解決:


 

------分隔線----------------------------
鋒哥公眾號


鋒哥微信


關注公眾號
【Java資料站】
回復 666
獲取 
66套java
從菜雞到大神
項目實戰課程
体育彩票开奖时间