上一篇寫了Hadoop分佈式集羣的安裝以及配置過程,這一篇來繼續spark的安裝與配置,具體步驟以下:html
spark官網下載地址:http://spark.apache.org/downloads.html,選擇spark版本和對應的hadoop版本,而後點擊下面對應的下載連接。java
我這裏因爲安裝的hadoop版本是2.8.5,因此選擇了Pre-built for Apache Hadoop 2.7 and later,而後默認給我下載spark-2.3.2-bin-hadoop2.7.tgz版本.web
配置環境變量並進行刷新,以後對slave1和slave2進行修改apache
#編輯profile文件 [root@spark-master ~]# vi /etc/profile #在文件的最後面添加下面的內容,SPARK-HOME以實際安裝爲準 export SPARK_HOME=/opt/spark/spark-2.3.2-bin-hadoop2.7 export PATH=$PATH:$SPARK_HOME/bin #刷新配置使環境變量生效 [root@spark-master ~]# source /etc/profile
1.安裝與配置vim
把下載的安裝包拷貝到服務器上,並解壓到安裝目錄,一般應該對解壓出來的文件夾重命名的,便於後面配置,我這裏就偷懶直接用解壓後的文件名。centos
而後切換到conf目錄下看到有一些模板文件,咱們把其中帶spark-env.sh.template 、spark-defaults.conf.template和slaves.template的文件進行復制並重命名(主要是把後面的template後綴去掉),而後修改裏面的內容。服務器
#解壓安裝包到安裝目錄
[root@spark-master ~]# tar -xvf /opt/spark/spark-2.3.2-bin-hadoop2.7.tgz -C /opt/spark/ [root@spark-master ~]# cd /opt/spark/spark-2.3.2-bin-hadoop2.7/ [root@spark-master spark-2.3.2-bin-hadoop2.7]# cd conf
#拷貝slaves和spark-env.sh文件 [root@spark-master conf]# cp slaves.template slaves [root@spark-master conf]# cp spark-env.sh.template spark-env.sh [root@spark-master conf]# vim slaves
#修改slaves配置文件以下
spark-slave1
spark-slave2
[root@spark-master conf]# vim spark-env.sh
#修改spark-env.sh配置文件以下
export JAVA_HOME=/usr/java/jdk1.8.0_152
export SCALA_HOME=/opt/scala/scala-2.12.7
export HADOOP_HOME=/opt/hadoop/hadoop-2.8.5
export HADOOP_CONF_DIR=/opt/hadoop/hadoop-2.8.5/etc/hadoop
#定義管理端口分佈式
export SPARK_MASTER_WEBUI_PORT=8066oop
#定義master域名和端口測試
export SPARK_MASTER_HOST=spark-master
export SPARK_MASTER_PORT=7077
#定義master的地址slave節點使用
export SPARK_MASTER_IP=spark-master
#定義work節點的管理端口.work節點使用
export SPARK_WORKER_WEBUI_PORT=8077
#每一個worker節點可以最大分配給exectors的內存大小
export SPARK_WORKER_MEMORY=4g
#拷貝spark-defaults.conf配置文件
[root@spark-master conf]# cp spark-defaults.conf.template spark-defaults.conf
[root@spark-master conf]# vim spark-defaults.conf
#修改spark-default.conf配置文件以下
spark.eventLog.enabled=true
spark.eventLog.compress=true
#保存在本地
#spark.eventLog.dir=file://usr/local/hadoop-2.8.5/logs/userlogs
#spark.history.fs.logDirectory=file://usr/local/hadoop-2.8.5/logs/userlogs
#保存在hdfs上
spark.eventLog.dir=hdfs://spark-master:9000/tmp/logs/root/logs
spark.history.fs.logDirectory=hdfs://spark-master:9000/tmp/logs/root/logs
spark.yarn.historyServer.address=spark-master:18080
注意:在修改slaves文件的時候裏面默認有個localhost項要去掉,否則啓動的時候會提示Permanently added 'localhost' (ECDSA) to the list of known hosts.
以上都修改完成後把安裝目錄分別拷貝到slave1和slave2服務器上。
[root@spark-master conf]# scp -r /opt/spark/spark-2.3.2-bin-hadoop2.7 root@spark-slave1:/opt/spark/ [root@spark-master conf]# scp -r /opt/spark/spark-2.3.2-bin-hadoop2.7 root@spark-slave2:/opt/spark/
切換到spark安裝目錄下的sbin目錄,這裏能夠看到spark爲咱們貼心的準備了不少命令執行腳本,咱們執行start-all.sh啓動集羣。
[root@spark-master conf]# cd ../sbin/ [root@spark-master sbin]# ./start-all.sh starting org.apache.spark.deploy.master.Master, logging to /opt/spark/spark-2.3.2-bin-hadoop2.7/logs/spark-root-org.apache.spark.deploy.master.Master-1-VM_10_45_centos.out spark-slave2: starting org.apache.spark.deploy.worker.Worker, logging to /opt/spark/spark-2.3.2-bin-hadoop2.7/logs/spark-root-org.apache.spark.deploy.worker.Worker-1-VM_21_17_centos.out spark-slave1: starting org.apache.spark.deploy.worker.Worker, logging to /opt/spark/spark-2.3.2-bin-hadoop2.7/logs/spark-root-org.apache.spark.deploy.worker.Worker-1-VM_20_8_centos.out
查看web管理界面,地址:http://10.10.10.88:8066/
以上就是spark徹底分佈式集羣的安裝及配置過程,接下來開始繼續探索spark的神奇功能。