安裝zeppelin
1
.默認安裝好spark集群
2
.安裝zeppelin
1
.解壓安裝包
tar zxvf zeppelin-
0.5
.
5
-incubating-bin-all.tgz
2
.配置環境變量
vim /etc/PRofile
#zeppelin
export ZEPPELIN_HOME=/opt/zeppelin-
0.5
.
5
#CLASSPATH
export CLASSPATH=$CLASSPATH:$ZEPPELIN_HOME/lib
#PATH
export PATH=$PATH:$ZEPPELIN_HOME/bin
保存退出
source /etc/profile
我們的/etc/profile配置如下
export LANG=zh_CN.GBK
export LC_ALL=zh_CN.GBK
export PATH=$PATH:/usr/local/python2.7.6/bin/
export java_HOME=/usr/java/jdk1.8.0_101
export CLASSPATH=$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH
export PATH="/usr/local/MySQL/bin:$PATH"
#set for nodejs
export NODE_HOME=/usr/local/nodejs
export PATH=$NODE_HOME/bin:$PATH
PATH="/usr/local/mysql/bin:$PATH"
3
.修改配置文件
cd /opt/zeppelin-
0.5
.
5
1
.根據模板復制相關配置文件
cp zeppelin-env.sh.template zeppelin-env.sh
cp zeppelin-site.xml.template zeppelin-site.xml
2
.創建相關目錄
mkdir /opt/zeppelin-
0.5
.
5
/logs
mkdir /opt/zeppelin-
0.5
.
5
/tmp
3
.修改配置文件參數
####zeppelin-env.sh####
export JAVA_HOME=/usr/java/jdk1.
8
.0_65
export HADOOP_CONF_DIR=/opt/hadoop-
2.5
.
2
/etc/hadoop
//如果需要讀取hdfs的文件 則必須配置此條
export MASTER=spark:
//hadoop.master:7077 //使用spark 集群模式
export SPARK_HOME=/opt/spark-
1.6
.
0
export SPARK_SUBMIT_OPTIONS=
"--driver-memory 500M --executor-memory 500m"
//可以根據實際內存情況進行調整
export ZEPPELIN_JAVA_OPTS=
"-Dspark.executor.memory=500m -Dspark.cores.max=1"
//可以根據實際內存情況進行調整
export ZEPPELIN_MEM=
"-Xmx500m -XX:MaxPermSize=500m"
//可以根據實際內存情況進行調整
export ZEPPELIN_LOG_DIR=/opt/zeppelin-
0.5
.
6
/logs
我們的zeppelin-env.sh配置如下
export SPARK_MASTER_ip=127.0.0.1
export SPARK_LOCAL_IP=127.0.0.1
export ZEPPELIN_MEM="-Xms1024m -Xmx16384m -XX:MaxPermSize=16384m"
####zeppelin-site.xml####
<property>
<name>zeppelin.server.addr</name>
<value>hadoop.slaver3</value>
//主機名或Ip 當前主機
<description>Server address</description>
</property>
<property>
<name>zeppelin.server.port</name>
<value>
8084
</value>
//不一定非要一致 但這個端口是通過web訪問的端口
<description>Server port.</description>
</property>
4
.啟動
zeppelin-daemon.sh start
5
.驗證
主機名:端口
//能顯示界面則表示安裝成功
1
.默認安裝好hadoop+zookeeper
2
.安裝scala
1
.解壓安裝包
tar zxvf scala-
2.11
.
7
.tgz
2
.配置環境變量
vim /etc/profile
#scala
export SCALA_HOME=/opt/scala-
2.11
.
7
#CLASSPATH
export CLASSPATH=$CLASSPATH:$SCALA_HOME/lib
#PATH
export PATH=$PATH:$SCALA_HOME/bin
保存退出
source /etc/profile
3
.驗證
scala -version
3
.安裝spark
1
.解壓安裝包
tar zxvf spark-
1.6
.
0
-bin-hadoop2.
4
.tgz
2
.配置環境變量
vim /etc/profile
#spark
export SPARK_HOME=/opt/spark-
1.6
.
0
#CLASSPATH
export CLASSPATH=$CLASSPATH:$SPARK_HOME/lib
#PATH
export PATH=$PATH:$SPARK_HOME/bin:$SPARK_HOME/sbin
保存退出
source /etc/profile
我們的/etc/profile配置如下
export LANG=zh_CN.GBK
export LC_ALL=zh_CN.GBK
export PATH=$PATH:/usr/local/python2.7.6/bin/
export JAVA_HOME=/usr/java/jdk1.8.0_101
export CLASSPATH=$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH
export PATH="/usr/local/mysql/bin:$PATH"
#set for nodejs
export NODE_HOME=/usr/local/nodejs
export PATH=$NODE_HOME/bin:$PATH
PATH="/usr/local/mysql/bin:$PATH"
3
.修改配置文件
1
.根據模板復制相關配置文件
cp spark-env.sh.template spark-env.sh
cp slaves.template slaves
cp log4j.properties.template log4j.properties
cp spark-defaults.conf.template spark-defaults.conf
2
.創建相關目錄
mkdir /opt/spark-
1.6
.
0
/logs
mkdir /opt/spark-
1.6
.
0
/tmp
hadoop fs -mkdir /spark
//在hdfs上創建存儲spark的任務日志文件
3
.修改配置文件參數
####spark-env.sh#### 最后加入 其中hadoop.master為主節點 hadoop.slaver1為備份主節點
export SPARK_DAEMON_JAVA_OPTS=
"-Dspark.deploy.recoveryMode=ZOOKEEPER -Dspark.deploy.zookeeper.url=hadoop.master:2181,hadoop.slaver1:2181 -Dspark.deploy.zookeeper.dir=/spark"
export JAVA_HOME=/usr/java/jdk1.
8
.0_65
export SPARK_WORKER_CORES=
1
export SPARK_WORKER_INSTANCES=
1
export SPARK_WORKER_MEMORY=1g
我們的spark-env.sh配置如下
export SPARK_DIST_CLASSPATH=$(/home/haoren/soft/hadoop/bin/hadoop classpath)
#export SPARK_CLASSPATH=$SPARK_CLASSPATH:/home/ztgame/soft/mysql-connector-java-5.1.40.jar
#export SPARK_MASTER_PORT=17077
#export SPARK_MASTER_HOST=222.192.205.26
#export SPARK_MASTER_WEBUI_PORT=18082
?
####slaves####將所有的從節點主機名加入
hadoop.slaver1
hadoop.slaver2
hadoop.slaver3
####log4j.properties####
無需修改
####spark-defaults.conf####
spark.eventLog.enabled
true
spark.eventLog.dir hdfs:
//ns1:8020/spark
spark.history.fs.logDirectory hdfs:
//ns1:8020/spark
spark.eventLog.compress
true
4
.分發到各個節點
scp -r /opt/spark-
1.6
.
0
hadoop
@hadoop
.slaver1:/opt
scp -r /opt/spark-
1.6
.
0
hadoop
@hadoop
.slaver2:/opt
scp -r /opt/spark-
1.6
.
0
hadoop
@hadoop
.slaver3:/opt
5
.啟動
//先啟動zookeeper 和 hdfs
sbin/start-all.sh
//注意切換目錄 不然跟hadoop的start-all 沖突
spark-shell --master spark:
//hadoop.master:7077 //集群模式啟動客戶端
spark-shell
//單機模式啟動客戶端
6
.驗證
1
.jps
2
.web
節點主機名:
8080
//如果采用默認端口的話則是8080 主節點web
節點主機名:
18080
//主節點 歷史任務web
節點主機名:
4040
//子節點正在進行任務web
3
.HA
在備份主機節點執行 start-master.sh命令
然后在主機節點把master進程kill掉,此時會自行切換至備份節點(需要幾秒鐘的緩沖時間)
7
.常用命令
1
.啟動
start-all.sh
//注意切換目錄
start-master.sh
stop-master.sh
start-slave.sh 主節點:
7077
//默認端口 如果不修改的話
start-history-server.sh
//啟動任務歷史服務
2
.使用
1
.本機模式
運行 spark-shell
2
.yarn
打包運行jar包
spark-submit
--master spark:
//spark113:7077
--
class
org.apache.spark.examples.SparkPi
--name Spark-Pi --executor-memory 400M
--driver-memory 512M
/opt/spark-
1.6
.
0
/lib/spark-examples-
1.6
.
0
-hadoop2.
4.0
.jar
3
.Wordcount
val file=sc.textFile(
"hdfs://ns1:8020/huangzhijian/test.dat"
)
val count=file.flatMap(line => line.split(
" "
)).map(word => (word,
1
)).reduceByKey(_+_)
count.saveAsTextFile(
"hdfs://ns1:8020/output"
) //需保證hdfs上該目錄不存在
轉自http://www.CUOXin.com/ciade/p/5141264.html新聞熱點
疑難解答