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 -format
start-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
--启动Hadoop
start-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/*
重新格式化,启动。检测是否成功参考资料中的第一章,第三步。
Spark集群搭建中的问题的更多相关文章
- Spark集群搭建简要
Spark集群搭建 1 Spark编译 1.1 下载源代码 git clone git://github.com/apache/spark.git -b branch-1.6 1.2 修改pom文件 ...
- Spark集群搭建简配+它到底有多快?【单挑纯C/CPP/HADOOP】
最近耳闻Spark风生水起,这两天利用休息时间研究了一下,果然还是给人不少惊喜.可惜,笔者不善JAVA,只有PYTHON和SCALA接口.花了不少时间从零开始认识PYTHON和SCALA,不少时间答了 ...
- Spark集群搭建_YARN
2017年3月1日, 星期三 Spark集群搭建_YARN 前提:参考Spark集群搭建_Standalone 1.修改spark中conf中的spark-env.sh 2.Spark on ...
- spark集群搭建
文中的所有操作都是在之前的文章scala的安装及使用文章基础上建立的,重复操作已经简写: 配置中使用了master01.slave01.slave02.slave03: 一.虚拟机中操作(启动网卡)s ...
- Spark 集群搭建
0. 说明 Spark 集群搭建 [集群规划] 服务器主机名 ip 节点配置 s101 192.168.23.101 Master s102 192.168.23.102 Worker s103 19 ...
- hadoop+spark集群搭建入门
忽略元数据末尾 回到原数据开始处 Hadoop+spark集群搭建 说明: 本文档主要讲述hadoop+spark的集群搭建,linux环境是centos,本文档集群搭建使用两个节点作为集群环境:一个 ...
- Spark集群搭建(local、standalone、yarn)
Spark集群搭建 local本地模式 下载安装包解压即可使用,测试(2.2版本)./bin/spark-submit --class org.apache.spark.examples.SparkP ...
- (四)Spark集群搭建-Java&Python版Spark
Spark集群搭建 视频教程 1.优酷 2.YouTube 安装scala环境 下载地址http://www.scala-lang.org/download/ 上传scala-2.10.5.tgz到m ...
- Spark集群搭建_Standalone
2017年3月1日, 星期三 Spark集群搭建_Standalone Driver: node1 Worker: node2 Worker: node3 1.下载安装 下载地址 ...
随机推荐
- chapter9_4 非抢占式的多线程
协同程序与常规的多线程不同之处:协同程序是非抢占式的. 当一个协同程序运行时,是无法从外部停止它的.只有当协同程序显式地调用yield时,它才会停止. 当不存在抢先时,编程会变得简单很多,无须为同步的 ...
- xTiNt 论坛发帖辅助软件 1.0 绿色版
软件名称:xTiNt 论坛发帖辅助软件 1.0 绿色版软件语言: 简体中文授权方式: 免费软件应用平台: Win7 / Vista / Win2003 / WinXP / Win2008 软件大小: ...
- 一些常见warning的原因和解决方法
在入职三周后,终于赶齐了接手项目落下两个月的项目,有了一些自己的空闲时间对项目进行整理.主要整理包括类目的整合,从原来一个系统文件夹下几百个文件整改为以MVC设计思想为原则的分文件夹整理类目,井然有序 ...
- jquery1.8.3和1.11.3的用法区别
学习js啦dom的对象 发现好复杂 不够简洁 所以我就用法强大的jquery来做功课 突然就遇到attr的方法对复选属性的checked取不了值 给我返回undefined 我查好久都没查出问题 结果 ...
- VBS基础篇 - 对象(7) - TextStream对象
VBS基础篇 - 对象(7) - TextStream对象 TextStream对象是用于访问文本文件的对象,它是FileSystemObject一个独立的附属对象,但在使用TextStream对 ...
- IP相关常识
IP相关常识 一. IP地址概念 IP地址是一个32位的二进制数,它由网络ID和主机ID两部份组成,用来在网络中唯一的标识的一台计算机.网络ID用来标识计算机所处的网段:主机ID用来标识计算机在网段 ...
- Chapter 1 First Sight——27
Throughout all this conversation, my eyes flickered again and again to the table where the strange f ...
- hdu_1950_Bridging signals(LIS)
题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=1950 题意:实际就是求最长递增子序列 题解:有两种解法,一种是利用二分,一种是用线段树 这个是这题的二 ...
- A框架 第二部 实例化接收到的get类,调用父类抽象方法,自动执行方法call_user_func_array()
01父类抽象类 abstract.php <?phpabstract class controller_abstract{ protected $app; function __construc ...
- 购物车(Shopping cart) —— B2C网站核心产品设计 (二)
购物车是做什么的? 我们先来看一下现实超市中的购物车,一个带四个轱辘的铁筐子,客人推来推去,看到什么东西喜欢,就扔进去,觉得东西差不多了,就推到收银台. 那B2C网站中的购物车又是一个什么东西呢? 从 ...