hadoop系列之三:Hadoop2.x安裝與實驗
如果參考我的是校友,同選大資料分析的課,不要直接複製,這是我的報告。我只能保證我這麼做能做出來,其他報錯自行百度
1. 下載並解壓Hadoop2.x
1) 在本地下載壓縮包,用rz上傳。
2) 解壓:sudo tar xfvz Hadoop-2.10.1.tar.gz
2. 配置偽分散式Hadoop服務
1) 配置etc/hadoop/core-site.xml
2) 配置etc/hadoop/hdfs-site.xml
最後,建立我們配置檔案裡的目錄。
3) 配置JAVA_HOME
進入檔案hadoop-env.sh
加入路徑。
驗證結果。
遇到的問題如下圖:
可能是由於安裝openjdk時的路徑和各種教程不太一樣。這裡在加入路徑時驗證出現問題。觀察報錯資訊,是這個檔案不存在,自己cd一下確實。這裡的路徑是我用echo$JAVA_HOME直接複製的。看來不能直接用。
然後根據前面寫的查詢java路徑老老實實查完再放到檔案裡。還是報錯,發現路徑後面重複了兩次/bin/java。Ok,那我配置路徑時把這兩個刪掉,然後,就成功了!
4) 配置免密登入。
過程和我配置本機免密登入虛擬機器一樣
可以看到authorized_keys多了一個wxy@vitrual_machine。(上面是我的本機使用者名稱starmon)
驗證成功。
保險起見,再來一波許可權。
小插曲,這裡已經給自己的虛擬機器換了名字。
3. 啟動並驗證Hadoop服務
1) 格式化資料節點
遇到的問題:
第一次遇到問題,是hdfs-site的格式問題,檢查該檔案解決。
第二次遇到不能建立節點的問題:
不能建立目錄。檢視許可權,都在root,而現在我的使用者是wxy。
修改賦予許可權。之後就成功了。
2) 啟動Hadoop服務
3) 訪問hadoop埠
4) 關閉Hadoop服務
如果啟動時遇到類似的反饋:
就用sbin/stop-dfs.sh先停止再重啟。
如果依然無法啟動,刪除/tmp,重新賦予許可權,重新格式化再來一遍。
4. HDFS操作
1) 配置變數
2) 檢視hdfs根資料夾結構
這裡的報錯主要參考了該文:Hadoop: 主節點9000埠拒絕訪問Call From hadoop3/192.168.91.132 to hadoop1:9000 failed on connection exception
出現了問題後,先檢查防火牆,之前已經設定禁止開機啟動了,發現其實沒什麼問題。然後檢查core-site.xml檔案,因為我在中途改了一下主機名,推測是這個原因,修改原來的localhost為我的主機。
嗯,還是報錯,好吧。查詢是不建議用這種下劃線命名,直接編輯為ip好了。但之後還是乖乖把主機名改成了短線“-”。
之後再嘗試,檢視,這時候資料夾裡什麼都沒有
3) 建立資料夾/data 或 /tmp/data
4) 用-ls檢視建立結果
5) 將本地檔案/data/smalllog.txt上傳至hadoop系統下/data/smalllog.txt
6) 用-ls檢視剛剛建立的hadoop檔案
本地檔案在/home/wxy/myfile資料夾下。
上傳檔案用put,與copyFromLocal一樣。
7) 檢視該檔案的最後1KB內容
8) 重新命名該檔案為/data/oldlog.txt
用mv,檔案到資料夾是移動,檔案到檔案是重新命名。
9) 將該檔案下載到本地/data/oldlog.txt
用get,與之相對應的就是copyToLocal
10) 刪除hadoop檔案/data/oldlog.txt
使用rm刪除,加-skipTrash跳過回收站刪除檔案
11) 刪除hadoop資料夾/data
刪除資料夾類似,這裡是建議我用rm -r哈哈。
12) 刪除本地檔案/data/oldlog.txt