【转】搭建spark环境 单机版
本文将介绍Apache Spark 1.6.0在单机的部署,与在集群中部署的步骤基本一致,只是少了一些master和slave文件的配置。直接安装scala与Spark就可以在单机使用,但如果用到hdfs系统的话hadoop和jdk也要配置,建议全部安装配置好。
我的博客原文地址链接:http://blog.tomgou.xyz/spark-160-dan-ji-an-zhuang-pei-zhi.html
0.Spark的安装准备
Spark官网的文档 http://spark.apache.org/docs/latest/ 里是这样说的:
Spark runs on Java 7+, Python 2.6+ and R 3.1+. For the Scala API, Spark 1.6.0 uses Scala 2.10. You will need to use a compatible Scala version (2.10.x).
我的电脑环境是Ubuntu 14.04.4 LTS,还需要安装:
1.安装jdk
解压jdk安装包到任意目录:
cd /home/tom
$ tar -xzvf jdk-8u73-linux-x64.tar.gz
$ sudo vim /etc/profile
编辑/etc/profile文件,在最后加上java环境变量:
export JAVA_HOME=/home/tom/jdk1.8.0_73/
export JRE_HOME=/home/tom/jdk1.8.0_73/jre
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
保存并更新/etc/profile:
$ source /etc/profil
查看是否成功:
$ java -version
2.配置ssh localhost
确保安装好ssh:
$ sudo apt-get update
$ sudo apt-get install openssh-server
$ sudo /etc/init.d/ssh start
生成并添加密钥:
$ ssh-keygen -t rsa
$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
$ chmod 0600 ~/.ssh/authorized_keys
如果已经生成过密钥,只需执行后两行命令。
测试ssh localhost
$ ssh localhost
$ exit
3.安装hadoop2.6.0
解压hadoop2.6.0到任意目录:
$ cd /home/tom
$ wget http://apache.claz.org/hadoop/common/hadoop-2.6.0/hadoop-2.6.0.tar.gz
$ tar -xzvf hadoop-2.6.0.tar.gz
编辑/etc/profile文件,在最后加上java环境变量:
export HADOOP_HOME=/home/tom/hadoop-2.6.0
export HADOOP_INSTALL=$HADOOP_HOME
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export YARN_HOME=$HADOOP_HOME
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin
编辑$HADOOP_HOME/etc/hadoop/hadoop-env.sh文件
$ vim $HADOOP_HOME/etc/hadoop/hadoop-env.sh
在最后加上:
export JAVA_HOME=/home/mi/jdk1.8.0_73/
修改Configuration文件:
$ cd $HADOOP_HOME/etc/hadoop
修改core-site.xml:
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
修改hdfs-site.xml:
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.name.dir</name>
<value>file:///home/mi/hadoopdata/hdfs/namenode</value>
</property>
<property>
<name>dfs.data.dir</name>
<value>file:///home/mi/hadoopdata/hdfs/datanode</value>
</property>
</configuration>
第一个是dfs的备份数目,单机用1份就行,后面两个是namenode和datanode的目录。
修改mapred-site.xml:
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
修改yarn-site.xml:
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
初始化hadoop:
$ hdfs namenode -format
启动
$ $HADOOP_HOME/sbin/start-all.sh
停止
$ $HADOOP_HOME/sbin/stop-all.sh
检查WebUI,浏览器打开端口:http://localhost:8088
port 8088: cluster and all applications
port 50070: Hadoop NameNode
port 50090: Secondary NameNode
port 50075: DataNode
hadoop运行后可使用jps命令查看,得到结果:
10057 Jps
9611 ResourceManager
9451 SecondaryNameNode
9260 DataNode
9102 NameNode
9743 NodeManager
4.安装scala
解压scala安装包到任意目录:
$ cd /home/tom
$ tar -xzvf scala-2.10.6.tgz
$ sudo vim /etc/profile
在/etc/profile文件的末尾添加环境变量:
export SCALA_HOME=/home/tom//scala-2.10.6
export PATH=$SCALA_HOME/bin:$PATH
保存并更新/etc/profile:
$ source /etc/profil
查看是否成功:
$ scala -version
5.安装Spark
解压spark安装包到任意目录:
$ cd /home/tom
$ tar -xzvf spark-1.6.0-bin-hadoop2.6.tgz
$ mv spark-1.6.0-bin-hadoop2.6 spark-1.6.0
$ sudo vim /etc/profile
在/etc/profile文件的末尾添加环境变量:
export SPARK_HOME=/home/tom/spark-1.6.0
export PATH=$SPARK_HOME/bin:$PATH
保存并更新/etc/profile:
$ source /etc/profil
在conf目录下复制并重命名spark-env.sh.template为spark-env.sh:
$ cp spark-env.sh.template spark-env.sh
$ vim spark-env.sh
在spark-env.sh中添加:
export JAVA_HOME=/home/tom/jdk1.8.0_73/
export SCALA_HOME=/home/tom//scala-2.10.6
export SPARK_MASTER_IP=localhost
export SPARK_WORKER_MEMORY=4G
启动
$ $SPARK_HOME/sbin/start-all.sh
停止
$ $SPARK_HOME/sbin/stop-all.sh
测试Spark是否安装成功:
$ $SPARK_HOME/bin/run-example SparkPi
得到结果:
Pi is roughly 3.14716
检查WebUI,浏览器打开端口:http://localhost:8080
原文链接:https://segmentfault.com/a/1190000004508993
【转】搭建spark环境 单机版的更多相关文章
- 搭建Spark的单机版集群
一.创建用户 # useradd spark # passwd spark 二.下载软件 JDK,Scala,SBT,Maven 版本信息如下: JDK jdk-7u79-linux-x64.gz S ...
- 在Ubuntu里搭建spark环境
注意:1.搭建环境:Ubuntu64位,Linux(也有Windows的,我还没空试) 2.一般的配置jdk.Scala等的路径环境是在/etc/profile里配置的,我自己搭建的时候发 ...
- 搭建spark环境
1.wget http://www.apache.org/dyn/closer.cgi/spark/spark-1.2.0/spark-1.2.0-bin-hadoop2.4.tgz
- Intellij IDEA使用Maven搭建spark开发环境(scala)
如何一步一步地在Intellij IDEA使用Maven搭建spark开发环境,并基于scala编写简单的spark中wordcount实例. 1.准备工作 首先需要在你电脑上安装jdk和scala以 ...
- 沉淀,再出发——在Hadoop集群的基础上搭建Spark
在Hadoop集群的基础上搭建Spark 一.环境准备 在搭建Spark环境之前必须搭建Hadoop平台,尽管以前的一些博客上说在单机的环境下使用本地FS不用搭建Hadoop集群,可是在新版spark ...
- 使用Docker搭建Spark集群(用于实现网站流量实时分析模块)
上一篇使用Docker搭建了Hadoop的完全分布式:使用Docker搭建Hadoop集群(伪分布式与完全分布式),本次记录搭建spark集群,使用两者同时来实现之前一直未完成的项目:网站日志流量分析 ...
- Centos搭建spark
Centos搭建spark 一.spark介绍 二.spark安装前提 三.集群规划 四.spark安装 五.修改spark环境变量 六.修改spark-env.sh 七.修改slaves 八.将安装 ...
- 实验室中搭建Spark集群和PyCUDA开发环境
1.安装CUDA 1.1安装前工作 1.1.1选取实验器材 实验中的每台计算机均装有双系统.选择其中一台计算机作为master节点,配置有GeForce GTX 650显卡,拥有384个CUDA核心. ...
- 学习Spark——环境搭建(Mac版)
大数据情结 还记得上次跳槽期间,与很多猎头都有聊过,其中有一个猎头告诉我,整个IT跳槽都比较频繁,但是相对来说,做大数据的比较"懒"一些,不太愿意动.后来在一篇文中中也证实了这一观 ...
随机推荐
- Webstorm 快捷键大全 整理收录
"工欲善其事,必先利其器" 作为一名开发人员,好用的工具能让你效率更高,剩下的时间用来偷懒吹牛逼吧... 以下整理Webstorm快捷键大全 Windows版本 注释(// 或 ...
- 自动微分方法(auto diff)
学习机器学习的同学在学习过程中会经常遇到一个问题,那就是对目标函数进行求微分,线性回归这类简单的就不说.复杂的如神经网络类那些求导过程的酸爽.像我还是那种比较粗心的人往往有十导九错,所以说自动求导就十 ...
- 实战-CentOS6.8配置nfs服务
如题 #服务端:请自行配置yum源 命令操作:yum install nfs-utils rpcbind #配置文件编辑:vi /etc/exports /data 0.0.0.0 (rw,sync, ...
- 使用fastdfs-zyc监控FastDFS文件系统
1.安装jdk运行环境 jdk下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html 此处我使用的jdk7U99 ...
- Git基本使用命令(windows)
1. 记住一个名词repository版本库 =======================基本操作======================== git init 在需要的地方建立一个版本库(也 ...
- HDU4466 Triangle
题意:给一个长为N的铁丝,问你有几种方法将其划分为若干段,使得每一段都能围成一个边长为整数的三角形,并且围成的三角形都相似 思路其实很明显,三角形的周长必定是N的约数,那么答案就是周长C能围城的三角形 ...
- NOI导刊2010提高装备运输
www.luogu.org/problem/show?pid=1794 挺裸的一题背包,算很基础. 可以运用的技巧是三维->二维(节省空间还能少敲一点代码 #include<iostrea ...
- this的取值
在函数中this到底取何值,是在函数真正被调用执行的时候确定的,函数定义的时候确定不了. 情况1:构造函数 function Foo(){ this.name="王福朋" this ...
- PHP运算符优先级 运算符分类
运算符 运算符是可以通过给出的一或多个值(用编程行话来说,表达式)来产生另一个值(因而整个结构成为一个表达式)的东西. 运算符可按照其能接受几个值来分组.一元运算符只能接受一个值,例如 !(逻辑取反运 ...
- Android笔记(五)利用Intent启动活动
Intent是意图的意思,分为显式 Intent 和隐式 Intent. 以下我们试图在FirstActivity中通过点击button来启动SecondActivity 1.显式Intent 在应用 ...