在Ubuntu上安装Hadoop(单机模式)

目录:

安装准备
JDK 6
配置SSH
Hadoop
配置
hadoop-env.sh
conf/hdfs-site.xml
通过 NameNode 来格式化 HDFS 文件系统

最近开始学习Hadoop,在这里记录一下学习的过程。

    Hadoop是一个用Java编写的用于运行与物理集群中的框架,吸收了GFS和mapreduce编程模型的特性。Hadoop的HDFS是一个高容错的分布式文件系统,并且它被设计运行于低成本的硬件上,能够提供很大的数据吞吐量,很适合那些数据量很大的应用程序。

    接下来,开始准备安装hadoop。我用的操作系统是 Ubuntu 12.10 server,hadoop的版本是1.2.0。

安装准备
JDK 6

Hadoop需要在JDK1.5以上的环境下才能运行,目前推荐使用JDK 6 。

$ sudo apt-get update
$ sudo apt-get install openjdk-6-jdk

安装完成之后,文件会被放置在 /usr/lib/jvm/java-6-openjdk-amd64 这个路径下。

配置SSH

Hadoop需要用SSH来管理它的节点。针对单机的情况,我们需要配置SSH让运行hadoop的用户能够登录本机。

首先,我们需要为运行hadoop的用户生成一个SSH key:

$ ssh-keygen -t rsa -P ""

然后,让你可以通过新生成的key来登录本地机器。

 $ cp ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys

准备结束,下面开始安装hadoop。

Hadoop

在hadoop官网上下载 1.2.0 版本的软件,解压,然后把文件放到 /usr/local/ 路径下:

$ tar -zxvf hadoop-1.2.0.tar.gz
$ mv hadoop-1.2.0 hadoop
$ cp -r hadoop/ /usr/local/

接下来开始设置一些环境变量,需要在 ~/.bashrc 文件里面添加一下内容:

# Set Hadoop-related environment variables
export HADOOP_HOME=/usr/local/hadoop

# Set JAVA_HOME (we will also configure JAVA_HOME directly for Hadoop later on)
export JAVA_HOME=/usr/lib/jvm/java-6-openjdk-amd64

# Some convenient aliases and functions for running Hadoop-related commands
unalias fs &> /dev/null
alias fs="hadoop fs"
unalias hls &> /dev/null
alias hls="fs -ls"

lzohead () {
    hadoop fs -cat $1 | lzop -dc | head -1000 | less
}

# Add Hadoop bin/ directory to PATH
export PATH=$PATH:$HADOOP_HOME/bin

在修改完成后保存,重新登录,相应的环境变量就配置好了。
接下来开始配置Hadoop相关的东西,首先来看张图,了解下HDFS的结构:

在Ubuntu上安装Hadoop(单机模式)

相关推荐