Spark- Linux下安装Spark

前期部署

1.JDK安装,配置PATH

可以参考之前配置hadoop等配置

2.下载spark-1.6.1-bin-hadoop2.6.tgz,并上传到服务器解压

[root@srv01 ~]# tar -xvzf  spark-1.6.-hadoop2..tgz /usr/spark-1.6.-hadoop2.

3.在 /usr 下创建软链接到目标文件夹

[root@srv01 usr]# ln -s spark-1.6.-bin-hadoop2.   spark

4.修改配置文件,目标目录 /usr/spark/conf/

[root@srv01 conf]# ls
docker.properties.template log4j.properties.template slaves.template spark-env.sh.template
fairscheduler.xml.template metrics.properties.template spark-defaults.conf.template
这里需要把spark-env.sh.template改名为spark-env.sh
export JAVA_HOME=/usr/jdk
#这个是单机版的配置,不能实现高可用
export SPARK_MASTER_IP=srv01
export SPARK_MASTER_PORT=

再配置slaves ,都是我的集群的机器的hostname

srv01
srv02
srv03

5.分发到集群各个机器上,再软链接一下,保持集群一致性,参考step-3

[root@srv01 usr]# scp -r spark-1.6.-bin-hadoop2.  srv02:/usr
[root@srv01 usr]# scp -r spark-1.6.1-bin-hadoop2.6  srv03:/usr

6.Spark-sell

配置好,启动spark-shell,注意记得先关闭防火墙(也可以将spark写进PATH中)

输入 sc ,如果显示下面的,表示安装正常

scala> sc
res0: org.apache.spark.SparkContext = org.apache.spark.SparkContext@18811c42

7.测试单词计算案例

scala> sc.textFile("/root/file.log").flatMap(_.split(" ")).map((_,)).reduceByKey(_+_).collect.toBuffer
res7: scala.collection.mutable.Buffer[(String, Int)] = ArrayBuffer((scala,), (spark,), (hive,), (hadoop,), (mapreduce,), (zookeeper,), (hello,), (redis,), (world,))

8.启动Spark集群模式(前提是3台机器的spark配置一样,配置文件spark-env.sh和slaves文件保持一致)

进入Spark的sbin目录下启动
./start-all.sh

这个脚本文件在sbin目录

通过Jps查看角色

[root@srv01 conf]# jps

13079 Master

13148 Worker  //这个worker的启动通过配置文件slaves

13234 Jps

下面是我的slaves的配置文件

srv01
srv02
srv03

slaves配置的决定了在哪几台机器上启动worker

下面的配置文件决定了在哪台机器上启动Master

启动Spark集群(如果有使用hdfs的场景,需要把hadoop的conf目录下的core-site.xml和dhfs-site.xml拷贝到spark的conf目录下,才能使用高可用的hdfs url)

 

然后在通过网页查看spark的相关信息:

http://192.168.1.88:8080/

执行第一个Spark程序

指定运行程序的主机名(Master)

./spark-submit --class org.apache.spark.examples.SparkPi --master spark://srv01:7077  --executor-memory 1G --total-executor-cores 2 /usr/spark-1.6.1-bin-hadoop2.6/lib/spark-examples-1.6.1-hadoop2.6.0.jar 500

IDEA上面编码使用集群上的spark运行程序

package com.rz.spark.base

import org.apache.log4j.{Level, Logger}
import org.apache.spark.{SparkConf, SparkContext} object transactionApp {
def main(args: Array[String]): Unit = {
Logger.getLogger("org.apache.spark").setLevel(Level.OFF)
val conf = new SparkConf().setAppName(this.getClass.getSimpleName)
.setMaster("spark://hdp:7077")
val sc = new SparkContext(conf) val rdd1 = sc.parallelize(Array(1,2,3,4,5,6,7,8,9))
println(rdd1.partitions.length)
sc.stop()
}
}

  

