Hadoop偽分布模式配置


1. 偽分布配置

實驗條件:1台ubuntu服務器,jdk版本1.8.X,Hadoop 版本1.2.X

1.1 ssh localohost

如果不輸入口令就無法用ssh登陸localhost,即ssh免密登陸,則執行下面的命令,產生公私鑰對,
將私鑰放入authorized_keys

$ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa 
$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

坑1 ssh端口不對

ssh默認端口是22,但是服務器往往基於安全考慮會修改默認端口,這里要注意,如果修改了ssh端口,
則需要修改默認端口,或者再加一個ssh端口
ps:跟另一個服務器管理員互相該端口和配置文件

1.2 配置/cong/core-site.xml

  1. 設置hdfs的tmp目錄,hadoop會默認把data和name目錄放在tmp中

  2. hdfs默認端口號地址,臨時文件存放目錄信息

<configuration>
        <property>
                <name>fs.default.name</name>
                <value>hdfs://localhost:9000</value>
        </property>
        <property>
                <name>hadoop.tmp.dir</name>  
                <value>/usr/local/hadoop/tmp</value>
        </property>
</configuration>

1.3 配置/cong/hdfs-site.xml

設置hdfs的節點個數和信息,包括hdfs的節點路徑、數據路徑!

<configuration>
        <property>
                <name>dfs.replication</name>
                <value>1</value>
        </property>

</configuration>

坑2 hdfs-site.xml中手動設置namenode和datanode的路徑和文件

錯誤示范
在這里插入圖片描述
如此設置后我碰到的錯誤是:hadoop namenode -format 無效,報錯NameNode is not formatted.
啟動hdfs后,namenode無法啟動,因為我這個版本目前無需手動設置namenode和datanode路徑。

1.4 /cong/mapred-site.xml

設置jobtracker的地址和端口號!

<configuration>
        <property>
                <name>mapred.job.tracker</name>
                <value>localhost:9001</value>
        </property>
</configuration>

2. 驗證偽分布式開發環境是否搭建成功

2.1 格式化hadoop的namenode

$HADOOP_HOME/bin/hadoop namenode -format

2.2 啟動服務

$HADOOP_HOME//bin/start-all.sh

2.3 用 jps 命令看啟動情況

在這里插入圖片描述

2.3.1 如果NameNode和DataNode進程未啟動

到hadoop的logs目錄查看日志,查看未啟動進程的相應日志,如hadoop-username-namenode-XXXXXXX.log,根據最近的未啟動報錯查找原因。

  1. 如果報錯是NameNode is not formatted.,則嘗試查看start-all.sh前是否執行了format ,如果沒有,則先結束服務(見2.4),然后刪除且重建$HADOOP_HOME/tmp,接着執行format,再啟動服務(見2.2)試試。如果執行了format,則進入下一步。
  2. 如果出現1中的錯誤,且執行過format,則嘗試查看cong文件中的hdfs-site.xml的配置是否合適,參考1.3中的坑2
  3. DataNode等的日志報錯也是同樣的處理思路。

2.4 結束服務

$HADOOP_HOME//bin/stop-all.sh 

參考

帶來幫助,同時也引入坑的參考:
https://hadoop.apache.org/docs/r1.0.4/cn/quickstart.html
https://blog.csdn.net/henni_719/article/details/77732815
https://www.cnblogs.com/hopelee/p/7049819.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM