linux 偽分布安裝hadoop
- 前言
- 系統環境
- 安裝版本
- 安裝步驟
- 配置hadoop賬戶
- 安裝ssh-server
- 配置SSH免密碼登錄
- 安裝,配置java環境
- 安裝hadoop
- 修改hadoop相關組態檔
- 編輯 core-site.xml 檔案
- 編輯 hdfs-site.xml 檔案
- 配置 MapReduce 相關配置
前言
系統環境
Linux Mint20
安裝版本
hadoop2.10.1
安裝步驟
配置hadoop賬戶
創建hadoop賬戶:
sudo useradd -m hadoop -s /bin/bash
設定密碼:
sudo passwd hadoop
添加權限:
sudo adduser hadoop sudo
安裝ssh-server
首先,切換至hadoop賬戶下:
su - hadoop
更新下載源:
sudo apt-get update
安裝openssh-server:
sudo apt-get install openssh-server
配置SSH免密碼登錄
生成公鑰和私鑰:
ssh-keygen -t rsa
遇到詢問時直接敲回車使用默認值,成功后~/.ssh檔案夾下會生成id_rsa, id_rsa.pub兩個檔案;
下面在~/.ssh目錄下,創建一個空文本,名為 authorized_keys :
touch ~/.ssh/authorized_keys
將存盤公鑰檔案的id_rsa.pub 里的內容,追加到authorized_keys中:
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
后續再執行ssh localhost 時,就不用輸入密碼了!
安裝,配置java環境
安裝java
sudo apt-get install openjdk-11-jdk
配置java環境變數:
vim ~/.bashrc
(檔案尾部添加下面代碼)
export JAVA_HOME=/usr/lib/jvm/java-1.11.0-openjdk-amd64
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
讀取并執行組態檔:
(此命令如果沒報錯,表明java配置正確,也可以執行java -version查看是否安裝成功)
source ~/.bashrc
安裝hadoop
下載hadoop壓縮包,也可從官網下載:
wget http://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/hadoop-2.10.1/hadoop-2.10.1.tar.gz
解壓到/usr/local/
sudo tar -zxvf hadoop-2.10.1.tar.gz -C /usr/local
更改檔案擁有者:
sudo chown -R hadoop /usr/local/hadoop-2.10.1
配置hadoop環境變數:
vim ~/.bashrc
(檔案尾部添加下面代碼)
export HADOOP_HOME=/usr/local/hadoop-2.10.1
export CLASSPATH=$($HADOOP_HOME/bin/hadoop classpath):$CLASSPATH
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
讀取并執行組態檔:
source ~/.bashrc
執行hadoop:
hadoop

出現此界面,表示安裝成功,或執行hadoop version查看,

修改hadoop相關組態檔
首先切換到hadoop配置目錄下:
cd /usr/local/hadoop-2.10.1/etc/hadoop/
編輯 hadoop-env.sh 組態檔:
vim hadoop-env.sh
(檔案尾部添加下面代碼)
export JAVA_HOME=/usr/lib/jvm/java-1.11.0-openjdk-amd64
配置 hadoop 處理程序中,臨時檔案和hdfs檔案的存盤位置(不建議使用sudo):
sudo mkdir -p /data/tmp/hadoop/tmp
sudo mkdir -p /data/tmp/hadoop/hdfs
上面命令若使用sudo執行,需要更改檔案所有者:
cd /data/tmp/hadoop/
sudo chown -R hadoop:hadoop tmp/
sudo chown -R hadoop:hadoop hdfs/
cd /usr/local/hadoop-2.10.1/etc/hadoop/
編輯 core-site.xml 檔案
vim core-site.xml
(添加下面配置到<configuration>與</configuration>標簽之間)
<property>
<name>hadoop.tmp.dir</name>
<value>/data/tmp/hadoop/tmp</value>
</property>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
編輯 hdfs-site.xml 檔案
vim hdfs-site.xml
(添加下面配置到<configuration>與</configuration>標簽之間)
<property>
<name>dfs.namenode.name.dir</name>
<value>/data/tmp/hadoop/hdfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/data/tmp/hadoop/hdfs/data</value>
</property>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.permissions.enabled</name>
<value>false</value>
</property>
格式化HDFS檔案系統:
hadoop namenode -format
啟動 hadoop 的 hdfs 相關行程:
cd /usr/local/hadoop-2.10.1/sbin/
./start-dfs.sh
輸入jps查看HDFS相關行程是否已經啟動:
jps

可以看到相關行程已經啟動,
如果顯示jps命令不存在,且/usr/lib/jvm/java-1.11.0-openjdk-amd64/bin目錄下無法找到jps對應檔案,可執行下面的命令:
sudo apt-get install openjdk-11-jdk-headless
配置 MapReduce 相關配置
編輯 mapred-site.xml 檔案:
cd /usr/local/hadoop-2.10.1/etc/hadoop/
mv mapred-site.xml.template mapred-site.xml
vim mapred-site.xml
(添加下面配置到<configuration>與</configuration>標簽之間)
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
編輯 yarn-site.xml 檔案:
vim yarn-site.xml
(添加下面配置到<configuration>與</configuration>標簽之間)
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
啟動計算層面相關行程:
cd /usr/local/hadoop-2.10.1/sbin/
./start-all.sh
輸入jps查看當前運行的行程:
jps

出現上圖中行程表示運行正常,hadoop安裝成功!
參考文章
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/173783.html
標籤:其他
