已經有一段時間沒有更新實踐內容了,不是因為沒有在學習。而是工作上出現乙個新的挑戰,又在忙**查重,**也是大資料方向的,主要是ict方向的乙個技術(若有人感興趣,我會另開乙個帖子來詳細談這個內容)。
而且最近,把之前所有的實踐環境換了一台電腦來重新搭建。按理說會很順利,但沒想到,還是出了許多問題。一些簡單的問題就直接解決了,但仍是有兩個大的故障,一直到今天下午才全部都解決了。現總結如下,為以後也能更好的學習使用。
故障一
故障現像:
在將原來的虛擬機器整體複製到新電腦上之後,發現從虛擬機器上可以ping通外網,但從自己的主機上不能ping通虛擬機器。這樣就導致了無法從crt軟體上遠端登入虛擬機器。
解決思路:
這個現像在網路上叫單通,也即ping操作裡只有乙個方向能夠通過,一般出現這種情況,首先的判斷是防火牆的問題。而從虛機到外網可達,說明虛機上的防火牆是關閉著的。然後重點就是在主機側,通過檢視主機的網路鏈結,沒有找到跟虛擬機器的網路鏈結。故障原因可能是出在這個地方。
解決步驟:
關於這個問題,網路上能搜尋到許多貼子,解決辦法也有很多種。什麼重啟,重新配置之類都有很多。但都沒有最終解決虛擬網路鏈結的問題。
1,主要是參考了這個貼子裡16樓提到的方法,因為故障的關鍵是在虛擬網路沒有建立上。所以主要思考如何能夠重新建立這個鏈結。
3,當修復完相關的登錄檔項,檢視網路上的芳鄰的屬性頁面,發現出現了與虛擬機器相連的vmnet8的網路鏈結。然後通過屬性頁面,修改其ip為虛擬機器的閘道器ip位址,同時dns也設定為虛擬機器上的dns。
最後,再進行相關驗證,在這裡有一點需要注意,要把你主機的對外網路設定為可共享(相當於虛擬機器通過共享上外網)。至此,故障解決!
故障反思:
故障二:在搭建好hadoop集群後,namenode與datanode兩個過程不能起來,或者乙個啟動之後另乙個自動關閉
故障現像:
此故障可以算是在換電腦搭集群後最多的故障了,首先是從節點上相關程序都沒起來,後來又是程序起來後從節點上datanode節點沒起來,最後是datanode程序起來之後,主節點上namenode程序又沒起來。此故障看起來一波三折,實際上在理解好相關原理後,解決起來要比第乙個故障輕鬆一些。
解決思路:
原理為先:首先要找到對應關係,主節點上namenode主要是跟從節點上datanode相對應。
主節點上jobtracker主要是跟從節點是tasktrack相對應。
故障細分:1,從節點上程序起不來。2,datanode無法開啟 3,namenode無法開啟
解決步驟:
此故障在網上也是有很多攻略,在看完其他人的解決方法後。從理論聯絡實操分三步走來解決這個故障:
1,從節點上程序無法啟動,這個問題較為簡單。大部分是由於各虛擬機器之間的防火牆沒有關閉,而在真實的生產系統中。也表現來linux之間的防火牆問題導致的hdfs集群不通。又或者是暫時性關閉防火牆,沒有永久性關閉。具體的命令從網上都可以找到。
2,datanode無法開啟,這裡就要尋找你當初設定此集群時的六個檔案,裡邊就有設定的相關引數。主要是在core-site.xml內,在這個裡邊,我們設定了相關臨時資料夾,也相當於這個程序在開啟之後是否與主節點需要通訊。當把這裡邊建立的tmp資料夾刪除之後,從節點上的datanode就可以順利開啟了。
3,namenode無法開啟,由於從上邊的原理上來看,datanode與namenode是相互依存的關係,而它們之間要啟動肯定是同時啟運的。不會乙個開啟,乙個關閉。若是這樣,那肯定另乙個程序一會兒也會自動關閉。而控制兩個程序之間同步的有時間戳訊息。而這個訊息主要是在logs日誌裡。當把hadoop安裝目錄下的logs全刪除後。
然後,將全部程序停止,再全部重新啟動。所有程序就都起來了。至此,故障解決!!
故障反思:
此故障解決起來,主要是要把原理搞明白。不然在看網上相關攻略的時候總是會找不到方法。多去思考背後的原因,多去總結,反思!提公升自己解決問題的能力!
經過這兩個故障,更多的對linux的基礎命令熟悉了許多,同時對hdfs的相關設定也更加熟悉。在實踐過程中,也遇到過:若是故障解決不了,要不要重新搭建的問題?後來想明白了。在網咖上網的年代,那些喊一聲網管,電腦宕機了。網管一般的解決辦法就是重啟。而重新搭建就跟網管的功能是一樣的,遇到技術上的問題,不要逃避,多去思考,多去實踐,才是提公升你大資料技術實力的關鍵。
Druid 乙個用於大資料實時處理的開源分布式系統
druid是乙個用於大資料實時查詢和分析的高容錯 高效能開源分布式系統,旨在快速處理大規模的資料,並能夠實現快速查詢和分析。尤其是當發生 部署 機器故障以及其他產品系統遇到宕機等情況時,druid仍能夠保持100 正常執行。建立druid的最初意圖主要是為了解決查詢延遲問題,當時試圖使用hadoop...
Druid 乙個用於大資料實時處理的開源分布式系統
druid是乙個用於大資料實時查詢和分析的高容錯 高效能開源分布式系統,旨在快速處理大規模的資料,並能夠實現快速查詢和分析。尤其是當發生 部署 機器故障以及其他產品系統遇到宕機等情況時,druid仍能夠保持100 正常執行。建立druid的最初意圖主要是為了解決查詢延遲問題,當時試圖使用hadoop...
Druid 乙個用於大資料實時處理的開源分布式系統
druid是乙個用於大資料實時查詢和分析的高容錯 高效能開源分布式系統,旨在快速處理大規模的資料,並能夠實現快速查詢和分析。尤其是當發生 部署 機器故障以及其他產品系統遇到宕機等情況時,druid仍能夠保持100 正常執行。建立druid的最初意圖主要是為了解決查詢延遲問題,當時試圖使用hadoop...