spark集群的啟動過程:
1.啟動Hadoop:
①初始化:hadoop namenode -format
②啟動服務:start-dfs.sh + start-yarn.sh (或者直接start-all.sh)
③查看進程:jps
啟動成功的話會顯示6條進程,如下圖所示:

2.啟動spark:
Hadoop啟動成功后,cd到spark目錄下,執行sbin/start-all.sh,
查看進程會發現多了worker和master

可以通過WEB端進行查看:
namenode端口:50070
yarn端口:8088
spark集群端口:8080
spark-job監控端口:4040


此時spark集群就啟動成功了。
不過很多朋友們會經常遇到DataNode啟動失敗的情況,即進程中缺少DataNode。以下是我個人的解決方案:
到Hadoop目錄下的/tmp/dfs可以看到兩個目錄:name和data,分別找到該目錄下的VERSION文件,查看其clusterID,修改data中的clusterID使其與與name中的clusterID保持相同。如果相同,則datanode可正常啟動。

當我們執行初始化:hadoop namenode -format時,會出現個詢問,如下圖,此處如果選擇Y,則/tmp/dfs下name夾子會更新,進而version文件中的clusterID會發生變化,導致data文件的clusterID與name的clusterID不同,此時則無法正常啟動datanode,所以提醒大家記得選N,避免不必要的麻煩。

