環境:Hadoop-2.7.2 jdk-1.8 scala-2-11-12 spark-2.1.0html
spark2.0.0開始,只支持Java8版本了,而且Java8版本最好相對高一點,而且從spark2.1.0開始只支持scala2.11了apache
scala下載地址(選擇2.11.X以上版本):http://www.scala-lang.org/download/
spark下載地址:http://spark.apache.org/downloads.html服務器
因爲咱們的hadoop是2.7.2 版本,這裏選擇下載對應的spark版本。oop
首先,將scala和spark的tar包上傳到咱們的三臺虛擬機上,並進行解壓配置。spa
三臺虛擬機IP:scala
192.168.194.131 Hadoop.Master
192.168.194.129 Hadoop.Slave1
192.168.194.130 Hadoop.Slave2調試
咱們先來配置scala,在配置scala以前咱們必須保證服務器上有Java8以後,配置scala的環境變量,編輯/etc/profile:htm
保存而後使其生效以後,執行scala -version觀察輸出:hadoop
若是輸出對應版本號則說明配置成功。get
接下來咱們配置spark,首先就是環境變量:
而後咱們進入spark目錄下的conf目錄,去配置兩個配置文件spark-env.sh slaves
首先咱們編輯spark-env.sh,將spark-env.sh.template文件重命名
而後咱們編輯slaves,將slaves.template文件重命名,而且將hosts文件中咱們的兩個hadoop從節點的host也來充當咱們的spark的從節點
而後咱們進入spark目錄下的sbin目錄中執行start-all.sh,用jps命令觀察各個節點的啓動效果。
Master:
Slave:
遇到的坑:
1.stop-all.sh執行關閉spark集羣的時候,worker節點沒有正常關閉(緣由看第3點)
2.spark UI在單機節點的時候訪問地址爲 IP:4040 ,集羣狀態下 的訪問地址爲IP:8080。
3.因爲個人hadoop的環境變量中,將hadoop目錄下的sbin目錄配置到了PATH中,致使我在spark目錄下的sbin目錄下執行start-all.sh/stop-all.sh時,老是執行hadoop的start-all.sh/stop-all.sh,想執行spark的start-all.sh只能經過絕對路徑執行