CentOS安装Hadoop

1 创建hadoop用户

首先以root用户登录远程服务器,执行下面命令创建新用户hadoop,并修改hadoop用户的密码

1
2
useradd -m hadoop -s /bin/bash
passwd hadoop


为了避免出现权限问题,我们为hadoop用户增加管理员权限

1
visudo

找到第98行,就是root ALL=(ALL) ALL这行,可以先按ESC键,然后输入:98,可以直接跳到第98行
我们在这行下面增加一行内容,中间的间隔为Tab

1
hadoop	ALL=(ALL) ALL

先按下i,进入编辑模式后,加入上面一行内容,编辑完成后,先按ESC键,输入:wq,按回车键保存退出

2 安装和配置SSH无密码登录

新开一个窗口,以hadoop用户登录进来,然后执行下列命令检查CentOS是否已安装了SSH client、SSH server

1
rpm -qa | grep ssh

如果返回的结果包含了SSH client和SSH server,那么无需安装,如下图

若需要安装,可执行下面命令安装

1
2
sudo yum install openssh-clients
sudo yum install openssh-server

接下来,我们测试一下SSH是否可用

1
ssh localhost

首次登录SSH需要输入yes,然后按照提示输入hadoop密码

为了减少每次登陆SSH输入密码,我们配置SSH为无密码登录
先退出SSH,执行exit命令

进入.ssh目录下,然后利用ssh-keygen生成密钥

1
2
cd /home/hadoop/.ssh/
ssh-keygen -t rsa

遇到所有的提示,全部按回车键

最后将密钥加入到授权中去,并修改文件权限

1
2
cat id_rsa.pub >> authorized_keys
chmod 600 ./authorized_keys


在试一下登录ssh命令ssh localhost命令,就可以无需密码直接登陆

3 安装Java环境

先使用xftp将jdk-8u151-linux-x64.tar.gz文件放入/home/hadoop目录下
通过xshell在/home/hadoop目录下新建java文件夹

1
sudo mkdir /home/hadoop/java

然后将压缩包拷贝到java文件夹下

1
sudo cp jdk-8u151-linux-x64.tar.gz /home/hadoop/java

进入/home/hadoop/java目录

1
cd /home/hadoop/java

然后解压jdk-8u151-linux-x64.tar.gz

1
sudo tar zxvf jdk-8u151-linux-x64.tar.gz

接下来设置jdk环境变量,这里采用全局设置方法,修改~/.bashrc

1
vi ~/.bashrc

添加下面内容

1
2
3
4
5
6
7
8
9
JAVA_HOME=/home/hadoop/java/jdk1.8.0_151

JRE_HOME=/home/hadoop/java/jdk1.8.0_151/jre

CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib

PATH=$JAVA_HOME/bin:$PATH

export PATH JAVA_HOME CLASSPATH


最后source一下

1
source ~/.bashrc

验证一下

1
java -version

4 安装Hadoop

先下载hadoop-2.9.0.tar.gz,通过xftp上传到/home/hadoop目录下
解压hadoop-2.9.0.tar.gz

1
sudo tar zxvf hadoop-2.9.0.tar.gz

修改一下文件的权限

1
sudo chown -R hadoop:hadoop hadoop-2.9.0


验证一下Hadoop是否安装成功

1
./hadoop-2.9.0/bin/hadoop version

结果如下则说明安装成功