九個(gè)步驟,手把手教你在Windows上安裝Hadoop
在 Microsoft Windows 上運(yùn)行 Apache Hadoop 是比較繁瑣的任務(wù),在安裝過程中會(huì)出現(xiàn)許多錯(cuò)誤,最終,大多數(shù)用戶放棄了通過 Windows 使用 Hadoop,并轉(zhuǎn)而使用基于 Linux 的操作系統(tǒng)。
本文講述了有關(guān)如何在Windows上無誤安裝和運(yùn)行Apache Hadoop所有組件的各個(gè)方面。請(qǐng)先為以下先決條件準(zhǔn)備好PC/筆記本電腦:
1. Java開發(fā)工具包
Apache Hadoop 與最新版本的JDK不兼容。建議下載Java SE Development Kit版本15.0.x(可能需要注冊(cè)O(shè)racle帳戶)。
安裝鏈接:https://www.oracle.com/java/technologies/javase/jdk15-archive-downloads.html
2. 設(shè)置環(huán)境路徑
(僅在未安裝Java或從未設(shè)置Java路徑時(shí)才執(zhí)行此步驟)。
進(jìn)入設(shè)置 -> 搜索 "環(huán)境變量" -> 選擇 "編輯系統(tǒng)變量 "選項(xiàng)。出現(xiàn)以下對(duì)話框:
單擊“環(huán)境變量…”按鈕。出現(xiàn)以下窗口:
選擇新按鈕并在變量名稱中鍵入“JAVA_HOME”,將值設(shè)置為Java SDK的bin文件夾的路徑(通常為類型:C:\Program Files\Java\jdk-15.0.1\bin)。對(duì)于用戶和系統(tǒng)變量都執(zhí)行此步驟。
從用戶變量中選擇路徑選項(xiàng)(稍后同樣適用于系統(tǒng)變量)。單擊“編輯”并通過單擊“新建”按鈕(從右側(cè))添加Java bin路徑。對(duì)于用戶和系統(tǒng)變量都執(zhí)行此步驟。
現(xiàn)在,通過滿足先決條件,已準(zhǔn)備好在Windows上安裝Apache Hadoop。
從以下鏈接中下載tar.gz文件(注意-最可能需要下載的是底部的第三個(gè)文件)。
安裝鏈接:https://downloads.apache.org/hadoop/common/hadoop-3.3.4/
確保將Hadoop文件夾提取到C:驅(qū)動(dòng)器中(而不是任何文件夾或其他驅(qū)動(dòng)器中)
提取后,請(qǐng)確保hadoop-3.3.4(文件夾名稱)對(duì)用戶具有寫入權(quán)限。
下面我們進(jìn)入安裝步驟的關(guān)鍵部分,設(shè)置Hadoop的配置,請(qǐng)仔細(xì)遵循這些步驟。我們需要更改以下文件:
- 編輯文件C:\ Hadoop-3.3.4 \ etc \ hadoop \ core-site.xml,編輯xml代碼并保存:
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
注意:如果端口正在使用,則可能需要更改端口(此處為9000)。
- 編輯文件C:\Hadoop-3.3.4\etc\hadoop\mapred-site.xml,編輯xml代碼并保存:
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
3. 編輯文件
編輯C:\Hadoop-3.3.4\etc\hadoop\hdfs-site.xml,編輯xml代碼并保存:
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>/hadoop-3.3.4/data/namenode</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/hadoop-3.3.4/data/datanode</value>
</property>
</configuration>
4. 創(chuàng)建目錄
創(chuàng)建以下目錄
a. 在“C:\ hadoop-3.3.4 \”下創(chuàng)建文件夾“data”
b. 在“C:\ hadoop-3.3.4 \ data \”下創(chuàng)建文件夾“datanode”
c. 在“C:\ hadoopo-3.3.4 \ data \”下創(chuàng)建文件夾“namenode”
5. 編輯文件
編輯文件C:\ Hadoop-3.3.4 \ etc \ hadoop \ yarn-site.xml,編輯xml代碼并保存:
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.auservices.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>
</configuration>
6. 編輯文件
編輯文件C:\Hadoop-3.3.4\etc\hadoop\hadoop-env.cmd,編輯以下行:
“JAVA_HOME=C:\\Progra~1\Java\jdk-15.0.1\bin” instead of set “JAVA_HOME=C:\Java”
注意:可以使用JAVA_HOME變量,但由于路徑地址(Program Files)中存在空格,會(huì)引發(fā)錯(cuò)誤。
到這一步已經(jīng)完成了編輯配置的工作?,F(xiàn)在,我們將在cmd中執(zhí)行命令以運(yùn)行Hadoop。
從下面鏈接中的bin文件夾中粘貼文件到Hadoop bin文件夾中,注意不要替換整個(gè)bin文件夾,復(fù)制文件并僅替換選定的文件。確保bin文件夾總共有22個(gè)項(xiàng)目。這一步很關(guān)鍵,因?yàn)楝F(xiàn)有的bin文件夾具有不完整的文件集,這些文件集是運(yùn)行資源管理器所需的。
安裝鏈接:https://drive.google.com/drive/folders/1fDbblP61sUKmDqvQ8pfU98nMt_we4b5J?usp=share_link
7. 為Hadoop設(shè)置環(huán)境和路徑變量
進(jìn)入設(shè)置->打開環(huán)境變量->在用戶變量中添加新變量:
變量名稱:HADOOP_HOME,值:C:\ hadoop-3.3.4 \ bin(到hadoop bin文件夾的路徑)。
進(jìn)入用戶變量中的路徑,點(diǎn)擊編輯,添加新路徑:
路徑值與上面相同(到Hadoop bin文件夾的路徑)。
將以下路徑值添加到系統(tǒng)變量中:
C:\ hadoop-3.3.4 \ bin
C:\ hadoop-3.3.4 \ sbin
以“管理員身份運(yùn)行”打開cmd(或powershell),并使用cd命令導(dǎo)航到Hadoop的bin目錄:
cd C:\hadoop-3.3.4\bin\
8. 格式化目錄
使用相同的cmd(powershell)命令格式化“namenode”目錄;
hdfs namenode -format
9. 啟動(dòng)組件
要啟動(dòng)Hadoop組件,將當(dāng)前目錄改為sbin文件夾:
cd C:\hadoop-3.3.4\sbin\
并運(yùn)行“start-all.cmd”可執(zhí)行文件??梢酝ㄟ^在文件資源管理器中導(dǎo)航到sbin目錄中的start-all.cmd并選擇“以管理員身份運(yùn)行”來執(zhí)行此操作。
注意:如果通過執(zhí)行第8步,無法查看yarn終端(cmd),請(qǐng)從同一目錄中以管理員身份打開“start-yarn.cmd”。
現(xiàn)在就能看到四個(gè)終端(cmd)同時(shí)運(yùn)行。
確保所有四個(gè)組件都在運(yùn)行,這些組件是:
a. hadoop namenode
b. hadoop datanode
c. yarn resourcemanager
d. yarn nodemanager
注意:可以使用終端中的“jps”命令進(jìn)行驗(yàn)證。如果任何一個(gè)(或多個(gè))進(jìn)程“關(guān)閉”,請(qǐng)檢查上一部分中的Hadoop配置步驟。
在成功運(yùn)行組件后,可以通過在Web瀏覽器中打開http://localhost:8088來訪問Hadoop默認(rèn)創(chuàng)建的群集。
上圖顯示了具有值1的活動(dòng)節(jié)點(diǎn)的突出顯示字段,表示已創(chuàng)建一個(gè)節(jié)點(diǎn)并正在運(yùn)行。
單擊左側(cè)欄上的“節(jié)點(diǎn)”以查看所創(chuàng)建節(jié)點(diǎn)的詳細(xì)信息。
要檢查namenode的狀態(tài),請(qǐng)?jiān)赪eb瀏覽器中打開http://localhost:9870??梢酝ㄟ^頂部導(dǎo)航欄下的“實(shí)用程序”部分在GUI下訪問HDFS。
注意:圖中顯示 "localhost:9001",因?yàn)槎丝谔?hào)9000已經(jīng)被我的電腦使用了。我已經(jīng)在Hadoop配置步驟中改變了它。(在core-site.xml文件中)。
恭喜,已成功在PC上安裝了Apache Hadoop?,F(xiàn)在,可以從本地計(jì)算機(jī)執(zhí)行map reduce任務(wù),開始探索Hadoop Map Reduce的功能吧。