前言:

目前,学习hadoop的目的是想配合其它两个开源软件Hbase(一种NoSQL数据库)和Nutch(开源版的搜索引擎)来搭建一个知识问答系统,Nutch从指定网站爬取数据存储在Hbase数据库的表中,而Hbase运行在Hadoop之上。

学习Hadoop已有数月,想把自己的积累晒出来,一者温故知新,二者与大家分享。写文章挺费时间的,所以文风尽量简洁。若欲了解细节可发帖讨论,交个朋友。

水平有限,还望指正!

一、使用环境

操作系统:Ubuntu12.04

Hadoop版本:1.0.4

二、Hadoop官网安装手册

单机安装分为“standalone”和“pseudo-distributed”两种模式,我使用的是伪分布式模式。

手册的安装步骤很详细,没有必要当翻译工了。但是手册为了通用性,牺牲了一些关键问题的讨论。第三节中提及一下。

三、手册缺陷

手册主要有两个问题没有说清楚:

1.Hadoop安装在哪个目录下好?

选择一般有两种:/usr/local和家目录下。我选择安装在家目录下,因为开始玩hadoop的时候,这样避免了权限的麻烦;如果要部署应用的话,应该安装在/usr/local。

2.配置文件的问题

这是安装hadoop最重要的步骤。所有配置文件均在${HADOOP_HOME}/conf目录下。

如果完全按照手册配置,你的hadoop可能经常遇到NameNode或DataNode启动不起来的情况。配置文件的不同主要在core-site.xml.

手册配置如下:

<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:</value>
</property>
</configuration>

我的配置如下:

<configuration>
  7      <property>
  8          <name>fs.default.name</name>
  9          <value>hdfs://localhost:</value>
 10      </property>
 11 
 12      <property>  
 13         <name>hadoop.tmp.dir</name>  
 14         <value>/home/zhengeek/hadoop-tmp</value>  
 15         <description>A base for other temporary directories.</description>  
 16      </property>  
 17     </configuration>

有两处不同:

1.9000和8020这两个端口都可以,只要没有被占用。

2.最容易出问题的地方就在这里。比如这个哥们遇到的问题

      hadoop运行起来,hdfs和mapreduce有许多数据需要保存。这可以通过dfs.name.dir 和 dfs.data.dir设置。如果没有设置,那么数据就会默认存放在/tmp目录下,如果机器重启,tmp目录下的数据就会丢失,namenode自然启动不起来了。

      如果设置了hadoop.tmp.dir,那么这些数据就会默认存放在改目录下。

       有关hadoop.tmp.dir设置的讨论

四、启动hadoop

       1.格式化hdfs

       $bin/hadoop namenode -format

       2.启动hdfs

       $bin/start-all.sh

      3.检查是否成功

       $jps

       若成功,会看到namenode,secondarynamenode,datanode,jobtracker和tasktracker五个进程。


如有问题,欢迎联系我哦。




