文章目錄
Spark的四種運行模式
首先spark有四種運行模式,目前只接觸到了local,standalone ,yarn 三種運行模式。
local模式顧名思義就是運行在 本地,一般用於測試小型的spark應用程序,比較簡單,只用在開發工具中安裝插件即可,不需要搭建集羣。
standalone 和 yarn 屬於同級別的,都需要搭建集羣,yarn集羣在前面的博客已經介紹,這裏不做詳細介紹,下面是我們standalone 集羣的搭建過程。
- local
- standalone
- yarn
- mesos
standalone 集羣的搭建
standalone集羣的大體框架
standalone集羣步驟
1,在node01節點上下載spark安裝包
2,解壓spark-1.6.3-bin-hadoop2.6.tgz安裝包
tar -zxvf spark-1.6.3-bin-hadoop2.6.tgz
3,修改spark配置文件
- 進入conf目錄下修改配置文件的名字
把slaves.template文件改名爲slaves文件mv slaves.template slaves
- 修改slaves配置文件內容
standalone是主從架構,而slaves配置文件裏面放的是從節點的IP,所以將node02,node03,node04放入slaves中。
- 修改spark-env.sh內容
SPARK_MASTER_PORT字段設置主節點的IP
SPARK_MASTER_IP字段設置端口(用來Master與Worker的心跳,資源通信)
SPARK_WORKER_CORES代表每一個worker進程能管理幾個核(有幾個核的支配權)。
//如果CPU是4核8線程,那麼這個核是支持超線程的核。
//如果是普通的核,一個核在一個時刻只能處理一個線程。
//這個配置是根據當前節點的資源情況來配置的,如果節點有8個core,並且支持超線程,此時可以將這個節點看成由16個core組成。
SPARK_WORKER_MEMORY字段代表每個worker可以管理多大內存。
SPARK_WORKER_DIR配置worker路徑
SPARK_WORKER_INSTANCES設置每個節點上啓動的worker進程數。
4,將配置好的spark安裝包發送到各個節點上
scp -r spark-1.6.3 root@node2: ‘pwd’
scp -r spark-1.6.3 root@node3:‘pwd’
scp -r spark-1.6.3 root@node4:‘pwd’
5,將啓動命令改名
進入sbin目錄下,找到start-all.sh文件(此文件與hadoop的start.sh衝突),將其改爲:start-spark.sh
mv start-all.sh start-spark.sh
6,啓動spark
start-spark.sh
7,jps查看各個節點開啓的進程
node01上啓動了一個Master進程
node02上啓動了一個Worker進程
node03上啓動了一個Worker進程
node04上啓動了一個Worker進程
說明啓動成功