本文原创地址:http://blog.163.com/jiayouweijiewj@126/blog/static/1712321772010818103350582/
我是初学者,文章只是记录我的学习过程,有很多不足或是错误,请大家谅解并指正,真心希望多和大家交流~
安装步骤如下:
1.1 机器说明
总共有4台机器:sc706-26、sc706-27、sc706-28、sc706-29
IP地址分别为:192.168.153.89、192.168.153.90、192.168.153.91、192.168.153.92
操作系统为:Linux的fedora12
jdk版本为:jdk-6u19-linux-i586
hadoop版本为:hadoop-0.20.2
sc706-26作为NameNode、JobTracker,其他三台作为DataNode、TaskTracker
1.2 用机器名Ping通机器
用root登录,在NameNode上修改/etc/hosts文件,加入四台机器的IP地址和机器名,如下:
192.168.153.89 sc706-26
192.168.153.90 sc706-27
192.168.153.91 sc706-28
192.168.153.92 sc706-29
设置好后验证下各机器间是否ping通,用机器名或是IP地址都可以,例如ping sc706-27或ping 192.168.153.90
1.3 新建hadoop用户
Hadoop要求所有机器上hadoop的部署目录结构要相同并且有一个相同的用户名的帐户,我的默认路径为/home/hadoop
1.4 ssh设置及关闭防火墙
1)fedora装好后默认启动sshd服务,如果不确定的话可以查一下 [root@sc706-26 hadoop]# service sshd status
如没有启动的话,先启动 [root@sc706-26 hadoop]# service sshd start
建立ssh无密码登录,在NameNode上 [hadoop@sc706-26 ~]$ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
会在~/.ssh/生成两个文件:id_dsa和id_dsa.pub,这两是成对出现的,把id_dsa.pub文件追加到DataNode上的authorized_keys
[hadoop@sc706-26 ~]$ scp id_dsa.pub sc706-27:/home/hadoop/ (注意其中目标机器后面的:与要传到的文件路径之间没有空格,即sc706:与/home/hadoop/之间没有空格)
scp id_dsa.pub sc706-28:/home/hadoop/
scp id_dsa.pub sc706-29:/home/hadoop/
登录到DataNode上,[hadoop@sc706-27 ~]$ cat id_dsa.pub >> ~/.ssh/authorized_keys ,其余两台一样,NameNode上也要追加。注意:追加完后必须修改NameNode和DataNode上的.ssh和authorized_keys的权限,chmod命令,参数755,完成后测试下,例如ssh sc706-27时不需要密码就可以登录,就可以知道ssh设置成功。
2)关闭防火墙(NameNode和DataNode都必须关闭)
[root@sc706-26 ~]# service iptables stop
注意:每次重新开机启动hadoop前都必须关闭
1.5 安装jdk1.6(几台机子都一样)
在官网http://java.sun.com下载jdk-6u19-linux-i586.bin,之后直接安装[root@sc706-26 java]#chmod +x jdk-6u19-linux-i586.bin [root@sc706-26 java]# ./jdk-6u19-linux-i586.bin,我的安装路径为:/usr/java/jdk1.6.0_19,安装后添加如下语句到/etc/profile中:
export JAVA_HOME=/usr/java/jdk1.6.0_19
export JRE_HOME=/usr/java/jdk1.6.0_19/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
1.6 安装hadoop
在官网http://apache.etoak.com//hadoop/core/下载hadoop-0.20.2.tar.gz
[hadoop@sc706-26 ~]$ tar xzvf hadoop-0.20.2.tar.gz
将hadoop的安装路径添加到/etc/profile中:
export HADOOP_HOME=/home/hadoop/hadoop-0.20.2
export PATH=$HADOOP_HOME/bin:$PATH
为了让/etc/profile生效,source一下 [hadoop@sc706-26 ~]$ source /etc/profile
1.7 配置hadoop
其配置文件在/conf目录下
1)配置JAVA环境
[hadoop@sc706-26 ~]$ vim hadoop-0.20.2/conf/hadoop-env.sh
export JAVA_HOME=/usr/java/jdk1.6.0_19
2)配置conf/core-site.xml、conf/hdfs-site.xml、conf/mapred-site.xml文件
[hadoop@sc706-26 ~]$ vim hadoop-0.20.2/conf/core-site.xml
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoop/tmp</value>
</property>
<property>
<name>fs.default.name</name>
<value>hdfs://sc706-26:9000</value>
</property>
</configuration>
[hadoop@sc706-26 ~]$ vim hadoop-0.20.2/conf/mapred-site.xml
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>sc706-26:9001</value> 注意:sc706-26前不能加hdfs://
</property>
</configuration>
[hadoop@sc706-26 ~]$ vim hadoop-0.20.2/conf/hdfs-site.xml
<configuration>
<property>
<name>dfs.name.dir</name>
<value>/home/hadoop/name</value>
</property>
<property>
<name>dfs.data.dir</name>
<value>/home/hadoop/data</value>
</property>
<property>
<name>dfs.replication</name>
<value>3</value>注意:如果设为1,数据只有一个副本,假如其中一个datanode出问题,将会导致整个job失败
</property>
</configuration>
3)将NameNode上完整的hadoop拷贝到DataNode上,可先将其进行压缩后直接scp过去或是用盘拷贝过去
4) 配置NameNode上的conf/masters和conf/slaves
masters:192.168.153.89
slaves:192.168.153.90
192.168.153.91
192.168.153.92
1.8 运行hadoop
1)格式化文件系统
[hadoop@sc706-26 hadoop-0.20.2]$ hadoop namenode -format
注意:格式化时要防止NameNode的namespace ID与DataNode的namespace ID的不一致,因为每格式化一次会产生Name、Data、tmp等临时文件记录信息,多次格式化会产生很多,会导致ID的不同,造成hadoop不能运行
2)启动hadoop
[hadoop@sc706-26 hadoop-0.20.2]$ bin/start-all.sh
3)用jps命令查看进程,NameNode上的结果如下:
25325 NameNode
25550 JobTracker
28210 Jps
25478 SecondaryNameNode
4)查看集群状态
[hadoop@sc706-26 hadoop-0.20.2]$ hadoop dfsadmin -report
确保运行的DataNode个数是正确的,我的是3个,这样可以查看哪个DataNode没有运行
5)用hadoop的web方式查看
[hadoop@sc706-26 hadoop-0.20.2]$ links http://192.168.153.89(即为master):50070
1.9 运行Wordcount.java程序
1)先在本地磁盘上建立两个文件f1和f2
[hadoop@sc706-26 ~]$ echo ”hello Hadoop goodbye hadoop” > f1
[hadoop@sc706-26 ~]$ echo ”hello bye hadoop hadoop” > f2
2)在hdfs上建立一个input目录
[hadoop@sc706-26 ~]$ hadoop dfs -mkdir input
3)将f1和f2拷贝到hdfs的input目录下
[hadoop@sc706-26 ~]$ hadoop dfs -copyFromLocal /home/hadoop/f* input
4)查看hdfs上有没有input目录
[hadoop@sc706-26 ~]$ hadoop dfs -ls
5)查看input目录下有没有复制成功f1和f2
[hadoop@sc706-26 ~]$ hadoop dfs -ls input
6)执行wordcount(确保hdfs上没有output目录)
[hadoop@sc706-26 hadoop-0.20.2]$ hadoop jar hadoop-0.20.2-examples.jar wordcount input output
7)运行完成,查看结果
[hadoop@sc706-26 hadoop-0.20.2]$ hadoop dfs -cat output/part-r-00000
安装时出现的问题及解决方法,我在注意中都提到,2010年四月份安装的,现在hadoop运行正常。顺便给大家推荐个学习hadoop的论坛,http://forum.hadoop.tw/index.php?sid=cbe898754dce410793d5193d708cf3e6,台湾的,超好的,帮助我解决了好多问题,谢谢~
相关推荐
在Linux下安装Hadoop-0.20.2,首先需要确保系统已经安装了Java环境,因为Hadoop是用Java编写的,并依赖Java运行时环境。接着,你需要下载Hadoop的tarball文件,这可能就是列表中的“hadoop-0.20.2版本”。下载完成后...
export CLASSPATH="$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:${HADOOP_HOME}/lib/commons-logging-1.0.4.jar:${HADOOP_HOME}/lib/guava-r09-jarjar.jar:${HADOOP_HOME}/hadoop-core-0.20.2-cdh3u3.jar:/usr/...
在安装Hadoop-0.20.2时,需要注意配置环境变量,如HADOOP_HOME和PATH,并正确设置HDFS和MapReduce的配置文件(如core-site.xml、hdfs-site.xml和mapred-site.xml)。集群部署时,还需配置各个节点间的通信和数据交换...
Hadoop安装包,适用于linux,内含eclipse插件.
在Windows上使用Eclipse进行Hadoop开发,通常需要安装Hadoop的本地模拟环境,如Hadoop Single Node Setup,这可以通过修改`hadoop-env.sh`文件来实现,设置HADOOP_HOME环境变量,并将Hadoop的bin目录添加到PATH环境...
1.a1 192.168.9.1 (master) a2 192.168.9.2 (slave1) a3 192.168.9.3 (slave2) 修改/etc/hosts 2.3台机器 创建hadoop 用户 ...[hadoop@a1 hadoop-0.20.2-cdh3u5]$ bin/hadoop dfsadmin -report
linux系统下eclipse连接hadoop的插件,已测试并成功显示hadoop平台下的fs文件系统
Linux 操作系统安装环境下Hadoop集群搭建详细简明教程
linux下安装hadoop Linux版本:centos5 Hadoop版本:hadoop-0.20.2.tar.gz
下面是在Linux平台下安装Hadoop的过程: 1. 创建安装目录:mkdir /opt/hadoop 2. 更改所属关系和权限:chown root ./; chmod 755 ./ 3. 下载项目包:wget ...
#### 二、安装好虚拟机及创建Linux系统 首先,我们需要安装好虚拟机并创建Linux系统。这里推荐使用VMware作为虚拟机平台,并安装Red Hat Enterprise Linux Server 5.4。 如果内外系统无法互相传输文件,可以考虑...
### Hadoop 0.20.2在Linux下的配置与安装详解 #### 一、环境准备与基础设置 在开始Hadoop 0.20.2的安装与配置之前,确保Linux系统上已完成以下准备工作: 1. **用户权限**:为用户`sharera`设置好账户,并确认其...
### Fedora 下安装 Hadoop 0.20.2 的详细步骤及原理 #### 一、安装背景与概述 Hadoop 是一个开源软件框架,用于分布式处理大规模数据集。通过使用 Hadoop,用户能够轻松地在不了解分布式计算底层细节的情况下开发...
为了更好地理解和使用Hadoop,本文将详细介绍如何在Linux系统上搭建一个基本的Hadoop环境。 #### 二、准备工作 1. **安装JDK**: - 在安装Hadoop之前,首先需要确保系统已经安装了JDK(Java Development Kit)。...
### Hadoop伪分布模式在Linux CentOS下的安装与配置详解 #### 一、概览 本文旨在详细介绍如何在Linux CentOS 5.0系统下搭建Hadoop伪分布模式的测试环境,包括必要的步骤、注意事项以及可能遇到的问题及其解决方案...
### Hadoop 0.20.2 在 Ubuntu 上的安装配置详解 #### 一、概述 本文档旨在为初学者提供一份详细的指南,用于在 Ubuntu Server 12.04 x64 系统上安装并配置 Hadoop 0.20.2。通过本文档的学习,读者可以掌握如何搭建...
本文详细介绍了虚拟机与 Linux 系统安装、JDK 安装、Hadoop 安装和 SSH 服务安装等内容,并对相关的环境变量进行了配置,旨在帮助用户快速 master 虚拟机与 Linux 系统安装、JDK 安装和 Hadoop 安装等技术。
### Hadoop安装教程详解 #### 一、概述 Hadoop是一种能够处理大量数据的大规模分布式存储与计算平台,被广泛应用于大数据处理领域。本篇教程将详细介绍如何在多台服务器上部署Hadoop集群,分为八个步骤进行讲解。...
这里我们使用hadoop-0.20.2和jdk-6u30-linux-i586.bin。Hadoop依赖于Java环境,因此需要安装JDK。 JDK安装和配置 ------------- 在每台机器上,需要安装JDK。可以使用以下命令安装JDK: ``` ./jdk-6u30-linux-i...