创建Hadoop用户
创建用户
sudo useradd -m hadoop -s /bin/bash
设置密码
sudo passwd hadoop
给hadoop用户增加管理员权限(这样可以方便部署)
sudo adduser hadoop sudo
更新apt&安装Vim编辑器
sudo apt-get update
sudo apt-get install vim
安装SSH和配置SSH无密码登录
为了实现SSH无密码登录,需要在Ubuntu系统上安装SSH服务端和客户端,Ubuntu已经默认安装了SSH客户端,因此只需要安装SSH服务端
sudo apt-get install openssh-server
安装完以后,可以通过
ssh localhost
登录本机,登录后,根据提示输入“yes”,并输入密码,即可登录到本机
如果以上步骤成功,那么接下来就可以开始配置SSH无密码登录
退出刚刚的SSH登录,具体命令如下:
exit
然后利用ssh-keygen生成密钥,并将密钥加入授权,具体命令如下:
cd ~/.ssh/
ssh-keygen -t rsa
这是可以发现该目录下多了id_rsa和id_rsa.pub两个文件,下一步只需要将id_rsa.pub复制即可
复制命令如下:
cat ./id_rsa.pub >> ./authorized_keys
之后再用ssh localhost命令,即可无需输入密码直接登录了
安装java环境
由于Hadoop本身就是使用java编写的,因此,Hadoop的开发和运行都需要java的支持,对于Hadoop3.1.3而言,其要求使用JDK1.8或者更新的版本
访问Oracle官网下载JDK1.8安装包
https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html
进入/usr/lib目录,建立jvm文件夹来存放JDK文件:
之后进入Download文件夹下,将下载的JDK1.8进行解压并存放到刚刚新建的文件夹下:
下面继续执行命令,设置环境变量,
vim ~/.bashrc
在文档开头位置,添加以下几行内容(jdk版本请自行更改)
export JAVA_HOME=/usr /lib/jva/jdk1.8.0_281
export JRE_HOME=${JAVA_HOME]/jre
export JAVA_HOME=/usr /lib/jva/jdk1.8.0_281
export JRE_HOME=${JAVA_HOME]/jre
保存.bashrc文件并退出vim编辑器,然后执行以下命令使配置文件生效
source ~/.bashrc
执行完成后,使用
java -version
查看是否能够正确显示版本,若能得到以下结果,说明java安装成功
安装单机Hadoop
下载地址:
https://hadoop.apache.org/release/2.6.5.html
这里以2.6.5为例,字Ubuntu中下载至download目录后,执行以下命令:
sudo tar -zxf hadoop-2.6.5.tar.gz -c /usr/local
cd /usr/local
可以看到local目录下已经有hadoop的资源
之后修改目录的名称以及目录权限,命令如下:
sudo mv ./hadoop-3.1.4/ ./hadoop #将目录名称修改为hadoop,若hadoop版本不同,记得修改
sudo chown -R hadoop ./hadoop #修改目录权限
进入hadoop目录,查看hadoop的版本信息
./bin/hadoop version
看到以上片段,就说明Hadoop安装成功,除此之外,Hadoop还提供了一些例子供我们测试,(如果上述结果能够成功显示,则可以跳过,不然可以接着下面的代码再来测试一次)
Grep实例
首先进入hadoop,建立input文件夹
将/etc/local/hadoop/etc/hadoop目录下所有的配置文件复制到input目录,命令如下:
sudo cp ./etc/hadoop/*.xml ./input
接下来,执行如下代码运行Grep实例:
./bin/hadoop jar /usr/local/hadoop/share/hadoop/mapreduce/hadoop-napreduce-examples-3.1.4.jar grep ./input ./output 'dfs[a-z.]+'
等待运行结束后,可以看到hadoop目录下多了一个output文件夹,使用cat命令查看输出数据: