当前位置:首页 > 行业动态 > 正文

如何在Linux上安装和配置Spark?

Linux 是一个开源的操作系统,而 Spark 是一个用于大规模数据处理和分析的快速、通用计算引擎。在 Linux 上运行 Spark 可以充分利用其强大的并行处理能力。

Linux Spark 安装与环境配置

在Linux环境下安装和配置Apache Spark,可以充分发挥其强大的大数据处理能力,以下是详细的步骤指南:

一、Hadoop测试

确保Hadoop能够正常运行是使用Spark的前提,因此需要先进行Hadoop的测试。

1、启动Hadoop

   cd /usr/local/hadoop
   ./sbin/start-all.sh

2、再次启动Hadoop(如果第一次启动失败)

   ./start-all.sh

3、查看是否成功

   jps

确认NameNode、DataNode、ResourceManager、NodeManager等进程是否都已启动。

二、Scala安装与配置

Spark依赖于Scala运行环境,因此需要先安装Scala。

1、下载Scala

官方网址:[https://www.scala-lang.org/download/2.13.10.html](https://www.scala-lang.org/download/2.13.10.html)

   wget https://downloads.lightbend.com/scala/2.13.10/scala-2.13.10.tgz

2、解压并重命名

   sudo tar zxvf scala-2.13.10.tgz -C /usr/local/
   cd /usr/local/
   sudo mv scala-2.13.10 scala

3、配置环境变量

   sudo vi ~/.bashrc

添加以下内容:

   export SCALA_HOME=/usr/local/scala
   export PATH=$PATH:$SCALA_HOME/bin:$SCALA_HOME/lib

使配置生效:

   source ~/.bashrc

4、测试

   scala -version

三、Spark安装与配置

1、下载Spark

官方网址:[https://archive.apache.org/dist/spark/spark-3.2.2/](https://archive.apache.org/dist/spark/spark-3.2.2/)

   wget https://archive.apache.org/dist/spark/spark-3.2.2/spark-3.2.2-bin-hadoop3.2.tgz

2、解压并重命名

   sudo tar zxvf spark-3.2.2-bin-hadoop3.2.tgz -C /usr/local/
   cd /usr/local/
   sudo mv spark-3.2.2-bin-hadoop3.2 spark

3、配置环境变量

   sudo vi ~/.bashrc

添加以下内容:

   export SPARK_HOME=/usr/local/spark
   export PATH=$PATH:$SPARK_HOME/bin:$SPARK_HOME/sbin

使配置生效:

   source ~/.bashrc

4、配置spark-env.sh文件

   cd /usr/local/spark/conf
   sudo cp spark-env.sh.template spark-env.sh
   sudo vi spark-env.sh

添加以下内容:

   export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
   export HADOOP_HOME=/usr/local/hadoop
   export HADOOP_CONF_DIR=/usr/local/hadoop/etc/hadoop
   export SCALA_HOME=/usr/local/scala
   export SPARK_HOME=/usr/local/spark
   export SPARK_MASTER_IP=192.168.3.134
   export SPARK_MASTER_PORT=7077
   export SPARK_MASTER_WEBUI_PORT=8099
   export SPARK_WORKER_CORES=3
   export SPARK_WORKER_INSTANCES=1
   export SPARK_WORKER_MEMORY=5G
   export SPARK_WORKER_WEBUI_PORT=8081
   export SPARK_EXECUTOR_CORES=1
   export SPARK_EXECUTOR_MEMORY=1G
   export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$HADOOP_HOME/lib/native

5、配置slaves文件

   cd /usr/local/spark/conf
   sudo cp workers.template slaves
   sudo vi slaves

将文件中的内容修改为实际工作的节点地址,

   hadoop-node1
   hadoop-node2

6、启动Spark集群

   cd /usr/local/spark
   ./sbin/start-master.sh
   ./sbin/start-slaves.sh

四、验证Spark安装

通过运行Spark自带的示例程序来验证Spark是否安装成功。

1、运行SparkPi示例

   cd /usr/local/spark
   ./bin/run-example SparkPi 2>&1 | grep "Pi is roughly"

输出类似如下信息,表示安装成功:

   Pi is roughly 3.14xxxxx

五、常见问题及解决方案(FAQ)

Q1:启动Hadoop时报错“SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.”怎么办?

A1:这是由于缺少SLF4J绑定导致的,可以通过以下命令安装缺失的依赖:

sudo apt-get install libslf4j-log4j12

然后重新启动Hadoop。

Q2:启动Spark时报错“Cannot find ‘main’ class in classpath”怎么解决?

A2:这个问题通常是由于环境变量配置不正确导致的,请检查以下内容:

1、确保JAVA_HOMEHADOOP_HOME设置正确。

2、确保SPARK_HOME指向正确的Spark安装目录。

3、确保所有相关路径都添加到系统的PATH环境变量中。

小伙伴们,上文介绍了“linux spark”的内容,你了解清楚吗?希望对你有所帮助,任何问题可以给我留言,让我们下期再见吧。

0