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