技术教程 · 2020年1月29日 0

如何在Debian 10上安装Apache Spark集群计算框架

Apache Spark是一个免费的开源集群计算框架,用于对大量数据进行分析,机器学习和图形处理。Spark随附80多个高级运算符,使您能够构建并行应用程序并从Scala,Python,R和SQL Shell交互使用它。它是专为数据科学而设计的快如闪电的内存中数据处理引擎。它提供了丰富的功能集,包括速度,容错,实时流处理,内存计算,高级分析等。

在本教程中,我们将向您展示如何在Debian 10服务器上安装Apache Spark。

先决条件

  • 运行带有2 GB RAM的Debian 10的服务器。
  • 在您的服务器上配置了root密码。

入门

开始之前,建议使用最新版本更新服务器。您可以使用以下命令更新它:

apt-get update -y
 apt-get upgrade -y

更新服务器后,请重新启动服务器以实施更改。

安装Java

Apache Spark用Java语言编写。因此,您将需要在系统中安装Java。默认情况下,Debian 10默认存储库中提供了最新版本的Java。您可以使用以下命令进行安装:

apt-get install default-jdk -y

安装Java之后,使用以下命令验证Java的安装版本:

java --version

您应该获得以下输出:

openjdk 11.0.5 2019-10-15
OpenJDK Runtime Environment (build 11.0.5+10-post-Debian-1deb10u1)
OpenJDK 64-Bit Server VM (build 11.0.5+10-post-Debian-1deb10u1, mixed mode, sharing)

下载Apache Spark

首先,您需要从其官方网站下载最新版本的Apache Spark。在撰写本文时,Apache Spark的最新版本是3.0。您可以使用以下命令将其下载到/ opt目录:

cd /opt
 wget http://apachemirror.wuchna.com/spark/spark-3.0.0-preview2/spark-3.0.0-preview2-bin-hadoop2.7.tgz

下载完成后,使用以下命令解压缩下载的文件:

tar -xvzf spark-3.0.0-preview2-bin-hadoop2.7.tgz

接下来,将提取的目录重命名为spark,如下所示:

mv spark-3.0.0-preview2-bin-hadoop2.7 spark

接下来,您将需要为Spark设置环境。您可以通过编辑〜/ .bashrc文件来实现:

nano ~/.bashrc

在文件末尾添加以下行:

export SPARK_HOME=/opt/spark
export PATH=$PATH:$SPARK_HOME/bin:$SPARK_HOME/sbin

完成后保存并关闭文件。然后,使用以下命令激活环境:

source ~/.bashrc

启动主服务器

现在,您可以使用以下命令启动主服务器:

start-master.sh

您应该获得以下输出:

starting org.apache.spark.deploy.master.Master, logging to /opt/spark/logs/spark-root-org.apache.spark.deploy.master.Master-1-debian10.out

默认情况下,Apache Spark在端口8080上侦听。您可以使用以下命令进行验证:

netstat -ant | grep 8080

输出:

tcp6       0      0 :::8080                 :::*                    LISTEN

现在,打开您的Web浏览器并输入URL http:// server-ip-address:8080。您应该看到以下页面:

Apache Spark

请记下上图中的Spark URL“ spark:// debian10:7077 ”。这将用于启动Spark worker进程。

启动Spark Worker进程

现在,您可以使用以下命令启动Spark worker进程:

start-slave.sh spark://debian10:7077

您应该获得以下输出:

starting org.apache.spark.deploy.worker.Worker, logging to /opt/spark/logs/spark-root-org.apache.spark.deploy.worker.Worker-1-debian10.out

存取Spark Shell

Spark Shell是一个交互式环境,提供了一种简单的方法来学习API和以交互方式分析数据。您可以使用以下命令访问Spark Shell:

spark-shell

您应该看到以下输出:

WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.apache.spark.unsafe.Platform (file:/opt/spark/jars/spark-unsafe_2.12-3.0.0-preview2.jar) to constructor java.nio.DirectByteBuffer(long,int)
WARNING: Please consider reporting this to the maintainers of org.apache.spark.unsafe.Platform
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
19/12/29 15:53:11 WARN NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
Using Spark's default log4j profile: org/apache/spark/log4j-defaults.properties
Setting default log level to "WARN".
To adjust logging level use sc.setLogLevel(newLevel). For SparkR, use setLogLevel(newLevel).
Spark context Web UI available at http://debian10:4040
Spark context available as 'sc' (master = local[*], app id = local-1577634806690).
Spark session available as 'spark'.
Welcome to
      ____              __
     / __/__  ___ _____/ /__
    _\ \/ _ \/ _ `/ __/  '_/
   /___/ .__/\_,_/_/ /_/\_\   version 3.0.0-preview2
      /_/
         
Using Scala version 2.12.10 (OpenJDK 64-Bit Server VM, Java 11.0.5)
Type in expressions to have them evaluated.
Type :help for more information.

scala>

从这里,您可以学习如何快速方便地充分利用Apache Spark。

如果要停止Spark Master和Slave服务器,请运行以下命令:

stop-slave.sh
 stop-master.sh

就是这样,您已经在Debian 10服务器上成功安装了Apache Spark。有关更多信息,请参阅Spark Doc上的Spark官方文档。

原文:https://www.howtoforge.com/how-to-install-apache-spark-on-debian-10/