基于Ubuntu系统下的Hadoop平台搭建
- 参考文档链接:
- http://dblab.xmu.edu.cn/blog/2441-2/
- http://dblab.xmu.edu.cn/blog/2460-2/
- 1.更换阿里源(因为访问archive.ubuntu太慢,所以换成国内源,访问更快)
- 2.链接xshell
- 1.安装SSH服务端
- 2.链接xhsell
- 3.安装JAVA环境
- 4.创建Hadoop用户
- 4.1创建新用户并设置密码
- 4.2为hadoop用户添加管理员权限
- 5.设置SSH免密登录
- 5.1登录localhost
- 5.2设置为无密码登录
- 6.Hadoop安装
- 6.1解压到我们的Ubuntu系统中
- 6.2切换到Hadoop用户
- 6.3解压Hadoop
- 6.4伪分布式模式配置
- 6.4.1修改配置文件
- 6.4.2执行名称节点格式化
- 6.5启动hadoop
- 6.6使用浏览器查看HDFS信息
- 6.7运行伪分布式实例
- 6.8关闭Hadoop
- 6.9相关命令
参考文档链接:
http://dblab.xmu.edu.cn/blog/2441-2/
http://dblab.xmu.edu.cn/blog/2460-2/
1.更换阿里源(因为访问archive.ubuntu太慢,所以换成国内源,访问更快)
- 输入命令行
sudo nano /etc/apt/sources.list
- 开始替换
- 替换完毕
- 进行更新
sudo apt update && sudo apt upgrade
2.链接xshell
1.安装SSH服务端
$ sudo apt-get install openssh-server
2.链接xhsell
3.安装JAVA环境
- 安装jdk
sudo apt install openjdk-8-jdk -y
- 配置环境变量
- 添加完之后,更新环境变量
1.# 更新环境变量
2.source ~/.bashrc
- 配置成功
4.创建Hadoop用户
4.1创建新用户并设置密码
- 用户名为hadoop,使用/bin/bash作为shell
$ sudo useradd -m hadoop -s /bin/bash
4.2为hadoop用户添加管理员权限
sudo adduser hadoop sudo
- Hadoop并没有提供SSH密码登录的形式,所以需要将所有机器配置为无密码登录
5.1登录localhost
5.2设置为无密码登录
- 此时就可以使用
ssh localhost
无密码登录
- 这里为大家挂上网盘链接,也可以去官网下载地址点这里
- 链接:https://pan.baidu.com/s/1HiO6SPp9UmUlQEXHlvzU-A
- 提取码:q7rd
6.1解压到我们的Ubuntu系统中
- 先安装
lrzsz
(可能有的人装完系统后,这条命令无法使用,可以执行的话请自动略过) - 把下载好的
Hadoop压缩包
从windows系统
中传到我们的虚拟机系统
中
6.2切换到Hadoop用户
ssh hadoop@localhost
6.3解压Hadoop
- 因为我们刚刚是把压缩包传到了
ba
这个用户上,现在我们把它move
到hadoop
这个用户上 - 再解压
- 此时就转移并解压完成了
- 查看一下版本
- 配置环境变量方便打开
6.4伪分布式模式配置
- 在单个节点(一台机器上)以伪分布式的方式运行
6.4.1修改配置文件
需要修改/usr/local/hadoop/etc/hadoop/
文件夹下的core-site.xml
和hdfs-site.xml
文件
core-site.xml
将
<configuration>
</configuration>
改为
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>file:/usr/hadoop/tmp</value>
<description>Abase for other temporary directories.</description>
</property>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
hdfs-site.xml
将
<configuration>
</configuration>
修改为
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/usr/hadoop/tmp/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/usr/hadoop/tmp/dfs/data</value>
</property>
</configuration>
6.4.2执行名称节点格式化
$ cd /usr/hadoop
$ ./bin/hdfs namenode -format
6.5启动hadoop
$ cd /usr/hadoop
$ ./sbin/start-dfs.sh
- 用
jps
命令查看是否启动成功
6.6使用浏览器查看HDFS信息
ifconfig 命令即可查看自己的IP地址
6.7运行伪分布式实例
- 执行以下命令
cd /usr/hadoop
# 在HDFS中创建用户目录
./bin/hdfs dfs -mkdir -p /user/hadoop
#在HDFS中创建hadoop用户对应的input目录
./bin/hdfs dfs -mkdir input
#把本地文件复制到HDFS中
./bin/hdfs dfs -put ./etc/hadoop/*.xml input
#查看文件列表
./bin/hdfs dfs -ls input
./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar grep input output 'dfs[a-z.]+'
#查看运行结果
./bin/hdfs dfs -cat output/*
- 如果要再次运行,需要删除
output
文件夹
6.8关闭Hadoop
./sbin/stop-dfs.sh
6.9相关命令
$ cd /usr/hadoop
#格式化名称节点 (这个命令只需只需一次)
$ ./bin/hdfs namenode -format
#启动Hadoop
$ ./sbin/start-dfs.sh
#查看Hadoop是否成功启动
$ jps
# 关闭Hadoop
$ ./sbin/stop-dfs.sh
# 删除 tmp 文件,注意这会删除 HDFS中原有的所有数据
$ rm -r ./tmp
# 重启
$ ./sbin/start-dfs.sh