Spark叢集安裝及Streaming除錯
安裝前置條件
1. 系統需要安裝the Oracle Java Development Kit(not OpenJDK),安裝jdk1.7以上,下載目錄:http://www.oracle.com/technetwork/java/javase/downloads/index-jsp-138363.html?ssSourceSiteId=ocomen。
檢查方法:java -version
2. 安裝python2.7 以上,並配置環境變數和PATH,到https://www.python.org/ftp/python/2.7.3/Python-2.7.3.tar.bz2下載64位版本
檢查方法:python -version
3. 在叢集所有機器中,安裝scala 2.10以上,並配置環境變數和PATH,下載目錄:http://downloads.typesafe.com/scala/2.10.5/scala-2.10.5.tgz
檢查方法:scala命令可使用
4. 安裝rsync元件;
檢查方法:scp命令可使用
5. 安裝ssh並在e3base使用者下完成叢集之間的無密碼訪問配置
6. 叢集之間保證ntp時鐘同步。
檢查方法:service ntp status、service ntpd restart
7. 叢集各主機一定要永久關閉防火牆和selinux。
檢查方法:service iptables status、service iptables stop
8. 將叢集中所有的主機名及ip對應關係都新增到每臺主機的/etc/hosts中。
Scala安裝
解壓安裝包
tar -xzvf scala-2.10.6.tgz
mv scala-2.10.6 scala
配置環境變數
exportSCALA_HOME=/home/hadoop/cdh5.5.0/scala
export PATH=$SCALA_HOME/bin:$PATH
使環境變數生效
source ~/.bash_profile
驗證是否安裝成功
執行如下命令:
scala –version
出現如下資訊則安裝成功
Spark叢集部署
安裝
解壓壓縮包
tar -xzvf spark-1.5.0-cdh5.5.0.tar.gz
mv spark-1.5.0-cdh5.5.0 spark
配置環境變數
vi ~/.bash_profile
exportSPARK_HOME=/home/hadoop/cdh5.5.0/spark
export PATH=$SPARK_HOME/bin:$PATH
使環境變數生效
source ~/.bash_profile
配置
spark-env.sh
cp spark-env.sh.template spark-env.sh
寫入如下資訊
vi spark-env.sh
slaves
cp slaves.template slaves
將Worker主機寫入slaves
啟動
將配置copy到Worker主機
cd $SPARK_HOME/sbin
sh start-all.sh
(注意:啟動之前保證Hadoop已經啟動,否則Master會啟動失敗)
Master HA配置
Master在從standby狀態到active狀態時,這個過程會影響新程式的提交,已經執行的程式不受影響。
export SPARK_DAEMON_JAVA_OPTS="-Dspark.deploy.recoveryMode=ZOOKEEPER-Dspark.deploy.zookeeper.url=worker1:2181,worker2:2181,worker3:2181-Dspark.deploy.zookeeper.dir=/spark"
引數:
spark.deploy.recoveryMode=ZOOKEEPER
spark.deploy.zookeeper.url=worker1:2181,worker2:2181,worker3:2181
spark.deploy.zookeeper.dir=/spark
spark.deploy.recoveryMode
恢復模式(Master重新啟勱的模式),有三種:1.ZooKeeper,2. FileSystem, 3 NONE
spark.deploy.zookeeper.url
ZooKeeper的Server地址
spark.deploy.zookeeper.dir
/spark,ZooKeeper 儲存叢集元資料資訊的檔案目錄,包括Worker,Driver和Application。
問題解決
啟動失敗
問題描述
Exception in thread "main"java.lang.NoClassDefFoundError: org/slf4j/Logger
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Class.java:2625)
at java.lang.Class.getMethod0(Class.java:2866)
at java.lang.Class.getMethod(Class.java:1676)
at sun.launcher.LauncherHelper.getMainMethod(LauncherHelper.java:494)
at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:486)
Caused by:java.lang.ClassNotFoundException: org.slf4j.Logger
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
問題解決
在spark-env.sh配置檔案中增加slf4j相關jar包,如下:
for f in$HADOOP_HOME/share/hadoop/common/lib/*.jar; do
if[ "$SPARK_CLASSPATH" ]; then
export SPARK_CLASSPATH=$SPARK_CLASSPATH:$f
else
export SPARK_CLASSPATH=$f
fi
done
for f in$HADOOP_HOME/share/hadoop/common/*.jar; do
if[ "$SPARK_CLASSPATH" ]; then
export SPARK_CLASSPATH=$SPARK_CLASSPATH:$f
else
export SPARK_CLASSPATH=$f
fi
done
啟動成功後一會自動shut down
問題描述
17/04/06 23:11:59 ERROR ActorSystemImpl:Uncaught fatal error from thread [sparkMaster-akka.actor.default-dispatcher-4]shutting down ActorSystem [sparkMaster]
java.lang.NoClassDefFoundError:com/fasterxml/jackson/databind/Module
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:278)
at org.apache.spark.util.Utils$.classForName(Utils.scala:173)
atorg.apache.spark.metrics.MetricsSystem$$anonfun$registerSinks$1.apply(MetricsSystem.scala:190)
at org.apache.spark.metrics.MetricsSystem$$anonfun$registerSinks$1.apply(MetricsSystem.scala:186)
atscala.collection.mutable.HashMap$$anonfun$foreach$1.apply(HashMap.scala:98)
atscala.collection.mutable.HashMap$$anonfun$foreach$1.apply(HashMap.scala:98)
atscala.collection.mutable.HashTable$class.foreachEntry(HashTable.scala:226)
at scala.collection.mutable.HashMap.foreachEntry(HashMap.scala:39)
at scala.collection.mutable.HashMap.foreach(HashMap.scala:98)
at org.apache.spark.metrics.MetricsSystem.registerSinks(MetricsSystem.scala:186)
at org.apache.spark.metrics.MetricsSystem.start(MetricsSystem.scala:100)
at org.apache.spark.deploy.master.Master.onStart(Master.scala:152)
at org.apache.spark.rpc.akka.AkkaRpcEnv$$anonfun$actorRef$lzycompute$1$1$$anon$1$$anonfun$preStart$1.apply$mcV$sp(AkkaRpcEnv.scala:100)
atorg.apache.spark.rpc.akka.AkkaRpcEnv.org$apache$spark$rpc$akka$AkkaRpcEnv$$safelyCall(AkkaRpcEnv.scala:197)
at org.apache.spark.rpc.akka.AkkaRpcEnv$$anonfun$actorRef$lzycompute$1$1$$anon$1.preStart(AkkaRpcEnv.scala:99)
at akka.actor.ActorCell.create(ActorCell.scala:562)
at akka.actor.ActorCell.invokeAll$1(ActorCell.scala:425)
at akka.actor.ActorCell.systemInvoke(ActorCell.scala:447)
at akka.dispatch.Mailbox.processAllSystemMessages(Mailbox.scala:262)
at akka.dispatch.Mailbox.run(Mailbox.scala:218)
atakka.dispatch.ForkJoinExecutorConfigurator$AkkaForkJoinTask.exec(AbstractDispatcher.scala:386)
at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
atscala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
atscala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)
Caused by:java.lang.ClassNotFoundException: com.fasterxml.jackson.databind.Module
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
... 26 more
17/04/06 23:11:59 ERROR ErrorMonitor:Uncaught fatal error from thread [sparkMaster-akka.actor.default-dispatcher-4]shutting down ActorSystem [sparkMaster]
java.lang.NoClassDefFoundError:com/fasterxml/jackson/databind/Module
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:278)
at org.apache.spark.util.Utils$.classForName(Utils.scala:173)
atorg.apache.spark.metrics.MetricsSystem$$anonfun$registerSinks$1.apply(MetricsSystem.scala:190)
atorg.apache.spark.metrics.MetricsSystem$$anonfun$registerSinks$1.apply(MetricsSystem.scala:186)
atscala.collection.mutable.HashMap$$anonfun$foreach$1.apply(HashMap.scala:98)
at scala.collection.mutable.HashMap$$anonfun$foreach$1.apply(HashMap.scala:98)
atscala.collection.mutable.HashTable$class.foreachEntry(HashTable.scala:226)
at scala.collection.mutable.HashMap.foreachEntry(HashMap.scala:39)
at scala.collection.mutable.HashMap.foreach(HashMap.scala:98)
atorg.apache.spark.metrics.MetricsSystem.registerSinks(MetricsSystem.scala:186)
at org.apache.spark.metrics.MetricsSystem.start(MetricsSystem.scala:100)
at org.apache.spark.deploy.master.Master.onStart(Master.scala:152)
atorg.apache.spark.rpc.akka.AkkaRpcEnv$$anonfun$actorRef$lzycompute$1$1$$anon$1$$anonfun$preStart$1.apply$mcV$sp(AkkaRpcEnv.scala:100)
atorg.apache.spark.rpc.akka.AkkaRpcEnv.org$apache$spark$rpc$akka$AkkaRpcEnv$$safelyCall(AkkaRpcEnv.scala:197)
atorg.apache.spark.rpc.akka.AkkaRpcEnv$$anonfun$actorRef$lzycompute$1$1$$anon$1.preStart(AkkaRpcEnv.scala:99)
at akka.actor.ActorCell.create(ActorCell.scala:562)
at akka.actor.ActorCell.invokeAll$1(ActorCell.scala:425)
atakka.actor.ActorCell.systemInvoke(ActorCell.scala:447)
at akka.dispatch.Mailbox.processAllSystemMessages(Mailbox.scala:262)
at akka.dispatch.Mailbox.run(Mailbox.scala:218)
at akka.dispatch.ForkJoinExecutorConfigurator$AkkaForkJoinTask.exec(AbstractDispatcher.scala:386)
at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
atscala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
atscala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)
Caused by:java.lang.ClassNotFoundException: com.fasterxml.jackson.databind.Module
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
... 26 more
17/04/06 23:12:00 WARN MetricsSystem:Stopping a MetricsSystem that is not running
17/04/06 23:12:00 ERROR AkkaRpcEnv: Ignoreerror: null
java.lang.NullPointerException
at org.apache.spark.deploy.master.Master.onStop(Master.scala:198)
at org.apache.spark.rpc.akka.AkkaRpcEnv$$anonfun$actorRef$lzycompute$1$1$$anon$1$$anonfun$postStop$1.apply$mcV$sp(AkkaRpcEnv.scala:143)
atorg.apache.spark.rpc.akka.AkkaRpcEnv.org$apache$spark$rpc$akka$AkkaRpcEnv$$safelyCall(AkkaRpcEnv.scala:197)
at org.apache.spark.rpc.akka.AkkaRpcEnv$$anonfun$actorRef$lzycompute$1$1$$anon$1.postStop(AkkaRpcEnv.scala:142)
atakka.actor.dungeon.FaultHandling$class.akka$actor$dungeon$FaultHandling$$finishTerminate(FaultHandling.scala:201)
atakka.actor.dungeon.FaultHandling$class.terminate(FaultHandling.scala:163)
at akka.actor.ActorCell.terminate(ActorCell.scala:338)
at akka.actor.ActorCell.invokeAll$1(ActorCell.scala:431)
at akka.actor.ActorCell.systemInvoke(ActorCell.scala:447)
at akka.dispatch.Mailbox.processAllSystemMessages(Mailbox.scala:262)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:240)
at akka.dispatch.Mailbox.run(Mailbox.scala:219)
at akka.dispatch.ForkJoinExecutorConfigurator$AkkaForkJoinTask.exec(AbstractDispatcher.scala:386)
at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
atscala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
atscala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)
17/04/06 23:12:00 INFORemoteActorRefProvider$RemotingTerminator: Shutting down remote daemon.
17/04/06 23:12:00 INFORemoteActorRefProvider$RemotingTerminator: Remote daemon shut down; proceedingwith flushing remote transports.
17/04/06 23:12:01 INFO Remoting: Remotingshut down
17/04/06 23:12:01 INFORemoteActorRefProvider$RemotingTerminator: Remoting shut down.
問題解決
CLASSPATH中缺少jackson包
for f in$HADOOP_HOME/share/hadoop/mapreduce*/lib/*.jar; do
if[ "$SPARK_CLASSPATH" ]; then
export SPARK_CLASSPATH=$SPARK_CLASSPATH:$f
else
export SPARK_CLASSPATH=$f
fi
done
Spark Streaming除錯
使用sparkexample自帶的streaming用例進行測試:計算從資料伺服器監聽TCP套接字接收的文字資料字數。
1、 啟動netcat作為伺服器
nc –lk 9999
2、 啟動Streaming的例項
run-example streaming.NetworkWordCount 172.21.3.60 9999
3、 在終端netcat伺服器傳送資料
相關推薦
Spark叢集安裝及Streaming除錯
安裝前置條件 1. 系統需要安裝the Oracle Java Development Kit(not OpenJDK),安裝jdk1.7以上,下載目錄:http://www.oracle.com/technetwork/java/javase/downlo
Spark叢集安裝搭建
1.下載Spark Spark是一個獨立的記憶體計算框架,如果不考慮儲存的話,可以完全獨立執行,因此這裡就只安裝Spark叢集 Spark下載地址: http://spark.apache.org/downloads.html 選
Spark本地安裝及Linux下偽分散式搭建
title: Spark本地安裝及Linux下偽分散式搭建 date: 2018-12-01 12:34:35 tags: Spark categories: 大資料 toc: true 個人github部落格:Josonlee’s Blog 文章目錄
【Spark】Ubuntu16.04 spark 叢集安裝 (standalone模式)
一、前言 目前 Apache Spark 支援三種分散式部署方式,分別是: standalone spark on mesos spark on YARN 其中,第一種類似於MapReduce 1.0所採用的模式,內部實現了容錯性和資源管理,後兩種則是未來發
Bochs原始碼安裝及執行除錯
最近在讀《Orange's一個作業系統的實現》,開始部分介紹了虛擬機器Bochs的安裝及除錯,本文把折騰過程做下記錄。 作業系統:Ubuntu10.04(最新的版本老是有問題) 軟體版本:bochs 2.3.5(和書中保持一致) 1 更新Ubuntu 由於ubuntu 1
hadoop3節點叢集安裝,spark叢集安裝
一 : 修改機器名 1. 修改3臺機器的機器名,注意名字不要帶下劃線 修改機器名命令: hostnamectl set-hostname xxxx 然後退出shell重新登陸 修改3臺機器的hosts檔案 vim /etc/hosts 新增以下內容 192.107.53.157 had
Spark叢集安裝和WordCount編寫
一、Spark概述 官網:http://spark.apache.org/ Apache Spark™是用於大規模資料處理的統一分析引擎。 為大資料處理而設計的快速通用的計算引擎。 Spark加州大學伯克利分校AMP實驗室。不同於mapreduce的是一個Sp
Hadoop+Spark叢集安裝步驟詳解
一、環境:作業系統版本:SUSE Linux Enterprise Server 11 (x86_64) SP3主機名:192.168.0.10 node1192.168.0.11 node2192.168.0.12 node3192.168.0.13
hive on spark的安裝及問題
配置hive hive-site <property> <name>hive.metastore.uris</name> <value>thrift://database:9083</value>
Nginx+Tomcat+redis 叢集安裝及配置
下載及安裝: redis:http://blog.csdn.net/majian_1987/article/details/9672393 nginx:http://download.csdn.net/detail/cd4_5792/6974455 整合配置: 配置環境使
Spark原始碼分析-spark叢集啟動及任務執行
注: 因為基於Akka的Actor的RPC版本相對容易理解一點,本文分析使用的Spark版本如下: <dependency> <groupId>org.apache.spark</groupId> <
GDB+gdbserver 編譯安裝及qtcreator除錯
一、首先要做以下準備工作:(1)主機上安裝了交叉編譯工具。(2)下載GDB安裝包,地址:http://ftp.gnu.org/gnu/gdb/ http://ftp.gnu.org/gnu/gdb/gdb-7.8.tar.xz二、安裝GDB(1)解壓原
ElasticSearch5.x叢集安裝及測試
準備工作: 1.瞭解ES相關版本對應的JDK版本,ES5.x之後需要JDK1.7版本及以上 2.叢集環境為 IP port hostname 10.187.96.50 9200 kafka18750 10.187.96.51 9
spark叢集安裝與配置
Spark有三種執行模式,分別為: local模式-只執行在本地,相當於偽分散式 standalone模式-這種模式只需要安裝Spark即可,使用自帶的資源管理器 Spark on yarn/mesos模式-這種模式Spark將使用yarn/mesos作為資源管理器 一般來
Spark叢集安裝和使用
本文主要記錄 CDH5 叢集中 Spark 叢集模式的安裝過程配置過程並測試 Spark 的一些基本使用方法。 安裝環境如下: 作業系統:CentOs 6.5Hadoop 版本:cdh-5.3.0Spark 版本:cdh5-1.2.0_5.3.0關於 yum 源的配置以及 Hadoop 叢集的安裝,請參考
Spark叢集安裝
Spark的版本1.6.0,Scala的版本2.12,jdk版本1.8。最近使用spark,在這裡記錄
Spark叢集安裝方式2
環境: jdk1.8、hadoop-2.7、spark-1.6、三臺centos7(如下List-1所
安裝spark叢集及spark介紹
Spark的介紹 Hadoop與Strom Hadoop: MapReduce:為海量資料提供了計算,但只有Map和Reduce操作,操作不靈活。 HDFS(分散式檔案系統):為海量的資料提供了儲
大數據筆記(二十七)——Spark Core簡介及安裝配置
sin cli sca follow com clu 同時 graphx 信息 1、Spark Core: 類似MapReduce 核心:RDD 2、Spark SQL: 類似Hive,支持SQL 3、Spark Streaming:類似
Linux下安裝spark叢集
1、安裝scala 2、安裝Spark 3、配置Spark 修改配置檔案spark-env.sh,在解壓spark下的conf檔案中 將模板檔案複製出來 cp spark-env.sh.template spark-env.sh cp slave.template sl