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. 分享个免费的货币汇率API

    先上API文档链接:https://www.juhe.cn/docs/api/id/23,支持人民币牌价.外汇汇率查询:数据仅供参考,交易时以银行柜台成交价为准. 人民币牌价 接口地址:http:// ...

  2. Koa2 + Mongoose + Log4js 持久化日志

    代码地址如下:http://www.demodashi.com/demo/12466.html  之前做的项目是采用 Express 框架进行搭建的,其中的日志管理采用了 winston + Post ...

  3. mysql MHA报错 Can't exec "mysqlbinlog": No such file or directory at /usr/local/share/perl5/MHA/BinlogManager.pm line 99.

    如果发现如下错误: Can't exec "mysqlbinlog": No such file or directory at /usr/local/share/perl5/MH ...

  4. (一)关于jQuery的网上资源

    jQuery官网: http://jquery.com/ jQuery API: http://jquery.cuishifeng.cn/ w3school学习网站:http://www.w3scho ...

  5. PowerDesigner将PDM导出生成WORD文档(转)

    今天的温习老知识,是如何将一个PD设计的PDM来导出WORD文档,这是一个非常实用的功能,可以在软件过程的数据库设计文档编写中节省N多时间, 那不废话了,我们就开始今天的讲解吧! 第一步,点击Repo ...

  6. scrapy之Logging使用

    #coding:utf-8 __author__ = 'similarface' ###################### ##Logging的使用 ###################### ...

  7. HDFS源码分析心跳汇报之数据结构初始化

    在<HDFS源码分析心跳汇报之整体结构>一文中,我们详细了解了HDFS中关于心跳的整体结构,知道了BlockPoolManager.BPOfferService和BPServiceActo ...

  8. 华为AI应用创新大赛即将开启!公开课已备好!

    为鼓励开发者创新,挖掘前沿创新能力的应用及服务,帮开发者打造爆款应用的同时丰富终端消费者的用户体验,由设立10亿激励基金耀星计划扶持的华为创新竞赛平台即将开启. 竞赛平台将滚动推出AI.HAG.AR. ...

  9. EventBus使用的简介

    写在前面 曾经我们做组件间的消息分发更新,通常会採用观察者模式.或者接口数据回调的相关方式,可是这种做法尽管能够解决我们的问题.可是组件之间的耦合相当严重,并且代码也不易阅读和维护,为了解决这种问题, ...

  10. 09-redis事务及锁应用

    Redis 中的事务 Redis支持简单的事务 Redis与 mysql事务的对比 ------------------------------------------------------- My ...