hadoop3.x+scala+spark-mac血淚安裝經驗!!

鐵蛋嘟嘟嚕發表於2019-02-28

總結:

最折騰的步驟是在hadoop的安裝,我嘗試安裝了4次,前兩次直接用brew install hadoop+其他部落格上的安裝教程,後面兩次直接按照hadoop官網說的安,第三次是因為我安裝在/usr/local下面遇到了使用者許可權的問題才又重新安裝了一遍。所以說按照hadoop官網安裝是最保險的。下面的介紹都是基於hadoop官網的教程,需要配合官網教程食用~

  1. 裝置:macOS+java版本–jdk1.8.0_171.jdk
  2. 參考連結:
    Mac 安裝 Hadoop 3.x
    hadoop 官方安裝教程
  3. 簡要的官方安裝過程介紹-官網上那些詳細的介紹在這裡就不贅述了

hadoop3.x 安裝

  • 下載+解壓
    http://www.apache.org/dyn/closer.cgi/hadoop/common/ 選擇一個合適的版本下載,我下的是hadoop-3.2.0,解壓到你想放的資料夾下面,我是在/user/***以下的資料夾下面。訪達右鍵前往資料夾輸入路徑就可以開啟這個資料夾啦。
    /user/***
  • 按照官網教程在etc/hadoop/hadoop-env.sh新增引數
    贈送 java安裝路徑查詢-終端輸入以下程式碼
 /usr/libexec/java_home
  • cd到hadoop資料夾下面命令列輸入
bin/hadoop

官網提供了3種安裝模式我選的是第二種偽分散式

  • 檔案配置(官網都有,懶得貼( ̀⌄ ́))
    • etc/hadoop/core-site.xml
    • etc/hadoop/hdfs-site.xml
    • 無密登陸ssh
      ssh這裡還要在系統裡開啟遠端登入,在 系統偏好設定 -> 共享 中,勾選 遠端登入,右邊選擇 所有使用者。
      在這裡插入圖片描述
      驗證是否成功,終端輸入
ssh localhost
  • 格式化檔案系統(Format the filesystem)
  • 切到hadoop資料夾下面
$ bin/hdfs namenode -format

這裡要千萬要注意的是隻能格式化一次,要是重複格式化的話會導致namenode的cluster id和datanode的cluster id不一致然後你就得去改id,但我改了沒有效果所以就刪檔重來。

  • Start NameNode daemon and DataNode daemon(逐漸變懶):
  • 切到hadoop資料夾下面,反正要看的你輸入的路徑有這個sh檔案就對了
sbin/start-dfs.sh

到了這裡你就能リンクスタート了,後面沒有坑,照著官網一步一步走,在Execution的6. Run some of the examples provided:

$ bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.9.2.jar grep input output 'dfs[a-z.]+'

記得把2.9.2換成你自己的hadoop版本就可以執行的。

踩坑填坑

  • namenode的clusterid和datanode的clusterid不一致如何修改datanode的id
    開啟hadoop的logs資料夾-hadoop-***-datanode-bogon.log,尋找id不一致的報錯資訊,
    然後你可以找到一個路徑,我是在/tmp/hadoop-***/dfs/,同樣訪達右鍵前往資料夾輸入/tmp然後再翻一翻就有啦(***代表我的使用者名稱)在這裡插入圖片描述 把data的那個version裡面的clusterid改成跟name下面的clusterid一致;但我嘗試過了沒反應,可能是我自己哪裡又犯錯了趴。。
  • 如何解除安裝安裝不成功的hadoop
  1. 刪除你解壓的那個軟體包
  2. 刪除/tmp/hadoop-***這個資料夾

配置環境變數(hadoop3+scala+spark)

開啟.bash_profile檔案,新增

export HADOOP_HOME=/Users/ironegg/hadoop-3.2.0
export SCALA_HOME=/usr/local/Cellar/scala/scala-2.12.8
export SPARK_HOME=/Users/ironegg/spark
export PYSPARK_PYTHON=python3
export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin:$SCALA_HOME/bin:$SPARK_HOME/bin

配置環境變數的時候不要抄!!記得對照你自己的檔案路徑!!
在這裡插入圖片描述
叮~成功的~

scala安裝

直接brew install scala
在這裡插入圖片描述

spark安裝

官網 http://spark.apache.org/downloads.html
我安裝的是spark-2.4.0-bin-hadoop2.7.tar,解壓後把他放在跟hadoop同一資料夾中。
環境變數在上面一起配置好了,mac自帶了python2所以要新增個pyspark_python的路徑(跟上面的環境變數配置一起了),這樣pyspark才能基於python3呼叫。
終端輸入spark-shell調出spark
在這裡插入圖片描述
那個WARN NativeCodeLoader:62網上有解決辦法可以自行查詢雖然我還沒去看。

相關文章