专栏首页分布式系统和大数据处理安装和配置Spark(单节点)

安装和配置Spark(单节点)

安装和配置Spark(单节点)

2018-7-14 作者: 张子阳 分类: 大数据处理

Apache Spark被称为第三代大数据处理平台,也当前应用最广泛的大数据处理方案,这篇文章将介绍如何在Linux系统(Cent OS7)上以单机模式(Stand alone)模式安装Apache Spark。当前的最新稳定版是2.3.1。

此定义来源于网络,非官方定义:第一代Hadoop,第二代Storm,第三代Spark,第四代Flink。因为Flink比较新,从应用的广泛度方面而言不及Spark,相关的资料也比较少,因此在生产环境使用时,最好选用Spark。在试验环境,可以对Flink做一些尝试。

下载Spark

在浏览器上打开Spark官网的下载页:http://spark.apache.org/downloads.html

下载页1

选择最新的版本(当前是2.3.1),点击spark-2.3.1-bin-hadoop2.7.tgz,进入下载链接页:

下载页2

复制页面上的下载链接:http://apache.communilink.net/spark/spark-2.3.1/spark-2.3.1-bin-hadoop2.7.tgz

登录Linux服务器,进入 ~/downloads 文件夹(如果没有则创建一个),使用wget命令进行下载:

# wget http://apache.communilink.net/spark/spark-2.3.1/spark-2.3.1-bin-hadoop2.7.tgz

解压、配置PATH环境变量

使用tar命令,解压到/opt/spark文件夹:

# tar -xzvf spark-2.3.1-bin-hadoop2.7.tgz -C /opt/spark

使用vim编辑~/.bashrc,编辑最后两行,加入以下内容,配置环境变量:

# vim ~/.bashrc

export SPARK_HOME=/opt/spark/spark-2.3.1-bin-hadoop2.7 export PATH=$PATH:$SPARK_HOME/bin

使用source命令,以使得变量立即生效

# source ~/.bashrc

如果重复执行source命令,再执行echo $PATH时,会看到路径重复出现了很多次。此时可以执行这个命令:export PATH=$(echo $PATH | tr : "\n"| sort | uniq | tr "\n" :)

验证安装

输入pyspark,如果一切正常,会看到下面的界面:

# pyspark Python 2.7.5 (default, Aug 4 2017, 00:39:18) [GCC 4.8.5 20150623 (Red Hat 4.8.5-16)] on linux2 Type "help", "copyright", "credits" or "license" for more information. 2018-07-13 11:50:35 WARN NativeCodeLoader:62 - Unable to load native-hadoop library for your platform... using builtin-java classes where applicable Setting default log level to "WARN". To adjust logging level use sc.setLogLevel(newLevel). For SparkR, use setLogLevel(newLevel). Welcome to ____ __ / __/__ ___ _____/ /__ _\ \/ _ \/ _ `/ __/ '_/ /__ / .__/\_,_/_/ /_/\_\ version 2.3.1 /_/ Using Python version 2.7.5 (default, Aug 4 2017 00:39:18) SparkSession available as 'spark'. >>>

底部是spark的命令窗口,可以按Ctrl+D退出。

上面出现了一个警告:NativeCodeLoader:62 - Unable to load native-hadoop library for your platform... using builtin-java classes where applicable。 解决的办法是:编辑~/.bashrc 文件,在底部加入下面一行: export LD_LIBRARY_PATH=$HADOOP_HOME/lib/native:$LD_LIBRARY_PATH 注意,前提是你已经安装了Hadoop,并配置好了$HADOOP_HOME环境变量。如何单机安装Hadoop,参考linux上安装和配置Hadoop(单节点)

在控制台启动的情况下,在浏览器输入:http://spark-host-ip:4040,可以进入到Spark的Web UI界面。在这里可以查看Spark当前的运行情况。

Spark WebUI - Jobs

