如何搭建spark yarn模式的集群

发布于:2025-05-02 ⋅ 阅读:(57) ⋅ 点赞:(0)

在 YARN 模式下搭建 Spark 集群,可按以下步骤操作:

1. 准备工作

  • 硬件:准备至少 3 台服务器,分别作为主节点(NameNode、ResourceManager)和从节点(DataNode、NodeManager)。
  • 软件:所有节点需安装 Java(建议 Java 8 及以上版本)、Hadoop(建议 Hadoop 2.7 及以上版本)和 Spark。
  • 网络:确保所有节点之间网络互通,可使用ping命令测试。
  • 用户权限:确保所有节点上的用户有足够的权限进行安装和配置操作。

2. 安装 Java

在所有节点上安装 Java,并配置JAVA_HOME环境变量。

bash

# 安装Java
sudo apt-get install openjdk-8-jdk  # 以Ubuntu为例

# 配置环境变量
echo 'export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64' >> ~/.bashrc
echo 'export PATH=$PATH:$JAVA_HOME/bin' >> ~/.bashrc
source ~/.bashrc

3. 安装 Hadoop

3.1 下载和解压 Hadoop

bash

wget https://archive.apache.org/dist/hadoop/common/hadoop-3.3.1/hadoop-3.3.1.tar.gz
tar -xzvf hadoop-3.3.1.tar.gz -C /usr/local
cd /usr/local
sudo mv hadoop-3.3.1 hadoop
sudo chown -R your_username:your_groupname hadoop
3.2 配置 Hadoop

编辑/usr/local/hadoop/etc/hadoop/core-site.xml

xml

<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://master:9000</value>
    </property>
</configuration>

编辑/usr/local/hadoop/etc/hadoop/hdfs-site.xml

xml

<configuration>
    <property>
        <name>dfs.replication</name>
        <value>3</value>
    </property>
</configuration>

编辑/usr/local/hadoop/etc/hadoop/mapred-site.xml

xml

<configuration>
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
</configuration>

编辑/usr/local/hadoop/etc/hadoop/yarn-site.xml

xml

<configuration>
    <property>
        <name>yarn.resourcemanager.hostname</name>
        <value>master</value>
    </property>
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
</configuration>
3.3 配置从节点

编辑/usr/local/hadoop/etc/hadoop/slaves,添加从节点的主机名或 IP 地址:

plaintext

slave1
slave2
3.4 格式化 HDFS

在主节点上执行以下命令格式化 HDFS:

bash

/usr/local/hadoop/bin/hdfs namenode -format
3.5 启动 Hadoop

在主节点上启动 Hadoop 服务:

bash

/usr/local/hadoop/sbin/start-dfs.sh
/usr/local/hadoop/sbin/start-yarn.sh

4. 安装 Spark

4.1 下载和解压 Spark

bash

wget https://archive.apache.org/dist/spark/spark-3.2.1/spark-3.2.1-bin-hadoop3.2.tgz
tar -xzvf spark-3.2.1-bin-hadoop3.2.tgz -C /usr/local
cd /usr/local
sudo mv spark-3.2.1-bin-hadoop3.2 spark
sudo chown -R your_username:your_groupname spark
4.2 配置 Spark

编辑/usr/local/spark/conf/spark-env.sh

bash

export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
export HADOOP_CONF_DIR=/usr/local/hadoop/etc/hadoop
export SPARK_MASTER_HOST=master
export SPARK_LOCAL_IP=your_ip_address

编辑/usr/local/spark/conf/slaves,添加从节点的主机名或 IP 地址:

plaintext

slave1
slave2

5. 启动 Spark 集群

在主节点上启动 Spark 服务:

bash

/usr/local/spark/sbin/start-all.sh

6. 验证集群

可以通过以下命令验证 Spark 集群是否正常工作:

bash

/usr/local/spark/bin/spark-submit --class org.apache.spark.examples.SparkPi \
--master yarn \
--deploy-mode cluster \
/usr/local/spark/examples/jars/spark-examples_2.12-3.2.1.jar 10

以上步骤完成后,你就成功搭建了一个 Spark YARN 模式的集群。在实际使用中,可根据具体需求对配置进行调整。


网站公告

今日签到

点亮在社区的每一天
去签到