日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Spark集群搭建中的问题

發布時間:2025/5/22 编程问答 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Spark集群搭建中的问题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
參照《Spark實戰高手之路》學習的,書籍電子版在51CTO網站 資料鏈接
Hadoop下載[鏈接](http://archive.apache.org/dist/hadoop/core/hadoop-1.2.1/) JDK下載[鏈接](http://www.oracle.com/technetwork/java/javase/downloads/index.html)

1.安裝好vmvare和Ubuntu虛擬機后,不能使用vim,出現Package has no installation candidate的問題。
解決方法:apt-get upgrade — apt-get install vim 有時候也要看看是否聯網。

2.設置共享文件夾,參考別人的經驗,安裝vmware-tools 以及 設置共享文件夾

(1)在虛擬機系統沒有運行的情況下,點擊虛擬機工具欄的VM settings->options->Shared Folders,按照提示添加一個你要共享的windows下的文件夾。
(2)安裝vmtools,vmtools安裝成功后會看到目錄/mnt/hgfs.如果沒有該目錄則可以手動建立
(3)ubuntu終端下運行 sudo apt-get install open-vm-dkms
(4)進入目錄:/etc/init.d,把”sudo mount -t vmhgfs .host:/ /mnt/hgfs”寫到open-vm-tools文件的最后一行(需要root權限,可以用命令:sudo vi open-vm-tools)。
(5)在當前目錄:/etc/init.d/運行,”sudo ./open-vm-tools restart”,運行成功后你會在目錄:/mnt/hgfs下面看到你共享的文件夾

查看VMware tools 有沒有安裝成功,使用命令 lsmod 查看有沒有vmhgfs這個,如果沒有則重新安裝。這個共享文件夾沒有成功,后面有時間再說吧。

3.Hadoop啟動與停止

start-all.sh: 啟動所有的Hadoop守護進程。包括NameNode、 Secondary NameNode、DataNode、JobTracker、 TaskTrack 。

start-dfs.sh: 啟動Hadoop HDFS守護進程NameNode SecondaryNameNode和DataNode。

hadoop-daemons.sh: start namenode 單獨啟動NameNode守護進程。

hadoop-daemons.sh: start datanode 單獨啟動DataNode守護進程

hadoop-daemons.sh: stop secondarynamenode 單獨停止SecondaryNameNode守護進程。

stop-mapred.sh: 停止Hadoop MapReduce守護進程JobTracker和TaskTracker。

hadoop-daemons.sh: stop jobtracker 單獨停止JobTracker守護進程

hadoop-daemons.sh: stop tasktracker 單獨啟動TaskTracker守護進程。

如果Hadoop集群是第一次啟動,可以用start-all.sh。比較常用的啟動方式是一個一個守護進程來啟動,啟動的步驟如下。

1.啟動Hadoop的HDFS模塊里的守護進程HDFS里面的守護進程啟動也有順序,即:

1)啟動NameNode守護進程;> 2)啟動DataNode守護進程; 3)啟動SecondaryNameNode守護進程。

2.啟動MapReduce模塊里面的守護進程MapReduce的守護進程啟動也是有順序的,即:

1)啟動 JobTracker守護進程; 2)啟動TaskTracker守護進程。> 關閉的步驟正好相反,在這里就不描述了,讀者可以自己試一下。

注意正常情況下,我們是不使用start-all.sh和stop-all.sh來啟動和停止Hadoop集群的。這樣出錯了不好找原因。建議讀者一個一個守護進程來啟動,哪個啟動失敗就去看相應的log日志,這樣就縮小了找錯的范圍。

4.Hadoop啟動的時候遇到的錯誤,基本安裝完后通過命令“jps”查看,但是只啟動了jps,其他都不能正常啟動,查看對應的log日志文件(vim查看),一個錯誤原因是配置文件寫錯了,改過后可以正常啟動jobtracker、tasktracker;另一個原因就是目錄訪問權限不一致;
報錯:

ERROR:org.apache.hadoop.hdfs.server.datanode.DataNode:All directories in dfs.data.dir are invalid warn。

WARN :org.apache.hadoop.hdfs.server.datanode.DataNode: Invalid directory in dfs.data.dir: Incorrect permission for /home/hadoop/dfs/data, expected: rwxr-xr-x, while actual: rwxrwxrwx。

使用命令修改目錄訪問權限。需要將777權限改為755權限才行。
可以參考博客。
5. namenode日志文件中出現

java.io.IOException:NameNode is not formatted

需要刪除core-site.xml配置文件中配置的tmp目錄下的所有的文件,停止Hadoop,再重新格式化命名,啟動Hadoop。
進入Hadoop目錄,運行以下程序:

rm -rf tmp/*rm -rf /tmp/hadoop*rm -rf hdfs/name/*rm -rf hdfs/data/*--然后重新格式化,啟動hadoop namenode -formatstart-all.sh

6.搭建Spark時,啟動錯誤:

Failed to find Spark assembly in /usr/lib/spark/spark-1.6.1/assembly/target/scala-2.10

錯誤原因是spark包下錯了,應該下載prebuild包,Choose a package type 可以選擇啊~~~
7.啟動Spark后,開啟spark-shell,出現錯誤:

java.lang.RuntimeException: java.lang.RuntimeException: The root scratch dir: /tmp/hive on HDFS should be writable. Current permissions are: rwx--x--x

需要修改訪問/tmp文件權限

hadoop fs -chmod -R 777 /tmp
hadoop fs -ls /tmp

以上完成Spark集群搭建過程,后面每次開機使用,需要先啟動Hadoop集群,再啟動Spark集群。

--格式化hadoop namenode -format--啟動Hadoopstart-all.sh--使用jps查看是否啟動成功,成功,再啟動Spark,進入到spark的sbin目錄./start-all.sh

如果hadoop啟動失敗,可查看日志文件判別錯誤,一般都是因為每次使用“hadoop namenode -format”命令格式化文件系統時會出現一個新的namenodeId,搭建平臺時自己往tmp中放了數據,所以需要刪除,以防沖突,進入Hadoop文件所在目錄(hadoop1.2.1目錄)
執行:

rm -rf tmp/*rm -rf /tmp/hadoop*rm -rf hdfs/name/*rm -rf hdfs/data/*

重新格式化,啟動。檢測是否成功參考資料中的第一章,第三步。

轉載于:https://www.cnblogs.com/yiruparadise/p/5502870.html

總結

以上是生活随笔為你收集整理的Spark集群搭建中的问题的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。