hadoop的安装与配置(伪分布式模式安装)
最近偶然在研究hadoop看完網絡上的配置文章居然在linux下安裝成功的hadoop就把別人的文章進行說明一下,提供給需要的讀者。
hadoop 的安裝分為本地模式、偽分布模式、集群模式。本地模式是運行在本地,只負
責存儲,沒有計算功能,不講述。偽分布模式是在一臺機器上模擬分布式部署,方便學
習和調試。集群模式是在多個機器上配置 hadoop,是真正的“分布式”。本文章講述偽分布模式。解壓縮hadoop
使用winscp把軟件包傳輸至linux下的usr/local目錄下#tar ?-xzvf hadoop-1.0.4.tar.gz
#mv? hadoop-1.0.4 ?hadoop
設置環境變量HADOOP HOME,修改文件“/etc/profile”,如圖:
請讀者與 jdk 設置時配置文件對照。這里我們設置了一個別名 cdha,可以快速轉到
hadoop 的目錄。
修改環境變量后,記得執行 source 命令哦。(source ?/etc/profile 是文件立即生效)
我們關注 bin 目錄和 conf 目錄。
修改配置文件
hadoop 配 置 文 件 默 認 是 本 地 模 式 , 我 們 修 改 四 個 配 置 文 件 , 這 些 文 件 都 位 于
$HADOOP_HOME/conf 目錄下。
第一個是hadoop環境變量腳本文件hadoop-env.sh 修改第9行代碼為 export ?JAVA_HOME=/usr/local/jdk保存并關閉。這里設置的是 JAVA_HOME,注意去掉前面的“#”。
第二個是hadoop的核心配置文件core-site.xml
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoop/tmp</value>
<description>hadoop 的運行臨時文件的主目錄</description>
</property>
<property>
<name>fs.default.name</name>
<value>hdfs://book0:9000</value>
<description>HDFS 的訪問路徑</description>
</property></configuration>
第三個是hdfs配置文件hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
<description>存儲副本數</description>
</property>
</configuration>
第四個是MapReduce配置文件mapred-site.xml
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>book0:9001</value>
<description>JobTracker 的訪問路徑</description>
</property>
</configuration>
格式化文件系統
hdfs 是 文 件 系 統 , 所 以 在 第 一 次 使 用 之 前 需 要 進 行 格 式 化 。 執 行 命 令
$HADOOP_HOME/bin/hadoop ?namenode ?–format
注意:只在第一次啟動的時候格式化,不要每次啟動都格式化。理解為我們新買了塊
移動硬盤,使用之前總要格式化硬盤。
如果真的有必要再次格式化,請先把“$HADOOP_HOME/tmp”目錄下的文件全部刪除。
讀者可以自己觀察目錄”$HADOOP_HOME/tmp”在格式化前后的變化情況。
格式化操作很少有出現失敗的情況。如果真出現了,請檢查配置是否正確
hadoop的啟動
格式化完成后,開始啟動 hadoop 程序。
啟動 hadoop 的命令腳本都在$HADOOP_HOME/bin/下,下面的所有命令都不再帶有完整路
徑名稱。
這里講述 hadoop 啟動的三種方式:
第一種,一次性全部啟動:
執行 start-all.sh 啟動 hadoop,觀察控制臺的輸出,見圖 3-5,可以看到正在啟動進程,分
別是 namenode、datanode、secondarynamenode、jobtracker、tasktracker,一共 5 個,待執行
完畢后,并不意味著這 5 個進程成功啟動,上面僅僅表示系統正在啟動進程而已。
我們使用 jdk 的命令 jps 查看進程是否已經正確啟動。執行以下 jps,如果看到了這 5 個
進程,見圖 3-6,說明 hadoop 真的啟動成功了。如果缺少一個或者多個,那就進入到“Hadoop
的常見啟動錯誤”章節尋找原因了。
關閉 hadoop 的命令是stop-all.sh。
上面的命令是最簡單的,可以一次性把所有節點都啟動、關閉。除此之外,還有其他命
令,是分別啟動的。
第二種,分別啟動 HDFS和 MapReduce:
執行命令 start-dfs.sh,是單獨啟動 hdfs,見圖 3-7。執行完該命令后,通過 jps 能夠
看到 NameNode、DataNode、SecondaryNameNode 三個進程啟動了,該命令適合于只執行 hdfs
存儲不使用 MapReduce 做計算的場景。關閉的命令就是 stop-dfs.sh 了。
執行命令 start-mapred.sh,可以單獨啟動 MapReduce 的兩個進程。關閉的命令就是
stop-mapred.sh 了。當然,也可以先啟動 MapReduce,再啟動 HDFS。這說明,HDFS 和MapReduce
的進程之間是互相獨立的,沒有依賴關系。
?
第三種,分別啟動各個進程:
?
執行的命令是“hadoop-daemon.shstart?[進程名稱]”,這種啟動方式適合于單獨增加、
刪除節點的情況,在安裝集群環境的時候會看到。
root@book0 bin]# jps
14821 Jps
[root@book0 bin]# hadoop-daemon.sh start namenode
[root@book0 bin]# hadoop-daemon.sh start datanode
[root@book0 bin]# hadoop-daemon.sh startsecondarynamenode
[root@book0 bin]# hadoop-daemon.sh start jobtracker
[root@book0 bin]# hadoop-daemon.sh start tasktracker
[root@book0 bin]# jps
14855 NameNode
14946 DataNode
15043 SecondaryNameNode
15196 TaskTracker
15115 JobTracker
15303 Jps
至此hadoop的偽分布式安裝已完成,讀者接下來可以進行簡單的MapReduce計算了。
(以上內容來源于網上的摘要結合自己的說明)
總結
以上是生活随笔為你收集整理的hadoop的安装与配置(伪分布式模式安装)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 怎么正确购买国外网络服务器
- 下一篇: Unsupported major.mi