概述
最近要做毕设了,题目嘛应该用的到hadoop,以前上课都是用虚拟机搭建Master+1slave,总感觉用的不爽,于是多方借鉴搭建了伪分布式。
中间也遇到了很多问题,于是趁现在比较闲,记录下。
0.环境
本次使用 Ubuntu 16.04 64位 作为系统环境,安装的不是虚拟机,效果是一样的。
ubuntu系统获取
前两天没事点的时候发现3.0.0不见了,换别的也行,这个不重要
Hadoop使用的版本是3.0.0
Hadoop3.0.0下载(注意是第二个)
然后安装好Ubuntu系统
1.准备工作
1.1 创建hadoop用户
01:先打开终端(Ctrl+Alt+T)
键入指令:
sudo useradd -m hadoop -s /bin/bash
02:设置用户hadoop的登录密码
sudo passwd hadoop
提示会要求输入两次密码(键入密码不会显示),这里我就用的hadoop。
03:为用户hadoop增加管理员权限
sudo adduser hadoop sudo
(虽然增加了管理员权限,但后面有些地方还是需要进入root用户进行操作)
1.2 更新apt
接下来注销,登录到hadoop用户下。
为了安装一些软件,我们需要更新apt。
sudo apt-get update
由于之前实验室的课,用的是Centos,自带的好像是vi编辑器,这里就习惯的安装了一个vim,不想安装也没事,就用gedit也是可以的。
sudo apt-get install vim
1.3 安装SSH并配置SSH无密码登录
之前配置过hadoop的同学们,肯定是知道这个的。
网上是说Ubuntu已经自带了SSH client,还需要安装SSH server
sudo apt-get install openssh-server
安装成功后,使用命令登录本机
ssh localhost
提示要求输入yes就输入
这样做了,我们每次登录还是会需要输入密码。
接下来配置SSH无密码登录。
首先退出登录的SSH。
想要退出的话,键入exit即可。
接下来生成密码并加入授权:
cd ~/.ssh/
ssh-keygen -t rsa //遇到提示,一路回车即可
cat ./id_rsa.pub >> ./authorized_keys //加入授权
接下来可以再次尝试ssh localhost,如若无需再次输入密码,既成功。
1.4 安装Java环境
01:下载和安装jdk
这里选择的版本是1.8.0_161
JDK1.8.0_161 64bit下载
下载好后,找到文件所在位置(以我的为例,在下载目录下)
cd ~/下载
mv ~/下载/jdk-8u161-linux-x64.tar.gz /usr/java //若提示权限不够,则进入root下操作
tar -xvf /usr/java/jdk-8u161-linux-x64.tar.gz
可以在对应的路径下找到解压好的jdk文件
02:配置环境变量
vim ~/.bashrc
将如下环境变量写入文件第一行(i键,对文档开始编辑)
保存,退出。(Esc--:wq)
接下来需要让环境变量生效:
source ~/.bashrc
检查是否配置正确:
java -version
2.安装Hadoop
cd ~/下载
mv ~/下载/hadoop-3.0.0.tar.gz /usr/local/hadoop
tar -xvf /usr/local/hadoop/hadoop-3.0.0.tar.gz
解压完成后,可进行验证:
cd /usr/local/hadoop
3.Hadoop伪分布式配置
01. 配置core-site.xml
vim /usr/local/hadoop/etc/hadoop/core-site.xml
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>file:/usr/local/hadoop/tmp</value>
<description>Abase for other temporary directories.</description>
</property>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
02. 配置hadoop-env.sh
vim /usr/local/hadoop/etc/hadoop/hadoop-env.sh
找到被注释掉的JAVA_HOME
03. 配置hdfs-site.xml
vim /usr/local/hadoop/etc/hadoop/hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/usr/local/hadoop/tmp/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/usr/local/hadoop/tmp/dfs/data</value>
</property>
</configuration>
配置完成后,执行NameNode的格式化
/usr/local/hadoop/bin/hdfs namenode -format
会有提示是否成功。
接着开启NameNode和DataNode
/usr/local/hadoop/sbin/start-dfs.sh
这时,你可能会发现一个警告:
WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform… using builtin-java classes where applicable
该解决办法请自行问度娘,加一个环境变量就可以。
至此,完成配置,可通过jps查看是否启动成功。
ps:如果在最后查看localhost:50070
若发现404问题
1. 手动修改hdfs-site.xml 添加如下:
<property>
<name>dfs.http.address</name>
<value>127.0.0.1:50070</value>
</property>
127.0.0.1是对应的localhost地址
2. 也有可能是你的电脑为手机开启了热点
可以用第一种方式或者关闭热点解决该问题
后面还会进行Yarn的配置,暂时先到这里。
参考文章:
1.Hadoop安装教程_单机/伪分布式配置_Hadoop2.6.0/Ubuntu14.04
http://www.powerxing.com/install-hadoop/
2.hadoop无法访问50070端口
http://blog.csdn.net/Neone__u/article/details/53741786
最后
以上就是自信猫咪为你收集整理的Ubuntu16.04 安装hadoop伪分布式10.环境1.准备工作2.安装Hadoop的全部内容,希望文章能够帮你解决Ubuntu16.04 安装hadoop伪分布式10.环境1.准备工作2.安装Hadoop所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复