1.为了 方便以后对hadoop的管理,我们需要增加一个hadoop用户,
addgroup hadoop
adduser -ingroup hadoop hadoop
给hadoop赋于root权限
sudo adduser hadoop sudo
2 安装SSH server、配置SSH无密码登陆
Ubuntu默认安装了SSH client,还需要安装SSH server。
sudo apt-get install openssh-server
集群、单节点模式都需要用到SSH无密码登陆,首先设置SSH无密码登陆本机。
输入命令
ssh localhost
会有如下提示(SSH首次登陆提示),输入yes。
先退出刚才的ssh,然后生成ssh证书:
exit # 退出 ssh localhost
cd ~/.ssh # 如果没有该目录,先执行一次ssh localhost
ssh-keygen -t rsa # 一直按回车就可以
cp id_rsa.pub authorized_keys
此时再用ssh localhost命令,就可以直接登陆了,如下图所示。
3.由于hadoop是java语言写的,需要使用java的运行环境,因此必须要先安装java,安装过程这里就不多说了。
4.Ubuntu16.04默认安装后并不安装sshd。使用命令"sudo apt-get install openssh-server"安装。安装后使用"ps aux | grep sshd"命令查看sshd是否启动
5.安装hadoop ,官网:http://hadoop.apache.org/releases.html,我下的是3.0.0的,下载完后,解压到/usr/local目录下,
cd ~/Downloads/
sudo tar -zxvf hadoop-3.0.0.tar.gz -C /usr/local/
cd /usr/local/
为了防止以后权限问题,修改hadoop文件夹所有者为hadoop
sudo chown -R hadoop:hadoop hadoop-3.0.0/
切换hadoop用户
su hadoop
进入hadoop目录,
cd /usr/local/hadoop-3.0.0/
编辑文件"hadoop-env.sh"中定义的JAVA_HOME参数,先查看自己的java_home ,
echo $JAVA_HOME 然后把输出的路径设置到hadoop-env.sh中
vi etc/hadoop/hadoop-env.sh
在使用命令"./bin/hadoop"后出现如下提示说明配置成功:
现在前期配置已经好了,用hadoop自带的demo测试下,
mkdir input
cd input
echo "hello world" > test1.txt
echo "hello hadoop" > test2.txt
cd ..
./bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-3.0.0.jar wordcount input output
cat output/*
查看运行结果
单机模式安装完成,下面会出伪分布式模式和分布式模式。