2016年5月3日 星期二

Hadoop 開發特戰包 (Windows 版) - 連接 UberOS 資戰機 B 型

使用特戰包,可以讓 Windows 系統作為 Hadoop Client ,並連接到其他機器,這邊我們以連接 UberOS 資戰機 B 型為範例,並且使用 HDFS ,詳細操作如下。

1. 虛擬機確認

請輸入 ifconfig ,確認 IP 位址,如下圖所示,範例的 IP 位址為 192.168.111.134 。除了 IP 以外,還請確認所有 Container 和 Hadoop 叢集是否都已啟動。


2. 特戰包網路設定

右鍵點擊特戰包中的 setnet.bat 檔案,選擇編輯,進入記事本開始設定,如下圖所示。


修改最後一行的 route 設定,把尾端的 IP 位址修改為虛擬機的 IP 位址,修改完畢後,請儲存離開。


設定完成後,請右鍵點擊,並選擇以系統管理身分執行,網路設定即大功告成。


3. 特戰包網路測試

請執行 Hadoop-client.bat,並使用 ping 指令,確認 Hadoop Client 網路是否與虛擬機互通,請輸入 ping 虛擬機的 IP 位置,網路如果互通,會如下圖所示。



確認與虛擬機網路互通後,請再確認是否與 Hadoop 叢集網路有通,這邊以 Ping NameNode 為範例,UberOS 資戰機 B 型的 NameNode 的 HostName 為 nna,請輸入 ping nna,網路如果互通,如下圖所示。


4. 連接 HDFS

首先,請先確認 HDFS 帳號目錄有哪些,請在虛擬機輸入 hdfs dfs -ls /user ,如下圖所示。以 bigred 為範例,如果沒有 bigred 目錄 ,請輸入 hdfs dfs -mkdir /user/bigred,創建該目錄。


請在特戰包中找到 hadoop-env.cmd ,路徑為 hadoop-2.7.1\etc\hadoop,右鍵點選該檔案,並選擇編輯。

開啟記事本後,請找到 set HADOOP_USER_NAME ,後面接的是連接 HDFS 使用的帳號,範例帳號為 bigred ,請修改為 bigred 並儲存離開,如下圖所示。


修改完畢後,請重新開啟 Hadoop-client.bat,並輸入 hdfs dfs -ls,連接 HDFS 成功後,會看到該帳號目錄底下的檔案,如下圖所示 ( 注意,Hello 為此範例所建的檔案 )。


5. 使用其他帳號連接 HDFS

首先,確認 HDFS 帳號目錄有哪些,請在虛擬機輸入 hdfs dfs -ls /user ,如下圖所示。以 dsa00 為範例。


選定好帳號後,請修改 hadoop-env.cmd 檔案,找到 set HADOOP_USER_NAME ,將後面的帳號修改為範例帳號 dsa00 ,修改後儲存離開,如下圖所示。


修改完畢後,請重新開啟 Hadoop-client.bat,並輸入 hdfs dfs -ls,連接 HDFS 成功後,會看到該帳號目錄底下的檔案,如下圖所示 ( 注意,Hello_dsa00 為此範例所建的檔案 )。


沒有留言:

張貼留言