您好,登錄后才能下訂單哦!
本篇內容主要講解“windows eclipse怎么遠程連接hadoop集群并提交任務運行”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“windows eclipse怎么遠程連接hadoop集群并提交任務運行”吧!
1 下載插件
hadoop-eclipse-plugin-2.5.1.jar
從網上下載對應版本的插件
2 配置插件
把插件放到..\eclipse\plugins目錄下,重啟eclipse,配置Hadoop installation directory, 如果插件安裝成功,打開Windows—Preferences后,在窗口左側會有Hadoop Map/Reduce選項,點擊此選項,在窗口右側設置Hadoop安裝路徑。(windows下只需把hadoop-2.5.1.tar.gz解壓到指定目錄)
3 配置Map/Reduce Locations
在Window-->Show View中打開Map/Reduce Locations,點擊OK,控制臺會出現:
在Map/Reduce Locations中新建一個Hadoop Location。在這個View中,右鍵-->New Hadoop Location。在彈出的對話框中你需要配置Location name,如Hadoop,還有Map/Reduce Master和DFS Master。這里面的Host、Port分別為你在mapred-site.xml、core-site.xml中配置的地址及端口。
點擊"Finish"按鈕,關閉窗口。
4 查看是否連接成功
點擊左側的DFSLocations—>master (上一步配置的location name),如能看到user,表示安裝成功
5 新建MapReduce項目并運行
1.右擊New->Map/Reduce Project
2.新建WordCount.java(在Hadoop的share目錄下找到mapreduce的案例,copy過來)
3.在hdfs用命令行創建一個test目錄(輸出目錄可以不能創建,運行MR是會自動創建),并上傳一個word.txt文件(隨便寫幾個單詞)
hadoop fs -mkdir /test/
hadoop fs -copyFromLocal word.txt /test/word.txt
4.點擊WordCount.java右擊-->Run As-->Run Configurations 設置輸入和輸出目錄路徑,如圖所示:
5.點擊WordCount.java右擊-->Run As-->Run on Hadoop
這時候會遇到很多問題:
問題一:空指針錯誤
1.下載winutils的windows版本
GitHub上,有人提供了winutils的windows的版本,項目地址是:https://github.com/srccodes/hadoop-common-2.2.0-bin ,直接下載此項目的zip包,下載后是文件名是hadoop-common-2.2.0-bin-master.zip,隨便解壓到一個目錄,不要顧慮它的版本,下載好后,把winutils.exe加入你的hadoop-x.x.x/bin下,把hadoop.dll放入從C:/wondwos/system32下面,如果沒有解決則在bin目錄下也放一份。
2.配置環境變量
增加用戶變量HADOOP_HOME,值是下載的zip包解壓的目錄,然后在系統變量path里增加$HADOOP_HOME\bin 即可。
重啟電腦,再次運行程序,正常執行。不想重啟電腦可以在程序里加上:
System.setProperty("hadoop.home.dir", "F:\\hadoop\\hadoop-2.5.1");
注:F:\\hadoop\\hadoop-2.5.1是我本機解壓的hadoop的路徑。
問題二:winutils.exe錯誤
如果第一個錯誤完全解決,第二個錯誤就不會出現,這個錯誤出現的原因或者是沒有將winutils.exe放到hadoop目錄的bin下面,或者是配置環境變量沒有生效。
問題三:權限問題
問題原因:本地用戶administrator(本機windows用戶)想要遠程操作hadoop系統,沒有權限引起的。
1、在hdfs的配置文件中,將dfs.permissions修改為False,重啟hadoop集群
<property>
<name>dfs.permissions</name>
<value>false</value>
<description>
If "true", enable permission checking in HDFS.
If "false", permission checking is turned off,
but all other behavior is unchanged.
Switching from one parameter value to the other does not change the mode,
owner or group of files or directories.
</description>
</property>
2、執行這樣的操作 hadoop fs -chmod -R 777 /user/hadoop
3、把計算機名改為hadoop用戶的用戶名
對于上面的第一個和第三個方法,我沒有嘗試,不知道是否有用,第二個方法可行。第二個方法是讓我們來修改HDFS中相應文件夾的權限,后面的/user/hadoop這個路徑為HDFS中的文件路徑,這樣修改之后就讓我們的administrator有在HDFS的相應目錄下有寫文件的權限(所有的用戶都是寫權限)
問題四:日志輸出問題
在復制了hadoop.dll后,運行WordCount,發現運行一會沒有任何信息輸出就結束了
解決:可以寫一個log4j日志文件,放在項目的src下面,查看一下日志的輸出,可能從輸出的日志中發現問題。
到此,相信大家對“windows eclipse怎么遠程連接hadoop集群并提交任務運行”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。