hadoop的安装在网上到处都有,这里我详细记录一下自己hadoop安装过程,以及遇到的一些问题:
1,Linux环境:hadoop需要在linux环境下安装,没有linux环境的,可参考我的文章
windows 下使用VirtualBox安装Ubuntu
2,创建hadoop用户
1,创建新用户 sudo useradd -m hadoop -s /bin/bash
2,设置用户密码 sudo passwd hadoop
3,位hadoop用户增加管理员权限 sudo adduser hadoop sudo
4,注销当前用户,并用hadoop用户登录
3,更新apt
1,用hadoop用户登录后,我们先更新一下apt,后续我们将会用apt安装软件。ctrl+alt+t打开终端:sudo apt-get update
2,安装vim:sudo apt-get install vim
4,安装SSH,配置SSH无密码登录
1,Ubuntu已经默认安装ssh client,我们还需要安装ssh server:sudo apt-get install openssh-server
2,安装后,可以使用如下命令登录本机:ssh localhost
3,配置ssh无密码登录:
exit # 退出刚才的 ssh localhost
cd ~/.ssh/ # 若没有该目录,请先执行一次ssh localhost
ssh-keygen -t rsa # 会有提示,都按回车就可以
cat ./id_rsa.pub >> ./authorized_keys # 加入授权
~的含义
在 Linux 系统中,~ 代表的是用户的主文件夹,即 “/home/用户名” 这个目录,如你的用户名为 hadoop,则 ~ 就代表 “/home/hadoop/”
5,安装java环境
1,安装JDK 1.8:sudo apt-get install openjdk-8-jre openjdk-8-jdk
2,安装好openjdk后,找到相应的安装路径:dpkg -L openjdk-8-jdk 该命令会输出jdk的安装路径列表
3
,配置JAVA_HOME环境变量:vim ~/.bashrc
在文件最前面添加如下一行,export JAVA_HOME=JDK安装路径
4,然后让配置生效:source ~/.bashrc # 使变量设置生效
5,配置好后我们再检查一下配置是否正确:
echo $JAVA_HOME # 检验变量值
java -version
$JAVA_HOME/bin/java -version # 与直接执行 java -version 一样
ok。hadoop需要的java环境就配置好了
6,安装hadoop2
2,将hadoop安装至/usr/local/中:
sudo tar -zxf ~/下载/hadoop-2.7.3.tar.gz -C /usr/local # 解压到/usr/local中
cd /usr/local/
sudo mv ./hadoop-2.7.3/ ./hadoop # 将文件夹名改为hadoop
sudo chown -R hadoop ./hadoop # 修改文件权限
3,检查hadoop是否可用:
cd /usr/local/hadoop
./bin/hadoop version
很遗憾,一路绿灯,在这里出现问题了:
看来是之前安装的jdk1.8的原因,没办法,重新执行步骤5,安装jdk1.7:
sudo apt-get install openjdk-7-jre openjdk-7-jdk,
但是事实好像不容乐观啊,又错了!!
这就尴尬了啊,只好求助于万能的google了~
命令如下:
sudo add-apt-repository ppa:openjdk-r/ppa
sudo apt-get update
sudo apt-get update
sudo apt-get install openjdk-7-jdk
当然了,还有一种方法就是修改hadoop的配置:
1,打开hadoop配置文件:sudo vim /usr/local/hadoop/etc/hadoop/hadoop-env.sh
2,找到JAVA_HOME,修改为我们之前配置的环境变量:/usr/lib/jvm/java-8-openjdk-amd64
好吧,这个时候才发现配置文件里面的JAVA_HOME是${JAVA_HOME},那肯定是我们的JAVA_HOME搞错了,再次打开:sudo ~/.bashrc,问题果然出在这里,怪只怪太年轻,没有检查清楚啊。
修改后再次检查hadoop是否可用。。
到此,hadoop就安装完毕了