Linux 下搭建 Hadoop 環境

2022-10-18 12:01:49

Linux 下搭建 Hadoop 環境

作者:Grey

原文地址:

部落格園:Linux 下搭建 Hadoop 環境

CSDN:Linux 下搭建 Hadoop 環境

環境要求

作業系統:CentOS 7

下載地址

安裝說明

需要準備兩個節點,一個是 master 節點,另一個是 slave 節點。

其中 master 節點的 IP:192.168.100.130

slave 節點的 IP:192.168.100.131

並且參考Linux 下設定 hosts 並設定免密登入先設定好兩個免密登入

JDK 版本:8u181

下載地址

Hadoop 版本:2.7.5

下載地址

如果使用的軟體版本不一致,請以官方搭建檔案為準。

安裝步驟

準備軟體目錄

mkdir /datalake

上傳之前下載好的安裝包到 /datalake 目錄下

jdk-8u181-linux-x64.gz

hadoop-2.7.5.tar.gz

批次解壓這幾個安裝包

cd /datalake
ls * | xargs -n1 tar xzvf

將解壓的軟體移動到 /usr/local 目錄

cd /datalake
mv jdk1.8.0_181 /usr/local/jdk
mv hadoop-2.7.5 /usr/local/hadoop

設定環境變數

vi /usr/profile

新增如下內容

export JAVA_HOME=/usr/local/jdk
export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

應用環境變數

source /etc/profile

關閉防火牆,在 master 和 slave 下分別執行

systemctl stop firewalld.service

以下的設定,在 master 和 slave 上都要

vi $HADOOP_HOME/etc/hadoop/core-site.xml

<configuration></configuration>節點之間新增如下內容

<property>
  <name>fs.default.name</name>
  <value>hdfs://master:9000</value>
</property>
<property>
  <name>hadoop.tmp.dir</name>
  <value>/usr/local/hadoop/tmp</value>
</property>

設定 hadoop 使用的 jdk,執行

vi $HADOOP_HOME/etc/hadoop/hadoop-env.sh

將 jdk 設定為

export JAVA_HOME=/usr/local/jdk
vi $HADOOP_HOME/etc/hadoop/core-site.xml

<configuration></configuration>節點之間新增如下內容

<property>
  <name>dfs.replication</name>
  <value>1</value>
</property>
<property>
  <name>dfs.permissions</name>
  <value>false</value>
</property>

執行

cd $HADOOP_HOME/etc/hadoop && cp mapred-site.xml.template mapred-site.xml

然後執行

vi $HADOOP_HOME/etc/hadoop/mapred-site.xml

<configuration></configuration>節點之間新增如下內容

<property>
  <name>mapred.job.tracker</name>
  <value>master:9001</value>
</property>

執行

vi $HADOOP_HOME/etc/hadoop/slaves

替換為如下內容

master
slave

在 master 上把 hadoop 的上述組態檔改好以後,可以執行

cd /usr/local && scp -r hadoop slave:/usr/local/

將設定拷貝到 slave,就無需在 slave 上做同樣繁瑣的設定操作了。

然後,在 master 節點上進行格式化,執行

hadoop namenode -format

最後,在 master 上啟動 hadoop

start-dfs.sh

啟動成功後,在 master 和 slave 上分別執行 jps,可以看到 hadoop 相關的程序已經正常啟動

master 上

[root@master local]# jps
13984 SecondaryNameNode
1579 QuorumPeerMain
14108 Jps
13693 NameNode
13821 DataNode

slave 上

[root@slave hadoop]# jps
9478 Jps
9401 DataNode

在瀏覽器上存取 : http://192.168.100.130:50070/

正常顯示

然後在 master 上啟動 yarn,執行

start-yarn.sh

輸出如下紀錄檔,未報錯

[root@master local]# start-yarn.sh
starting yarn daemons
starting resourcemanager, logging to /usr/local/hadoop/logs/yarn-root-resourcemanager-master.out
master: starting nodemanager, logging to /usr/local/hadoop/logs/yarn-root-nodemanager-master.out
slave: starting nodemanager, logging to /usr/local/hadoop/logs/yarn-root-nodemanager-slave.out

瀏覽器存取:http://192.168.100.130:8088/

正常顯示相關資訊