Standalone集羣模式html
實驗環境java
·操做機:Windows 7linux
·目標機:3個節點,配置以下:shell
實驗工具apache
·Web瀏覽器:經常使用的有谷歌瀏覽器,火狐瀏覽器等瀏覽器
·Xshell6:是一個強大的安全終端模擬軟件,它支持SSH1, SSH2, 以及Microsoft Windows 平臺的TELNET 協議。緩存
·Xftp6:是一個功能強大的SFTP、FTP 文件傳輸軟件。安全
實驗內容服務器
Standalone是Spark自帶的資源管理器,獨立模式,自帶完整的服務,可單獨部署到一個集羣中,無需依賴任何其餘資源管理系統。oracle
本實驗經過真實的集羣環境進行spark集羣的搭建。
實驗步驟
1.設置三臺機子間的免密登錄
(1)經過xshell進入master主節點設置到master、slave1和slave2的免密登錄
cd ~/.ssh
ssh-keygen –t rsa
這裏要回車幾下,會在當前目錄生成兩個文件,一個公鑰一個私鑰
(2)將公鑰拷貝到其它機器上,實現免密碼登陸
ssh-copy-id master
ssh-copy-id slave1
ssh-copy-id slave2
這樣會在slave1 的~/.ssh/目錄下生成一個authorized_keys 就能夠實現master免登陸到3個節點,以下:
ssh slave2
(3)在另外兩臺子節點上重複此(1)(2)操做,使三臺服務器間彼此免密登錄。
(1)在/opt/下建立soft-install文件夾來存放安裝的軟件:mkdir /opt/soft-install
(2)建立soft目錄來安裝軟件:mkdir /opt/soft
(3)Jdk下載地址:
(4)使用xftp6將壓縮包傳到服務器
(5)將jdk解壓到/opt/soft/目錄下:
tar -zxvf jdk-8u201-linux-x64.tar.gz -C /opt/soft/
(6)修改環境變量
sudo vi /etc/profile
(7)在文件最後下添加:
export JAVA_HOME=/opt/soft/jdk1.8.0\_201 export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
(8)刷新配置文件:source /etc/profile
(9)將java同步到slave1和slave2
rsync –av /opt/soft/jdk1.8.0_201/ slave1:/opt/soft/jdk1.8.0_201
rsync –av /opt/soft/jdk1.8.0_201/ slave2:/opt/soft/jdk1.8.0_201
(10)經過ssh到slave1和slave2進行配置java環境變量
ssh slave1
sudo vi /etc/profile
(11)在後面添加
export JAVA_HOME=/opt/soft/jdk1.8.0\_201 export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
(12)source /etc/profile
(13)ssh slave2
sudo vi /etc/profile
重複(11)(12)
3.安裝scala
(1)官網下載:https://www.scala-lang.org/download/2.11.12.html
(2)經過xftp發送到服務器
(3)解壓到/opt/soft
tar -zxvf scala-2.11.12.tgz -C /opt/soft/
(4)修改環境變量
vi /etc/profile
(5)在最後添加:
(6)刷新配置文件
source /etc/profile
(7)檢查是否安裝完成
scala -version
4.安裝spark
(1)經過官網下載spark
https://www.apache.org/dyn/closer.lua/spark/spark-2.4.0/spark-2.4.0-bin-hadoop2.7.tgz
(2)使用xftp發送到服務器
(3)將spark安裝包解壓到/opt/soft
tar -zxvf spark-2.4.0-bin-hadoop2.7.tgz -C /opt/soft/
(4)重命名spark根目錄
mv /opt/soft/spark-2.4.0-bin-hadoop2.7/ /opt/soft/spark-2.4.0
(5)配置環境變量
vi /etc/profile
(6)最尾巴加入
export SPARK_HOME=/opt/soft/spark-2.4.0 export PATH=$PATH:$SPARK_HOME/bin
(7)刷新環境變量
source /etc/profile
5.配置spark
(1)首先咱們把緩存的文件spark-env.sh.template改成spark識別的文件spark-env.sh
cp spark-env.sh.template spark-env.sh
(2)修改spark-env.sh,在尾巴加入:
export JAVA_HOME=/opt/soft/jdk1.8.0\_201 export SCALA_HOME=/opt/soft/scala-2.11.12 export SPARK_MASTER_IP=master #本地的ip或主機名 export SPARK_WORKER_MEMORY=4g export SPARK_WORKER_CORES=2 export SPARK_WORKER_INSTANCES=1
(3)把緩存的文件slaves.template改成spark識別的文件slaves
cp slaves.template slaves
vi slaves
(4)在最後面修改成:
6.將spark同步到slave1和slave2
使用rsync命令
rsync –av /opt/soft/spark-2.4.0/ slave1:/opt/soft/spark-2.4.0
rsync –av /opt/soft/spark-2.4.0/ slave2:/opt/soft/spark-2.4.0
7.啓動spark
(1)cd /opt/soft/spark-2.4.0
(2)./sbin/start-all.sh
(3)經過jsp查看進程
master中:
slave1中:
slave2中:
能夠看到新開啓的Master和Worker兩個進程
(4)成功打開Spark集羣以後能夠進入Spark的WebUI界面,能夠經過(服務的ip地址:8080)進行訪問
(5)打開Spark-shell
spark-shell
進入了spark-shell
(6)同時,由於shell在運行,能夠經過瀏覽器(服務的ip地址:4040)進行訪問