Hadoop搭建指南

1.前期准备:

1、Linux基础知识
2、Ubuntu14.04TLS
3、hadoop安装包

2. 新建hadoop用户

adduser hadoop
passwd hadoop

3. 安装JDK

sudo apt-get update     #更新后才可用吗default-jdk安装
sudo apt-get install default-jdk

4. 在home目录新建hadoop下载目录,hadoop_download

mkdir hadoop_download

5. 下载hadoop安装文件

cd hadoop_download
wget http://archive.apache.org/dist/hadoop/core/hadoop-2.7.1/hadoop-2.7.1.tar.gz

注:上面的网址有时下载缓慢,不稳定,可以选中下面的附件,右键复制链接地址,替换上述网址。(附件位于文末【文章存档链接中】)格式为:

wget --no-check-certificate [https://网址]

因为网址为https因此需要加--no-check-certificate参数

6. 为sudoers添加hadoop

su    #切换root用户
vim /etc/sudoers        #若编辑器不存在,请执行sudo apt-get install vim
#在 root  ALL=(ALL:ALL) ALL下方新增
hadoop  ALL=(ALL:ALL) ALL
#保存并退出vim编辑器
su hadoop       #切换回hadoop用户

7. 安装openssh-server

sudo apt-get install openssh-server

#测试安装是否成功
ssh localhost
#输入yes后输入密码成功看到以下消息为成功
Last login: Wed Jan 17 21:08:16 2018 from desktop-eeg1rso.lan
hadoop@ubuntu:~$

8. 解压hadoop-2.7.1.tar.gz

sudo tar -zxvf hadoop_2.7.1.tar.gz -C /usr/local/

解释参数zxvf
x : 从 tar 包中把文件提取出来
z : 表示 tar 包是被 gzip 压缩过的,所以解压时需要用 gunzip 解压
v : 显示详细信息
f xxx.tar.gz : 指定被处理的文件是 xxx.tar.gz
tar -C指定解压的目录【来源网络】

9. 设置hadoop-2.7.1/的写权限

cd /usr/local/
sudo chmod a+W hadoop-2.7.1/

10. 配置文件

cd hadoop-2.7.1/etc/hadoop/
ll

如下图所示:


image

我们需要配置以下几个文件:

hadoop-env.sh
core-site.xml
hdfs-site.xml

10.1 找出Java安装路径

因为我们使用apt安装Java因此,需要找出安装的路径

which java
ls -lar /usr/bin/java
ls -lar /etc/alternatives/java
ls -lar /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java
#当路径不在发生改变时,我们即找到了安装目录过程如下图所示
image
因此Java的目录为:
/usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java

10.2 修改hadoop-env.sh文件

sudo vim hadoop-env.sh
#修改下图的JAVA_HOME
image
/usr/lib/jvm/java-7-openjdk-amd64/jre
image

10.3 修改core-site.xml文件

mkdir /home/hadoop/hadoop_tmp_data
sudo vim core-site.xml

加入configuration标记之间

<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoop/hadoop_tmp_data</value>
</property>

10.4 修改hdfs-site.xml文件

sudo vim hdfs-site.xml

加入configuration标记之间

<property>
<name>dfs.replication</name>
<value>1</value>
</property>

11. 格式化namenode

cd /usr/local/hadoop-2.7.1/
./bin/hdfs namenode -format

看到Storage directory /home/hadoop/hadoop_tmp_data/dfs/name has been successfully formatted.意味着namenode格式化成功。如下图

image

12. 启动hdfs

./sbin/start-dfs.sh
#下来会输好几次密码

结果如图


image

13. 验证启动

jps

输入后应如下图


image

14. 运行 hadoop伪分布式实例

./bin/hdfs dfs -mkdir -p /user/hadoop
./bin/hdfs dfs -mkdir input
./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/*           #输出结果

输出结果如下:


image

15. 将输出结果取回本地

rm -r ./output    # 先删除本地的 output 文件夹(如果存在)
./bin/hdfs dfs -get output ./output # 将 HDFS 上的 output 文件夹拷贝到本机
cat ./output/*  #输出output文件夹下所有文件

结果如下:


image

16. 关闭hdfs

./sbin/stop-dfs.sh

17. 安装过程可能遇到的错误

  1. sudo apt-get install defualt-jdk 无效
    答:执行sudo apt-get update再执行上述命令即可。
  2. hdfs格式化namenode格式化失败
    答:hadoop-env.sh文件的JAVA_HOME是否有问题,是否配置错误。
  3. jps执行后进程仅有jps一个
    答:可能启动hdfs的用户为root,或hosts中没有公网ip对应hostname
  4. 执行测试验证“./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-.jar grep input output 'dfs[a-z.]+'”是,Java运行库出错,内存过小。
    答:Oracle VM VirtualBox可以关机后,增加虚拟机的内存,再次执行
    /usr/local/hadoop-2.7.1/sbin/start-dfs.sh
    后再次执行上述验证命令
    ./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-
    .jar grep input output 'dfs[a-z.]+'
  5. 执行13步的第一条命令出错
    答:请检查当前位置是否位于/usr/local/hadoop-2.7.1目录中
  6. 虚拟机安装完毕默认hadoop用户没有root用户
    答:给root用户设置密码即可sudo passwd root
  • 其他错误请参考17步,文章参考中的①。

18. 文章参考

  1. Hadoop安装教程_单机/伪分布式配置_Hadoop2.6.0/Ubuntu14.04
  2. Hadoop2.4.1伪分布式搭建【传智播客】
  3. 解压命令tar zxvf中zxvf分别是什么意思

19.备注

  • hadoop版本为:2.7.1
  • jdk版本为:1.7.0_151
  • 实验日期:2018/1/17

20.文章存档

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,539评论 6 497
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,911评论 3 391
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,337评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,723评论 1 290
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,795评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,762评论 1 294
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,742评论 3 416
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,508评论 0 271
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,954评论 1 308
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,247评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,404评论 1 345
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,104评论 5 340
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,736评论 3 324
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,352评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,557评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,371评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,292评论 2 352

推荐阅读更多精彩内容

  • 看到题目有没有一种高大上的感觉?毛线,当前是个人、是个公司都在说自己搞大数据,每天没有几个PB的数据入库,每天没有...
    丁小晶的晶小丁阅读 4,468评论 0 50
  • 之前的有点忘记了,这里在云笔记拿出来再玩玩.看不懂的可以留言 大家可以尝试下Ambari来配置Hadoop的相关环...
    HT_Jonson阅读 2,951评论 0 50
  • 经过一系列的前期环境准备,现在可以开始Hadoop的安装了,在这里去apache官网下载2.7.3的版本http:...
    欢醉阅读 1,663评论 8 28
  • 最近,一篇题为陪娃写作业的文章在朋友圈迅速走红,很多家长都纷纷为此文精准的解读陪读家长的心声而点赞。而这其中,提到...
    爱学习的宸妈阅读 130评论 0 0
  • 记忆(1) 次次捕捉记忆中你的影子。那件如荷花瓣绽放的衣领,那些锥心刺骨的笑和婉转回旋的眼眸。。。。。。我仍然找不...
    A白建国阅读 255评论 0 0