在Debian上集成Hadoop與Spark涉及多個步驟,包括安裝Java、配置Hadoop和Spark環境、以及啟動相關服務。以下是一個詳細的指南:
首先,確保你的系統上安裝了Java。你可以使用以下命令來安裝OpenJDK:
sudo apt update
sudo apt install openjdk-11-jdk
驗證Java安裝成功:
java -version
你可以從Apache Hadoop的官方網站下載最新版本的Hadoop。例如,下載Hadoop 3.3.6版本:
wget https://dlcdn.apache.org/hadoop/common/hadoop-3.3.6/hadoop-3.3.6-aarch64.tar.gz
tar -zxvf hadoop-3.3.6-aarch64.tar.gz -C /usr/local
編輯Hadoop的環境變量文件hadoop-env.sh
:
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
export HADOOP_HOME=/usr/local/hadoop-3.3.6
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
編輯core-site.xml
和hdfs-site.xml
文件:
core-site.xml:
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
hdfs-site.xml:
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
生成SSH密鑰并分發到其他節點:
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
ssh-copy-id node2
ssh-copy-id node3
bin/hdfs namenode -format
sbin/start-dfs.sh
訪問Hadoop Web界面:http://localhost:50070/
編輯mapred-site.xml
和yarn-site.xml
文件:
mapred-site.xml:
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
yarn-site.xml:
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
啟動YARN:
sbin/start-yarn.sh
訪問YARN Web界面:http://localhost:8088/
下載Spark 3.1.2版本:
wget https://dlcdn.apache.org/spark/spark-3.1.2/spark-3.1.2-bin-hadoop3.2.tgz
tar -xzvf spark-3.1.2-bin-hadoop3.2.tgz
mv spark-3.1.2-bin-hadoop3.2 /opt/spark
編輯Spark的環境變量文件spark-env.sh
:
export SPARK_HOME=/opt/spark
export PATH=$PATH:$SPARK_HOME/bin:$SPARK_HOME/sbin
啟動Spark主節點:
/opt/spark/sbin/start-master.sh
啟動Spark從節點:
/opt/spark/sbin/start-slave.sh spark://localhost:7077
訪問Spark Web界面:http://localhost:8080
確保Spark能夠訪問Hadoop的HDFS和YARN資源。在Spark的配置文件中添加Hadoop的環境變量:
export HADOOP_HOME=/usr/local/hadoop-3.3.6
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
export SPARK_DIST_CLASSPATH=$HADOOP_HOME/bin/hadoop classpath
進入Spark的examples
目錄并運行一個示例程序,例如SparkPi
:
cd /opt/spark/examples/src/main/scala/org/apache/spark/examples/SparkPi
./bin/run-example SparkPi
以上步驟應該可以幫助你在Debian上成功集成Hadoop與Spark。如果在配置過程中遇到問題,請檢查日志文件以獲取更多信息。