如何在 CentOS 上安裝 Apache Hadoop
![](https://linuxstory.org/wp-content/uploads/2024/06/210401f4ttrztmdrn7rxey-800x400.jpg)
Apache Hadoop 軟體庫是一個框架,它允許使用簡單的編程模型在計算機集群上對大型數據集進行分散式處理。Apache™ Hadoop® 是可靠、可擴展、分散式計算的開源軟體。
該項目包括以下模塊:
- Hadoop Common:支持其他 Hadoop 模塊的常用工具。
- Hadoop 分散式文件系統 (HDFS™):分散式文件系統,可提供對應用程序數據的高吞吐量訪問支持。
- Hadoop YARN:作業調度和集群資源管理框架。
- Hadoop MapReduce:一個基於 YARN 的大型數據集並行處理系統。
本文將幫助你逐步在 CentOS 上安裝 hadoop 並配置單節點 hadoop 集群。
安裝 Java
在安裝 hadoop 之前,請確保你的系統上安裝了 Java。使用此命令檢查已安裝 Java 的版本。
java -version
java version "1.7.0_75"
Java(TM) SE Runtime Environment (build 1.7.0_75-b13)
Java HotSpot(TM) 64-Bit Server VM (build 24.75-b04, mixed mode)
要安裝或更新 Java,請參考下面逐步的說明。
第一步是從 Oracle 官方網站下載最新版本的 java。
cd /opt/
wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/7u79-b15/jdk-7u79-linux-x64.tar.gz"
tar xzf jdk-7u79-linux-x64.tar.gz
需要設置使用更新版本的 Java 作為替代。使用以下命令來執行此操作。
cd /opt/jdk1.7.0_79/
alternatives --install /usr/bin/java java /opt/jdk1.7.0_79/bin/java 2
alternatives --config java
There are 3 programs which provide 'java'.
Selection Command
--------------------------------------------* 1 /opt/jdk1.7.0_60/bin/java
+ 2 /opt/jdk1.7.0_72/bin/java
3 /opt/jdk1.7.0_79/bin/java
Enter to keep the current selection[+], or type selection number: 3 [Press Enter]
現在你可能還需要使用 alternatives
命令設置 javac
和 jar
命令路徑。
alternatives --install /usr/bin/jar jar /opt/jdk1.7.0_79/bin/jar 2
alternatives --install /usr/bin/javac javac /opt/jdk1.7.0_79/bin/javac 2
alternatives --set jar /opt/jdk1.7.0_79/bin/jar
alternatives --set javac /opt/jdk1.7.0_79/bin/javac
下一步是配置環境變數。使用以下命令正確設置這些變數。
設置 JAVA_HOME
變數:
export JAVA_HOME=/opt/jdk1.7.0_79
設置 JRE_HOME
變數:
export JRE_HOME=/opt/jdk1.7.0_79/jre
設置 PATH
變數:
export PATH=$PATH:/opt/jdk1.7.0_79/bin:/opt/jdk1.7.0_79/jre/bin
安裝 Apache Hadoop
設置好 java 環境後。開始安裝 Apache Hadoop。
第一步是創建用於 hadoop 安裝的系統用戶帳戶。
useradd hadoop
passwd hadoop
現在你需要配置用戶 hadoop
的 ssh 密鑰。使用以下命令啟用無需密碼的 ssh 登錄。
su - hadoop
ssh-keygen -t rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 0600 ~/.ssh/authorized_keys
exit
現在從官方網站 hadoop.apache.org 下載 hadoop 最新的可用版本。
cd ~
wget http://apache.claz.org/hadoop/common/hadoop-2.6.0/hadoop-2.6.0.tar.gz
tar xzf hadoop-2.6.0.tar.gz
mv hadoop-2.6.0 hadoop
下一步是設置 hadoop 使用的環境變數。
編輯 ~/.bashrc
,並在文件末尾添加以下這些值。
export HADOOP_HOME=/home/hadoop/hadoop
export HADOOP_INSTALL=$HADOOP_HOME
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export YARN_HOME=$HADOOP_HOME
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin
在當前運行環境中應用更改。
source ~/.bashrc
編輯 $HADOOP_HOME/etc/hadoop/hadoop-env.sh
並設置 JAVA_HOME
環境變數。
export JAVA_HOME=/opt/jdk1.7.0_79/
現在,先從配置基本的 hadoop 單節點集群開始。
首先編輯 hadoop 配置文件並進行以下更改。
cd /home/hadoop/hadoop/etc/hadoop
讓我們編輯 core-site.xml
。
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
接著編輯 hdfs-site.xml
:
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.name.dir</name>
<value>file:///home/hadoop/hadoopdata/hdfs/namenode</value>
</property>
<property>
<name>dfs.data.dir</name>
<value>file:///home/hadoop/hadoopdata/hdfs/datanode</value>
</property>
</configuration>
並編輯 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>
現在使用以下命令格式化 namenode:
hdfs namenode -format
要啟動所有 hadoop 服務,請使用以下命令:
cd /home/hadoop/hadoop/sbin/
start-dfs.sh
start-yarn.sh
要檢查所有服務是否正常啟動,請使用 jps
命令:
jps
你應該看到這樣的輸出。
26049 SecondaryNameNode
25929 DataNode
26399 Jps
26129 JobTracker
26249 TaskTracker
25807 NameNode
現在,你可以在瀏覽器中訪問 Hadoop 服務:http://your-ip-address:8088/ 。
謝謝閱讀!!!
via: https://www.unixmen.com/setup-apache-hadoop-centos/
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive