Docker下的Hadoop3.1.3安裝教程(包括java環境配置)


本文通過使用Centos8(Docker)作為系統環境,一步步搭建出Hadoop3.1.3,其間順便搭建java環境。

安裝包:

hadoop-3.1.3.tar.gz 

jdk-8u162-linux-x64.tar.gz

為了方便管理可以創建一個hadoop用戶賬號,添加密碼,增加管理員權限,

[root@e22c6017dd9b /]# useradd hadoop
[root@e22c6017dd9b /]# passwd hadoop
[root@e22c6017dd9b /]# chmod -v u+w /etc/sudoers
[root@e22c6017dd9b /]# vim /etc/sudoers #找到root ALL=(ALL) ALL 然后添加hadoop ALL=(ALL) ALL 如需新用戶使用sudo時不用輸密碼,把最后一個ALL改為NOPASSWD:ALL即可。
[root@e22c6017dd9b /]# chmod -v u-w /etc/sudoers
[root@e22c6017dd9b /]# su hadoop
[hadoop@e22c6017dd9b /]$ sudo -l

ps:這里我出現了一點小問題,提示

bash: passwd: command not found

直接安裝就好了

[root@e22c6017dd9b /]# dnf update
[root@e22c6017dd9b /]# dnf install passwd -y

這里我沒有找到/etc/sudoers文件,推測應該是沒有安裝sudo,還是一樣,直接安裝就好了

[root@e22c6017dd9b /]#dnf install sudo -y

 看林子雨老師說的集群、單節點模式都需要用到 SSH 登陸(類似於遠程登陸,你可以登錄某台 Linux 主機,並且在上面運行命令),還需要安裝 SSH server

http://dblab.xmu.edu.cn/blog/2441-2/

安裝ssh客戶端和server

[root@e22c6017dd9b /]# yum install openssh-clients -y
[root@e22c6017dd9b /]# yum install openssh-server -y
[hadoop@e22c6017dd9b /]$ ssh localhost #登錄本機(1)
exit                           # 退出剛才的 ssh localhost
cd ~/.ssh/                     # 若沒有該目錄,請先執行一次ssh localhost
ssh-keygen -t rsa              # 會有提示,都按回車就可以
cat ./id_rsa.pub >> ./authorized_keys  # 加入授權

這里有個題外話

# usermod -g root hadoop #這里順便弄了下

 弄好后把宿主機上面的文件拉過去

[root@iZwz9g27qld9va1076x1rrZ ~]# docker cp jdk-8u162-linux-x64.tar.gz  eeadbd63f1cb:/home/hadoop

安裝java環境

先找地方存放好jdk文件

cd /usr/lib
sudo mkdir jvm #創建/usr/lib/jvm目錄用來存放JDK文件
cd ~ #進入hadoop用戶的主目錄
cd home/hadoop #注意區分大小寫字母,剛才已經通過FTP軟件把JDK安裝包jdk-8u162-linux-x64.tar.gz上傳到該目錄下
sudo tar -zxvf ./jdk-8u162-linux-x64.tar.gz -C /usr/lib/jvm  #把JDK文件解壓到/usr/lib/jvm目錄下
ls /usr/lib/jvm #jdk1.8.0_162目錄

開始配置環境

cd ~
vim ~/.bashrc

找個地方貼上去

export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_162
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

現在就可以刷新一下再看看有沒有成功

[hadoop@eeadbd63f1cb jvm]$ source ~/.bashrc
[hadoop@eeadbd63f1cb jvm]$ java -version
java version "1.8.0_162"
Java(TM) SE Runtime Environment (build 1.8.0_162-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.162-b12, mixed mode)

 終於開始安裝Hadoop,我不知道該不該吐槽下我竟然弄了好久前面的那些,跟配置java一樣,先把文件拉過來再說

[root@iZwz9g27qld9va1076x1rrZ ~]# docker cp hadoop-3.1.3.tar.gz  eeadbd63f1cb:/home/hadoop

然后解壓,改名,給權限

[hadoop@eeadbd63f1cb jvm]$ sudo tar -zxf ~/hadoop-3.1.3.tar.gz -C /usr/local
[hadoop@eeadbd63f1cb ~]$ cd /usr/local/
[hadoop@eeadbd63f1cb local]$ sudo mv ./hadoop-3.1.3/ ./hadoop 
[hadoop@eeadbd63f1cb local]$ sudo chown -R hadoop ./hadoop

最后就可以檢查下是否可用

[hadoop@eeadbd63f1cb local]$ cd hadoop/
[hadoop@eeadbd63f1cb hadoop]$ ./bin/hadoop version
Hadoop 3.1.3
Source code repository https://gitbox.apache.org/repos/asf/hadoop.git -r ba631c436b806728f8ec2f54ab1e289526c90579
Compiled by ztang on 2019-09-12T02:47Z
Compiled with protoc 2.5.0
From source with checksum ec785077c385118ac91aadde5ec9799
This command was run using /usr/local/hadoop/share/hadoop/common/hadoop-common-3.1.3.jar

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM