Spark的环境搭建以及简单的eclipse的两种运行方式--standalone和yarn
来源:互联网 发布:灵鸾妮妮淘宝店 编辑:程序博客网 时间:2024/04/28 17:06
前言:会一些linux的基础,以及java基础。以及是先搭建好java环境,搭建环境是单机版。假定ip:192.168.248.133
步入正轨,我们直接来说说怎么搭建一个基于hadoop的spark环境。目的能够让spark将job提交到hadoop上处理。利用hadoop的分布式框架。
第一步:搭建hadoop的单机环境
1.在/etc/hostname 下修改对应的名字。 比如Master
2.修改etc/hosts 修改成192.168.248.133Master
3.首先在ubuntu上配置ssh免密码。
a.安装ssh : apt-get install ssh openssh-server
b.cd ~/.ssh(如果显示文件不存在。先输入ssh localhost命令)
c.ssh-keygen -t rsa (一直按回车)
d. cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys (将生成的公钥添加到ssh中)
e.尝试使用ssh localhost 进入 exit退出
4.下载hadoop2.6.0,并完成相应的配置
a.下载hadoop:wget http://apache.fayea.com/hadoop/core/hadoop-2.6.0/hadoop-2.6.0.tar.gz
b.解压到安装目录下 tar -zxvf hadoop-2.6.0.tar.gz
c.我是解压到 /home下的目录.然后进入到hadoop的目录下。
cd /opt/hadoop-2.6.0
就能看到hadoop的目录结构了。
5.修改配置文件 进入到hadoop目录下的etc/hadoop目录修改里面的配置文件
b.编辑 hdfs-site.xml
<configuration> <property> <name>dfs.namenode.secondary.http-address</name> <value>192.168.248.133:50090</value> </property> <property> <name>dfs.replication</name> <value>1</value> </property> <property> <name>dfs.namenode.name.dir</name> <value>/usr/share/hadoop/tmp/dfs/name</value> </property> <property> <name>dfs.datanode.data.dir</name> <value>/usr/share/hadoop/tmp/dfs/data</value> </property> <property> <name>dfs.permissions</name> <value>false</value> </property> </configuration>
<configuration><property><name>mapreduce.framework.name</name><value>yarn</value></property><property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property></configuration>
d.编辑 slave (有几个节点就添加几个节点,如果是配置单机版,就将里面的节点名改为主节点Master的节点名)
启动hadoop
准备:切换 Hadoop 的模式,不管是从集群切换到伪分布式,还是从伪分布式切换到集群,如果遇到无法正常启动的情况,可以删除所涉及节点的临时文件夹,这样虽然之前的数据会被删掉,但能保证集群正确启动。或者可以为集群模式和伪分布式模式设置不同的临时文件夹(未验证)。所以如果集群以前能启动,但后来启动不了,特别是 DataNode 无法启动,不妨试着删除所有节点(包括 Slave 节点)上的 tmp 文件夹,重新执行一次 bin/hdfs namenode -format,再次启动试试。
6.启动hadoop
a.cd /opt/hadoop-2.6.0
b.bin/hdfs namenode -format # 首次运行需要执行初始化,后面不再需要
sbin/start-all.sh
c.通过命令jps可以查看各个节点所启动的进程(我这个是事先搭建好了spark,没有搭建spark的就没有6个进程,没有master和worker进程)
6.节点都启动好了之后,打开她的监控页面 Master:8088
可以看到一个活跃的节点。到此hadoop环境已经搭建完成。需要优化可以在配置文件里添加一些优化信息。比如说日志的配置等等
第二步:搭建spark的单机环境
1.下载spark1.6.0.虽然现在spark2.0已经出来了,但是使用的不是太多。我们还是使用1.6.0的版本
a.wget http://d3kbcqa49mib13.cloudfront.net/spark-1.6.1-bin-hadoop2.6.tgz
我们选择预编译好的spark1.6.1的版本。也可自行编译。
2.同上hadoop。我们将其解压到安装目录下
tar -zxvf spark-1.6.1-bin-hadoop2.6.tgz
改个名字吧,这个文件夹名字有点长。 mv spark-1.6.1-bin-hadoop2.6 spark1.6
3.修改配置文件
a.将spark1.6里面的conf文件夹里面的模板文件全部替换成使用的文件。比如说 mv spark-env.sh.tmp spark-env.sh
在spark-env.sh中添加
export JAVA_HOME=export HADOOP_HOME=export SPARK_MASTER_IP=Master#export SPARK_MASTER_HOSTS=192.168.244.133export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoopexport SCALA_HOME=/opt/scala-2.11.8export SPARK_YARN_USER_ENV="CLASSPATH=/opt/hadoop-2.6.0/etc/hadoop"export SPARK_DIST_CLASSPATH=$(/opt/hadoop-2.6.0/bin/hadoop classpath)export SPARK_WORKER_MEMORY=2g
b.修改slave文件。将localhost换成Master
4.安装scala
a.下载scala wget http://downloads.lightbend.com/scala/2.11.8/scala-2.11.8.tgz
b.将scala解压到安装目录 tar -zxvf scala-2.11.8.tgz
c.将scala的路径配置到环境变量里。
在/etc/profile中添加
export SCALA_HOME=/opt/scala-2.11.8
export PATH=$SCALA_HOME/bin:$PATH
5.到此spark的单机版搭建完成。启动spark。
a.在spark安装目录下输入sbin/start-all.sh
b.jps输入我们就能看见worker和master节点了。
6.打开她的监控页面 Master:8080就能看见spark的监控页面
到这一步就代表spark已经搭建完成了。现在已经可以在spark上跑代码啦。
第三步:将eclipse作为开发环境
a.将hadoop-eclipse-plugin-2.6.0.jar放到eclipse里面的plugin文件夹目录下。
b. 启动eclipse。在eclipse中的window的preferences的Hadoop Map/Reduce下添加hadoop的路径。
c.创建一个hadoop的location
第四步:创建工程
1.创建一个简单的java工程。
a.在工程里面创建三个目录,分别是conf,lib,yarn
b.将spark目录下的conf下的所有配置文件放入到conf里面,将spark里面的lib下的spark-assembly-1.6.1-hadoop2.6.0.jar放入到lib,将hadoop下的etc下的hadoop里面core-site.xml hdfs-site.xml yarn-site.xml放到yarn文件夹里面。
2.基于spark的standslone模式
a.创建一个stanalone类
直接上代码:
public class stanalone{private static final Pattern SPACE = Pattern.compile(" ");public static void main(String[] args) {//创建sparkConfSparkConf conf = new SparkConf().setAppName("standaloneTest").setMaster("spark://master:7077");JavaSparkContext sc = new JavaSparkContext(conf);JavaRDD rdd= Arrays.asList(1,2.2,5);JavaRDD dis =sc.parallelize(rdd);System.out.println("array num = "+dis.count());//控制台打印出array的个数 4sc.stop();
到此我们看见我们已经成功的在spark上运行了一个简单的计数。
2.基于spark的yarn模式
a.创建一个stanalone类
直接上代码:
public class stanalone{private static final Pattern SPACE = Pattern.compile(" ");public static void main(String[] args) {//创建sparkConfSparkConf conf = new SparkConf().setAppName("yarn").setMaster("yarn-client");//根据官网上面的提示conf.set("spark.yarn.dist.files","/conf/yarn-site.xml");conf.set("spark.yarn.jar","/lib/spark-assembly-1.6.1-hadoop2.6.0.jar");JavaSparkContext sc = new JavaSparkContext(conf);//将工程打包成jar test.jarsc.addJar("test.jar");JavaRDD rdd= Arrays.asList(1,2.2,5);JavaRDD dis =sc.parallelize(rdd);System.out.println("array num = "+dis.count());//控制台打印出array的个数 4sc.stop();
到此我们看见我们已经成功的在hadoop上运行了一个简单的计数。
整个过程到此结束。
- Spark的环境搭建以及简单的eclipse的两种运行方式--standalone和yarn
- spark在yarn上面的运行模型:yarn-cluster和yarn-client两种运行模式:
- Spark运行环境的安装(Standalone)
- Spark的standalone环境搭建(1.6.0)
- Spark的StandAlone模式环境搭建
- Spark Standalone与Spark on YARN的几种提交方式
- Spark的三种分布式部署模式:Standalone, Mesos,Yarn
- spark的standalone集群搭建
- spark学习十 yarn环境的搭建以及spark程序测试
- 在Eclipse上运行Spark(Standalone,Yarn-Client)
- Spark Standalone 以及 HDFS系统环境搭建
- Spark standalone下的运行过程
- spark的yarn模式运行
- Spark on yarn--几种提交集群运行spark程序的方式
- Spark的Standalone部署
- Eclipse中mahout运行环境的搭建以及推荐实例
- 简单的两种浏览器环境搭建
- jetty启动的两种方式: standalone启动和scala程序内嵌启动
- 聚焦关键数据——Cognos Analytics V11 R4 Data Sets 深度介绍
- 共用体重点总结
- eclipse背景主题设置
- 前端webapp开发资料分享
- REDIS并行多线程写入时出现“如果基础流不可搜寻,则当读取缓冲区不为空时,将无法写入到 BufferedStream。”解决办法
- Spark的环境搭建以及简单的eclipse的两种运行方式--standalone和yarn
- jdk8之Stream
- MySQL字段类型详解
- HDU - 2566 统计硬币(常数时间解法)
- Hadoop学习之网络爬虫+分词+倒排索引实现搜索引擎案例
- PSBs的总不良资产在7-9月上升近0.8万卢比
- linux安装mysql yum版本
- JavaScript小技巧(一)
- dbms_metadata.get_ddl 的使用方法总结