1. 程式人生 > >Mac 上安裝Hadoop

Mac 上安裝Hadoop

1.安裝JAVA

安裝java就不詳細說了,直接下載jdk,安裝。現在mac新版本好像都不用專門給java和python配置環境變數就直接能用。

終端輸入

java -version

如果顯示出java版本號就ok了。如果沒有,使用命令vim ~/.bash_profile 修改一下環境變數。

2.下載Hadoop

網址:https://hadoop.apache.org/releases.html

根據想下載的版本,選一個,下載解壓。

3.下載的同時,修改mac的配置。 

系統偏好設定-->選擇共享-->開啟遠端登入勾選上

4.配置Hadoop環境變數 

Hadoop的環境變數還是要自己配置的。

使用命令vim ~/.bash_profile

修改環境變數:

# 要填自己下載的Hadoop的解壓位置的地址
export HADOOP_PATH=/Users/***/Documents/tools/hadoop-2.9.2
# 在PATH後面追加hadoop環境變數
export PATH=$PATH:${HADOOP_PATH}/bin

修改儲存完成後,使用命令:source ~/.bash_profile  讓環境變數立刻生效。

執行命令hadoop version  可以檢視到hadoop的版本資訊,則說明Hadoop路徑配置好了

5.修改Hadoop的配置檔案

進入Haddop的安裝目錄下,cd到它下兩個層級/etc/hadoop下。

我的路徑是:     /Users/kimtian/Documents/tools/hadoop-2.9.2/etc/hadoop    可以參考一下。

(1)修改hadoop-env.sh檔案

找到原有的 export JAVA_HOME位置,可以直接搜尋。將其修改,並在下面增加 HADOOP  配置。

我的配置如下,要修改成自己的java路徑和hadoop路徑: 

export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_161.jdk/Contents/Home
export HADOOP_CONF_DIR=/Users/kimtian/Documents/tools/hadoop-2.9.2/etc/hadoop

(2)修改core-site.xml檔案

在<configuration></configuration>中間加入如下程式碼塊(第一個property必須加,第二個可加可不加):

<property>
    <name>fs.defaultFS</name>
    <value>hdfs://localhost:9000</value>
</property>
<!--這段可以不加,加的話要把value改成自己本地一個資料夾,指定Hadoop檔案存放的地址-->
<property>
    <name>hadoop.tmp.dir</name>
    <value>/Users/kimtian/Documents/hadoopWorkspace</value>
</property>

(3)修改mapred-site.xml檔案

這個可以看到有資料夾下只有檔案 mapred-site.xml.template

使用命令 mv mapred-site.xml.template  mapred-site.xml  將其名稱修改成mapred-site.xml檔案後。

在<configuration></configuration>中間加入如下程式碼塊:

 <property>
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
  </property>

(4)修改 yarn-site.xml 檔案

在<configuration></configuration>中間加入如下程式碼塊:

注意yarn.resourcemanager.webapp.address配置的埠號是8088,否則後面輸入http://localhost:8088/無法訪問此網站就是問題出現在這。

<property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
  </property>
  <property>
  <name>yarn.resourcemanager.address</name>
    <value>localhost:8032</value>
  </property>
  <property>
    <name>yarn.resourcemanager.scheduler.address</name>
    <value>localhost:8030</value>
  </property>
  <property>
    <name>yarn.resourcemanager.resource-tracker.address</name>
    <value>localhost:8031</value>
  </property>
  <property>
    <name>yarn.resourcemanager.admin.address</name>
    <value>localhost:8033</value>
  </property>
  <property>
    <name>yarn.resourcemanager.webapp.address</name>
    <value>localhost:8088</value>
  </property>

(5)修改 hdfs-site.xml 檔案

在<configuration></configuration>中間加入如下程式碼塊:

就加這些就行了,如果加錯了其他配置在接下來安裝HDFS的時候報錯。

<property>
  <name>dfs.replication</name>
  <value>1</value>
</property>
<property>
  <name>dfs.permissions</name>
  <value>false</value>
</property>

6.安裝HDFS

使用命令:/Users/kimtian/Documents/tools/hadoop-2.9.2/bin/hadoop namenode -format

(前面部分為安裝hadoop的位置/bin/hadoop)

我在最開始嘗試的時候報錯: java.io.IOException: Cannot create directory /home/hadoop/cdh4/hadoop/dfs/name/current

解決辦法一:使用命令sudo chmod 777 /home/   修改這個路徑的許可權,沒能解決問題

解決辦法二:hdfs-site.xml 配置檔案有問題,不要加多餘的指定配置,上面有提到,成功解決。

如下圖所示,沒有報錯,則為安裝成功:

7.啟動HDFS

進入到hadoop的sbin目錄下,使用命令./start-dfs.sh執行可執行檔案啟動HDFS。

整個過程,輸入了三次mac的密碼,還輸入了一次yes。

8.啟動yarn

同樣進入到hadoop的sbin目錄下,使用命令./start-yarn.sh執行可執行檔案啟動yarn。

整個過程輸入了一次密碼。

9. 確認Hadoop成功啟動

(1)在終端輸入jps命令,顯示如下則為成功。

(2)在瀏覽器輸入網址http://localhost:50070

顯示頁面:

(3)在瀏覽器輸入網址:http://localhost:8088/ 

顯示頁面:

10.停止Hadoop命令

同啟動Hadoop一樣進入到hadoop的sbin目錄下(例子:我的路徑是/Users/kimtian/Documents/tools/hadoop-2.9.2/sbin)。

執行下面兩條命令:
./stop-yarn.sh
./stop-dfs.sh