Ubuntu20.04下安裝Hadoop 2.9.2
ubuntu 上安裝hadoop
首先使用虛擬機器安裝完ubuntu,我使用的是ubuntu 20.04系統,Hadoop2.9.2
準備軟體
- Hadoop 2.9.2
- openjdk-8-jre
- vim
- openssh-service
hadoop可以去官方下載
下載完成之後,進入linux系統
下面是步驟
更新系統軟體
sudo apt update
更新完成之後,安裝openjdk以及vim
sudo apt install vim
sudo apt install openjdk-8-jdk
建立hadooop使用者並且更改hadoop使用者密碼,使用自己的密碼就可以。
//建立hadoop使用者
sudo adduser hadoop
//更改hadoop使用者密碼
sudo passwd hadoop
以上的配置完成之後,使用hadoop使用者
su - hadoop
切換成hadoop之後,設定ssh免密登入
ssh-keygen -t rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 640 ~/.ssh/authorized_keys
然後試試ssh localhost
,檢視是否能夠免密登入
如果遇到22埠被拒絕的情況,很有可能是ssh服務並沒有開啟。
切換成exit退出當前使用者,使用主使用者
輸入sudo service ssh start
進行服務的開啟。如果顯示沒有該服務,那麼可以確定系統並沒有安裝ssh服務,去安裝服務。
完成這些之後,把下載的Hadoop安裝包複製到hadoop的家目錄
然後開始解壓到本目錄
tar -zxvf hadoop-2.9.2.tar.gz
解壓完成之後,修改一下hadoop目錄的名稱。
mv hadoop-2.9.2 hadoop
修改bash的配置資訊
vim .bashrc
然後把資訊複製到最下面的地方
# JAVA_HOME對應你自己的java home路徑 export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-amd64/ 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 HADOOP_YARN_HOME=$HADOOP_HOME export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib/native"
怎樣看java home路徑?
輸入whereis java
找到找到路徑之後,使用ls -la
一個個進行查詢,下面的圖片就是查詢的過程
找到之後,更改為自己的java home目錄即可
完成配置之後,使用source .bashrc
更新即可
更新hadoop的JAVA_HOME路徑vim $HADOOP_HOME/etc/hadoop/hadoop-env.sh
更改java路徑為
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-amd64/
更改完之後,建立兩個目錄
mkdir -p ~/hadoopdata/hdfs/namenode
mkdir -p ~/hadoopdata/hdfs/datanode
然後更改幾個檔案
core-site.xml
hdfs-site.xml
mapred-site.xml
-
這個檔案需要複製,
cp $HADOOP_HOME/etc/hadoop/mapred-site.xml.template $HADOOP_HOME/etc/hadoop/mapred-site.xml
yarn-site.xml
vim使用方法:
- i,a 觸發編輯模式
- esc 觸發命令列模式
- :wq儲存並退出
- :wq!強制儲存並退出
- :q!強制退出,不儲存
core-site.xml檔案
vim $HADOOP_HOME/etc/hadoop/core-site.xml
core-site.xml檔案的新增內容如下:
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
hdfs-site.xml檔案
vim $HADOOP_HOME/etc/hadoop/hdfs-site.xml
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檔案
vim $HADOOP_HOME/etc/hadoop/mapred-site.xml
mapred-site.xml 檔案新增內容如下:
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
yarn-site.xml檔案
vim $HADOOP_HOME/etc/hadoop/yarn-site.xml
yarn-site.xml 檔案新增內容如下:
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
完成之後,格式化節點資訊
hdfs namenode -format
如果你的輸出是以下資訊,那就證明你初始化成功了
然後啟動dfs
start-dfs.sh
啟動後的截圖:
最後啟動yarn
start-yarn.sh
啟動成功截圖如下
最後,在控制檯中輸入jps,應該會出現以下程序名稱
這樣,你就成功地進行配置了hadoop
參考這篇文章
有些地方行不通,進行了一定的修改。