pig2 发表于 2014-7-10 23:56:21

Spark1.0.0 开发环境快速搭建

本帖最后由 pig2 于 2014-7-11 00:52 编辑

问题导读:
1.spark是运行在什么平台的软件?
2.如何搭建开发环境?
3.spark调试有几种方法?


static/image/hrline/4.gif




为了解析一些概念、解析一些架构、代码测试,搭建了一个实验平台,如下图所示:



      本实验平台是在一台物理机上搭建的,物理机的配置是16G内存,4核8线程CPU。平台的环境配置如下:

机器名 配置 角色 软件安装
hadoop1 2G内存,双核 hadoop:NN/DN Spark:Master/worker /app/hadoop/hadoop220/app/hadoop/spark100
/app/scala2104
/usr/java/jdk1.7.0_21

hadoop2 2G内存,双核 hadoop:DN Spark:worker /app/hadoop/hadoop220/app/hadoop/spark100
/app/scala2104
/usr/java/jdk1.7.0_21

hadoop3 2G内存,双核 hadoop:DN Spark:worker /app/hadoop/hadoop220/app/hadoop/spark100
/app/scala2104
/usr/java/jdk1.7.0_21

wyy 16G内存,四核 client /app/hadoop/hadoop220

以上hadoop和spark安装目录的用户属性都是hadoop(组别为hadoop),其他的安装目录的用户属性是root:root。

      实验平台搭建顺序
1:虚拟集群的搭建
A:hadoop2.2.0集群搭建
hadoop2.2完全分布式最新高可靠安装文档


B:Spark1.0.0 Standalone集群搭建
参见博客 Spark1.0.0 on Standalone 模式部署

2:开发端的搭建
      客户端采用的Ubuntu操作系统,而Spark虚拟集群采用的是CentOS,默认的java安装目录两个操作系统是不一样的,所以在Ubuntu下安装java的时候特意将java的安装路径改成和CentOS一样。不然的话,每次scp了虚拟集群的配置文件之后,要修改hadoop-env.sh中的java配置。
      客户端hadoop2.2.0和Spark1.0.0是直接从虚拟集群中scp出来的,放置在相同的目录下,拥有相同的用户属性。
      开发用的IDE采用IntelliJ IDEA,项目的搭建参见使用IntelliJ IDEA开发Spark1.0.0应用程序。
      应用程序的部署和调试参见应用程序部署工具spark-submit 。

3:实验数据来源
      实验用的数据来源于搜狗实验室下载地址为:http://download.labs.sogou.com/resources.html?v=1

[*]互联网语料库(SogouT)
[*]网页搜索结果评价(SogouE)
[*]链接关系库(SogouT-Link)
[*]SogouRank库(SogouT-Rank)
[*]用户查询日志(SogouQ)
[*]互联网词库(SogouW)


4:伪分布式实验平台搭建
      上面的实验平台是将hadoop集群、Spark集群和开发环境分离,更接近生产系统;但很多朋友的物理机配置可能偏低,那样的话可以采用伪分布式部署。但伪分布式会有一些缺陷:

[*]spark的数据本地性不易测试
[*]对于并行性不易理解
[*]job调度不易理解

      至于伪分布式的部署很简单,步骤和虚拟集群搭建差不多,只要修改两个地方:

[*]ssh无密码登陆只需要ssh一下本机
[*]hadoop和spark的配置文件salves修改成本机机器名


5:调试工具

[*]Spark1.0.0 history server 配置和使用
[*]日志配置
[*]job server配置




tt7734 发表于 2014-11-4 18:50:33

谢谢 十分有用

Victor-Shy 发表于 2015-1-21 17:03:48

哎,,spark编译不过去,,,

xuliang123789 发表于 2015-12-1 14:48:54

感谢楼主,收藏了,谢谢楼主,赞~~

ghzx071458 发表于 2017-5-8 16:11:12

谢谢楼主。。。。。。。。。。。
页: [1]
查看完整版本: Spark1.0.0 开发环境快速搭建