前言:

目前,学习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. js 正则之 控制字符 \cX

    原文:js 正则之 控制字符 \cX 前些天在司徒正美的群里有人问了这么个问题:正则表达式里特殊字符 \cX 到底是什么?确实,我之前也挺在意的,但是一直没去看到底是什么.在MDN上只说是控制字符(详 ...

  2. W5500问题集锦(一)

    在"WIZnet杯"以太网技术竞赛中,有非常多參赛者在使用中对W5500有各种各样的疑问,对于这款WIZnet新推出的以太网芯片,使用中大家是不是也一样存在下面问题呢?来看一看: ...

  3. 编程算法 - 二部图确定 代码(C)

    二部图确定 代码(C) 本文地址: http://blog.csdn.net/caroline_wendy 题目: 给定一个具有n个顶点的图. 要给图上每一个顶点染色, 而且要使相邻的顶点颜色不同.  ...

  4. Spring Resource之ResourceLoaderAware接口

    ResourceLoaderAware接口是一个特殊的标记接口,它表示对象需要提供给一个ResourceLoader引用: public interface ResourceLoaderAware { ...

  5. 开始Unity3D参观考察

    前言:这个系列的文章纯属对自己学习的整理,非高手之作. 但确实的记载了我作为一个没接触过3D游戏编程的大学生的心路历程.争取每周整理一次吧. 之所以会開始学Unity3D,最基本的原因是由于在快放暑假 ...

  6. 如何将C#对象转化为JSON字符串

    System.Web.Extensions.dll中类JavaScriptSerializer可以帮助我们把C#对象转化为JSON字符串. 有一个Person类 public class Person ...

  7. maven 启蒙

    Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具.为了替代ANT的Apache开源项目.现在的项目越来越大.ANT已经不适用了. 1.部署m ...

  8. async/task/await

    async/task/await三组合是.NET Framework 4.5带给.NET开发者的大礼,合理地使用它,可以提高应用程序的吞吐能力. 但是它的使用有点绕人,如果不正确使用,会带来意想不到的 ...

  9. C#多线程--仓库问题引发的故事

    假设有这么个场景,一个仓库,里面有N件货物,现有六个搬运工(用线程模拟),其中2个向仓库放东西,4个往外搬东西.假设1秒能向里放2件货物,同时可向外搬3件货物(线程休眠),现在需要往里放M件货物,一旦 ...

  10. iOS基础 - UIWebView

    一.UIWebView简介 是iOS内置的浏览器控件,可以浏览网页.打开文档等 能够加载html/htm.pdf.docx.txt等格式的文件 系统自带的Safari浏览器就是通过UIWebView实 ...