spark中webUI的啟動、除錯、配置歷史伺服器,spark-Master-HA等
Spark WEBUI
【Jobs,Stages,StorageLevel,Environment,Executors,SQL,Streaming 】
4040埠可以看到當前application中的所有的job,點選job可以看到當前job下對應的stage,點選stage出現stage下的task。
上傳檔案:
hdfs dfs -put /root/test/words /spark/data/
進入到Scala程式設計:去bin目錄下:
./spark-shell --master spark://node01:7077
8080:sparkmaster
7077:sparkmaster提交的埠
8081:sparkworker的webUI埠
4040:web的埠
執行(必須要在active狀態下啟動):
sc.textFile("hdfs://node01:8080/spark/data/words").flatMap(_.split(" ")).map((_,1)).reduceByKey(_+_).collect()
Local:預設的是1
叢集,預設的是2
定義:
Val Rdd1= sc.textFile("hdfs://node01:8080/spark/data/words")
觸發執行:
Rdd1.cache()
Cache是一個懶運算元,需要觸發:
Rdd1.count()
Reducebykey:預聚合的
解除安裝清空記憶體:
Rdd1.unpersist(),解除安裝掉記憶體中的資料
提交:
./spark-shell --master spark://node01:7077 --conf spark.eventLog.enabled=true --conf spark.eventlog.dir=hdfs://node01:8080/spark/log --name aaa
在這之前需要在spark資料夾下建立log檔案
./spark-shell --master spark://node01:7077 --name bbb
檢視歷史,在sbin目錄下:
./start-history-server.sh
18080:歷史伺服器的埠
8088:yarn的埠
8080:spark叢集的master埠
7077:spark提交的時候的埠號
4040:option的埠
6379:redis的埠
設定以壓縮格式儲存:
在conf目錄下:
Spark-dafaults.conf檔案下:
壓縮格式儲存提交:
./spark-shell --master spark://node01:7077 --name ccc
在hdfs下檢視檔案:
Hdfs dfs -cat /root/test/words
檢視歷史記錄:
首先配置:
Conf下default下:
spark.history.fs.logDirectory hdfs://node01:8080/spark/log
然後去sbin目錄下啟動:
./start-history-server
歷史伺服器埠:18080
在hdfs上檢視檔案內容:
Hdfs dfs -cat /spark/log/app-...
spark-Master-HA
基於zookeeper,在standby的條件下的,與yarn,等無關
在conf下的spark-env.sh檔案下設定:
export SPARK_DAEMON_JAVA_OPTS="-Dspark.deploy.recoveryMode=ZOOKEEPER -Dsp
ark.deploy.zookeeper.url=node02:2181,node03:2181,node04:2181 -Dspark.deploy.zookeeper.dir=/MasterHA0723"
複製分發:
scp ./spark-env.sh node04:`pwd`
在node01下
啟動所有
在node02下設定master為node02,並單獨啟動master
這樣:node01為alive
Node02為standby備用
當node01被掛了的時候,node02起來頂替
啟動執行:
./spark-submit --master spark://node01:7077,node02:707
7 --class org.apache.spark.examples.SparkPi ../lib/spark-examples-1.6.0-hadoop2.6.0.jar 100
Master啟動起來之後,都是driver和executor之間活動,master之間的來回切換不影響