Hadoop1.0.4伪分布式安装的更多相关文章

  1. Hadoop1.1.2伪分布式安装

    一.安装前准备设置Linux的静态IP修改VirtualBox的虚拟网卡地址修改主机名把hostname和ip绑定关闭防火墙:service iptables stop二.SSH免密码登陆生成秘钥文件 ...

  2. Hadoop1.1.2伪分布式安装笔记

    一.设置Linux的静态IP 修改桌面图标修改,或者修改配置文件修改 1.先执行ifconfig,得到网络设备的名称eth0 2.编辑/etc/sysconfig/network-scripts/if ...

  3. Hadoop-1.0.4伪分布安装与配置

    1.采用伪分布模式安装      将hadoop-****.tar.gz复制到linux的/usr/local目录下. 2.解压,重命名      #tar -xzvf hadoop-1.0.4.ta ...

  4. Hadoop1.2.1 伪分布式安装

    Hadoop1.2.1 单机模式安装 Hadoop组件依赖图(从下往上看) 安装步骤: 详细步骤: 设置ssh自动登录(如下图): 1.输入命令 [ssh-keygen -t rsa],然后一直按回车 ...

  5. Linux下Storm2.1.0的伪分布式安装

    官方下载网址:http://storm.apache.org/downloads.html 1.第一步我们先从官网下载解压包  2.然后进行解压 3.配置环境变量 在profile里面插入如下格式语句 ...

  6. redhat 安装hadoop1.2.1伪分布式

    完整安装过程参考:http://www.cnblogs.com/shishanyuan/p/4147580.html 一.环境准备    1.安装linux.jdk      2.下载hadoop2. ...

  7. Ubuntu 14.04 LTS 安装 spark 1.6.0 (伪分布式)-26号开始

    需要下载的软件: 1.hadoop-2.6.4.tar.gz 下载网址:http://hadoop.apache.org/releases.html 2.scala-2.11.7.tgz 下载网址:h ...

  8. hadoop 0.20.2伪分布式安装详解

    adoop 0.20.2伪分布式安装详解 hadoop有三种运行模式: 伪分布式不需要安装虚拟机,在同一台机器上同时启动5个进程,模拟分布式. 完全分布式至少有3个节点,其中一个做master,运行名 ...

  9. hadoop伪分布式安装之Linux环境准备

    Hadoop伪分布式安装之Linux环境准备 一.软件版本 VMare Workstation Pro 14 CentOS 7 32/64位 二.实现Linux服务器联网功能 网络适配器双击选择VMn ...

随机推荐

  1. Linux 下 简单客户端服务器通讯模型(TCP)

    原文:Linux 下 简单客户端服务器通讯模型(TCP) 服务器端:server.c #include<stdio.h> #include<stdlib.h> #include ...

  2. ASP.NET 5中的Sake与KoreBuild

    初识ASP.NET 5中的Sake与KoreBuild   从github上签出基于ASP.NET 5的MVC 6的源代码进行编译,发现有2个编译命令: build.cmd是针对Windows的编译命 ...

  3. C# 笔试题,看你会几道题

    1.       Which interface you need to implement to support for each? IEnumerator IEnumerable ICompare ...

  4. HBuilder js 自定义代码块

    =begin 本文档是HBuilder预置的js代码块的文件.注意不要把其他语言的设置放到js里来. 如果用户修改此文档,HBuilder升级后会覆盖用户的修改,建议进入菜单 工具→扩展代码块 扩展相 ...

  5. [Android] Volley源代码分析(五岁以下儿童)Q \\ u0026一个

    Volley源代码分析系列那里一段时间,告诉我,有许多私人留言,同时一些问题抛出.对于一些简单的问题,我们跳,这两天被连接到朋友@smali提出的问题.告诉我你不得不赞叹查看源代码时的详细程度,大家一 ...

  6. C#中使用消息队列RabbitMQ

    在C#中使用消息队列RabbitMQ 2014-10-27 14:41 by qy1141, 745 阅读, 2 评论, 收藏, 编辑 1.什么是RabbitMQ.详见 http://www.rabb ...

  7. SQL SERVER2005 excel float导入

    接到mission:将一堆excel的东西导入到SQL SERVER2005 命令很easy SELECT * INTO XLImport3 FROM OPENDATASOURCE('Microsof ...

  8. Android项目----dispathTouchEvent

    说到dispathTouchEvent,就不得不说一个最贱的屏幕触摸动作触发的一些列Touch事件: ACTION_DOWN->ACTION_MOVE->ACTION_MOVE->A ...

  9. C++关于数字逆序输出的两种思路,及字符串逆序输出

    C++关于数字逆序输出的两种思路,及字符串逆序输出 作者:GREATCOFFEE 发布时间:NOVEMBER 15, 2012 分类:编程的艺术 最近在跟女神一起学C++(其实我是不怀好意),然后女神 ...

  10. JAVA学习:内部类

    一.内部类的访问规则: 1.内部类可以直接访问外部类中的成员,包括私有.格式为外部类名.this 2.外部类要访问内部类,必须建立内部类对象. 代码: class Outer { private in ...