在Environment选项卡中,可以查看到当前Spark的运行环境,可以看到Spark.master一栏显示的是local[*],说明当前Spark运行的是local模式,Spark还可以运行在YARN(和Hadoop共用YARN,减少运维复杂度)或者是Mesos上。

Spark WebUI - Environment

配置控制台日志数据级别

默认情况下,Spark会在控制台输出INFO级别以上的信息,这样控制台的信息会非常多,不利于查看错误消息。可以通过修改配置文件,来让Spark在控制台只输出ERROR信息:

进入$SPARK_HOME/conf文件夹,复制log4j.properties.template,并重命名为log4j.properties,然后编辑log4j.properties:

cd $SPARK_HOME/conf;\ cp log4j.properties.template log4j.properties;\ vim log4j.properties

找到log4j.rootCategory=INFO, console,修改为:log4j.rootCategory=ERROR, console

# Set everything to be logged to the console log4j.rootCategory=ERROR, console log4j.appender.console=org.apache.log4j.ConsoleAppender log4j.appender.console.target=System.err ...

感谢阅读,希望这篇文章能给你带来帮助!

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 使用Spark读取Hive中的数据

    在默认情况下,Hive使用MapReduce来对数据进行操作和运算,即将HQL语句翻译成MapReduce作业执行。而MapReduce的执行速度是比较慢的,一...

    张子阳
  • 类型自定义格式字符串

    String可能是使用最多的类型,ToString()则应该是大家使用得最多的方法了。然而它不应该仅仅是用来输出类型的名称,如果使用得当,它可以方便地输出我们对...

    张子阳
  • 离线和实时大数据开发实战

    这本书是公司一位负责数据库的同事推荐的,正好数据中心也在重构和优化,以应对更加海量的数据,所以便花了点时间读完了这本书。全书分了三个篇章:全局概览,从比较高的高...

    张子阳
  • 大数据技术之_19_Spark学习_01_Spark 基础解析 + Spark 概述 + Spark 集群安装 + 执行 Spark 程序

      Spark 是一种快速、通用、可扩展的大数据分析引擎,2009 年诞生于加州大学伯克利分校 AMPLab,2010 年开源,2013 年 6 月成为 Ap...

    黑泽君
  • 大数据实战项目《大型电商日志分析》的知识点大数据实战项目的知识点

    大数据实战项目的知识点 1、大数据集群环境的搭建 CentOS 6.8、 hadoop-2.7.3、 hive-0.13.1 zookeeper-3.4....

    Albert陈凯
  • java计算奇数阶魔方阵

    所谓“奇数阶魔方阵”是指n为不小于3的奇数的魔方阵。这类魔方阵的形式多样,这里我们仅讨论其中的一种形式的正规魔方阵。例如:3阶、5阶和7阶的魔方阵如图3 – 4...

    张泽旭
  • spark面试该准备点啥

    最近很多球友都说在准备面试,不知道准备点啥,尤其是spark,实际上星球里浪尖分享的内容真的都掌握了,应对一般面试绝对没问题,但是遗憾的事情是很多人都是处于不会...

    Spark学习技巧
  • 大数据技术之_19_Spark学习_01_Spark 基础解析小结(无图片)

    2、Spark Standalone 即独立模式   2.1、解压安装包到你安装的目录。   2.2、拷贝 conf 目录下的 slaves 文件,将 slav...

    黑泽君
  • SparkSQL操作外部数据源

    parquet数据 hive表数据 mysql表数据 hive与mysql结合 1.处理parquet数据 启动spark-shell: spark-shel...

    sparkle123
  • 腾讯优图亮相全国肿瘤精英论坛,在肺癌、糖网及胃癌筛

    12月16日,CSCO青年专家委员会2017年度总结大会暨全国肿瘤精英论坛于深圳正式召开,众多专家学者围绕肿瘤治疗、诊疗规范化等话题进行了深入探讨。论坛上,腾讯...

    企鹅号小编

扫码关注云+社区

领取腾讯云代金券