Spark- Linux下安装Spark的更多相关文章

  1. 在linux上安装spark详细步骤

    在linux上安装spark ,前提要部署了hadoop,并且安装了scala. 提君博客原创 对应版本 >>提君博客原创  http://www.cnblogs.com/tijun/   ...

  2. Linux下安装 Posgresql 并设置基本参数

    在Linux下安装Postgresql有二进制格式安装和源码安装两种安装方式,这里用的是二进制格式安装.各个版本的Linux都内置了Postgresql,所以可直接通过命令行安装便可.本文用的是Cen ...

  3. Linux下安装Tomcat服务器和部署Web应用

    一.上传Tomcat服务器

  4. Linux下安装使用Solr

    Linux下安装使用Solr 1.首先下载Solr.mmseg4j分词包.tomcat并解压,这用google.百度都可以搜索得到下载地址. 2.因为要使用到中文分词,所以要设置编码,进入tomcat ...

  5. Linux下安装tar.gz类型的jdk,并配置环境变量

    近期因要学习一门技术,必须在Linux下运行,故开始学习如何使用Linux. 在安装jdk时出现了困难,环境变量配置不成功,花了一天时间才搞定,特分享出来,供大家参考. Linux下安装jdk,步骤如 ...

  6. Linux下安装和配置JDK与Tomcat(升级版)

    在这个版本 Linux下安装和配置JDK与Tomcat(入门版) 的基础上优化升级 1.下载相关软件 apache-tomcat-6.0.37.tar.gz jdk-6u25-linux-i586-r ...

  7. Linux下安装cmake

    cmake是一个跨平台的编译工具,特点是语句简单,编译高效,相对于原有的automake更为高效,接下来说明在Linux下安装cmake工具的过程 首先去cmake官网下载cmake安装包,下载界面网 ...

  8. linux下安装安装pcre-8.32

    linux下安装安装pcre-8.32 ./configure --prefix=/usr/local/pcre 出现以下错误 configure: error: You need a C++ com ...

  9. CentOS linux下安装和配置Apache+SVN(用浏览器http方式访问SVN目录)

    在CentOS linux下安装SVN,我们可以进行以下步骤: 第一步:安装CentOS Linux操作系统,并在CentOS安装进行的同时,自定义安装这一步,一定要勾选Subversion(在“开发 ...

随机推荐

  1. 使用REST-Assured对API接口进行自动化测试

    转载:http://blog.csdn.net/u012050416/article/details/50674612 准备 目标 开始编码 总结   说明:本文只是一个getStart示例,关键在于 ...

  2. Redis的安装和环境的搭建并设置服务(Redis学习笔记一)

    由于Redis在win上安装实在是太过于麻烦.我们选择把redis安装部署在linux上,然后远程连接. 安装Redis (1)cd /usr/src 进入下载目录 (1) yum install - ...

  3. 微信小程序 - 非Form数据怎么发送到后端?

    通过设置异步缓存,就可以做到 wx.setStorageSync('imgs',imglist); 最后的提交信息:

  4. 【VBS】检索Outlook本地邮箱

    实现功能:使用VBS检索Outlook本地邮箱中,今天是否收到某标题的邮件. 代码如下: ' yyyy-m-d 0:00 AM ' yyyy-m-d 11:59 PM Function CheckMa ...

  5. 怎样使用 iOS 7 的 AVSpeechSynthesizer 制作有声书(3)

    plist 中的每一页 utteranceSting 我们都创建了一个RWTPage.displayText.因此,每页的文本会一次性地显示出来. 由于 You've constructedeach ...

  6. Python流程控制 if / for/ while

    在Python中没有switch语句 If语句 if condition: do sth elif condition: Do sth else: Do sth while语句有一个可选的else从句 ...

  7. 转 FreeBSD通过PORTS安装软件的几个常用命令

    1.怎样找到我想安装的包路径:# cd /usr/ports# make search name=mysql2.仅仅下载源码包,而不安装:# cd /usr/ports/directory# make ...

  8. Msfvenom 学习笔记与总结

    平台:Android,可用Payload: android/meterpreter/reverse_http Run a meterpreter server on Android. Tunnel c ...

  9. javascript的slice(),splice(),split(),substring(),substr()

    例子摘抄于http://www.w3school.com.cn/jsref/jsref_obj_array.asp 1.slice(): Array和String对象都有 在Array中  slice ...

  10. dede列表页调用文章,其实是所有页面都可以调用,第一次应用sql标签

    {dede:sql sql="SELECT aid,typeid,body,userip FROM `#@__addonarticle` where aid='6' or aid='7' o ...