参考林子雨教程Hadoop安装教程_伪分布式配置_CentOS6.4/Hadoop2.6.0_厦大数据库实验室博客
但是版本过低,还是centos6.4的和Hadoop2.x的
Hadoop安装教程
Centos7
JDK1.8
Hadoop3.3.1(高版本的Hadoop使用JDK1.7不行)
创建hadoop用户
[root@localhost luoyang]# useradd -m hadoop -s /bin/bash [root@localhost luoyang]# passwd hadoop 更改用户 hadoop 的密码 。 新的 密码: 无效的密码: 密码少于 8 个字符 重新输入新的 密码: passwd:所有的身份验证令牌已经成功更新。 [root@localhost luoyang]#
按提示输入两次密码,可简单的设为 “hadoop”(密码随意指定,若提示“无效的密码,过于简单”则再次输入确认就行)
为Hadoop用户增加管理员权限,方便部署
执行:
[root@localhost luoyang]# visudo
大概在98行
注意之间空格为tab
准备工作
重新用hadoop账户登录
安装SSH,配置SSH无密码登录:
使用如下命令检查
[hadoop@localhost ~]$ rpm -qa | grep ssh
得到结果中包含SSH client 和 SSH server,则不需要再安装。
测试ssh是否可用:
[hadoop@localhost ~]$ ssh localhost
输入yes,输入密码登录到本机
现在配置无密码登录:
先exit
退出刚才的ssh,再用ssh-keygen
生成密钥,并将密钥加入到授权中:
[hadoop@localhost ~]$ cd ~/.ssh/ [hadoop@localhost .ssh]$ ssh-keygen -t rsa [hadoop@localhost .ssh]$ cat id_rsa.pub >> authorized_keys [hadoop@localhost .ssh]$ chmod 600 ./authorized_keys
此时再用ssh localhost
命令,无需输入密码直接登录:
安装JAVA环境
我们使用的是Hadoop3.3.1,而Java-1.7.0-openjdk不能支持最新的Hadoop了,得用1.8.0的jdk,而centos是自带jdk的,由于之前踩过坑,如自带jdk的情况下在继续安装jdk,则会引起后续不必要的麻烦,echo $JAVA_HOME
和java -version
输出的结果不一致问题
删除自带的jdk:Centos7删除自带JDK_dulei17816的博客-CSDN博客
查看系统自带的jdk:
rpm -qa | grep java
除了
都需要删除:
rpm -e --nodeps 文件名
注意如果权限不够的话需要先切换到root再进行删除
[hadoop@localhost ~]$ rpm -e --nodeps java-1.7.0-openjdk-headless-1.7.0.261-2.6.22.2.el7_8.x86_64 错误:can't create 事务 lock on /var/lib/rpm/.rpm.lock (权限不够) [hadoop@localhost ~]$ su 密码: [root@localhost hadoop]# rpm -e --nodeps java-1.7.0-openjdk-headless-1.7.0.261-2.6.22.2.el7_8.x86_64 [root@localhost hadoop]# rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.262.b10-1.el7.x86_64 [root@localhost hadoop]# rpm -e --nodeps java-1.8.0-openjdk-1.8.0.262.b10-1.el7.x86_64 [root@localhost hadoop]# rpm -e --nodeps java-1.7.0-openjdk-1.7.0.261-2.6.22.2.el7_8.x86_64 [root@localhost hadoop]# java -version bash: java: 未找到命令... [root@localhost hadoop]# rpm -qa | grep java python-javapackages-3.4.1-11.el7.noarch tzdata-java-2020a-1.el7.noarch javapackages-tools-3.4.1-11.el7.noarch [root@localhost hadoop]#
则成功删除
接下来就是jdk的安装
[hadoop@localhost ~]$ sudo yum install java-1.8.0-openjdk java-1.8.0-openjdk-devel
输入y
接下来设置JAVA_HOME 环境变量:
vim ~/.bashrc
在文件的最后一行加入:export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk
让环境变量生效,执行如下:
hadoop@localhost ~]$ source ~/.bashrc
接下来验证是否成功:
[hadoop@localhost ~]$ echo $JAVA_HOME /usr/lib/jvm/java-1.8.0-openjdk [hadoop@localhost ~]$ java -version openjdk version "1.8.0_302" OpenJDK Runtime Environment (build 1.8.0_302-b08) OpenJDK 64-Bit Server VM (build 25.302-b08, mixed mode) [hadoop@localhost ~]$
$JAVA_HOME与java -version的输出jdk版本结果一致,成功
到此,hadoop所需的java运行环境就安装好了
安装Hadoop3.3.1
可以通过 http://mirror.bit.edu.cn/apache/hadoop/common/ 或者 Index of /apache/hadoop/common 下载
选择hadoop-3.3.1.tar.gz下载
下载完成后
sudo tar -zxf ~/下载/hadoop-3.3.1.tar.gz -C /usr/local 解压到目录/usr/local/中 cd /usr/local/ sudo mv ./hadoop-2.6.0/ ./hadoop #将文件夹改名为hadoop sudo chown -R hadoop:hadoop ./hadoop # 修改文件权限
完成后检查是否成功
cd /usr/local/hadoop./bin/hadoop version
成功显示hadoop的版本信息,则Hadoop安装成功
伪分布式可以参考Hadoop安装教程_伪分布式配置_CentOS6.4/Hadoop2.6.0_厦大数据库实验室博客