From: http://blog.csdn.net/yinan9/article/details/16805275

环境:CentOS 5.10(虚拟机下)

  1. [root@localhost hadoop]# lsb_release -a  
    1. LSB Version:    :core-4.0-ia32:core-4.0-noarch:graphics-4.0-ia32:graphics-4.0-noarch:printing-4.0-ia32:printing-4.0-noarch  
    2. Distributor ID: CentOS  
    3. Description:    CentOS release 5.10 (Final)  
    4. Release:        5.10  
    5. Codename:       Final 

准备

Jdk安装与配置

Oracle官网下载jdk,这里我下载的是jdk-6u45-linux-i586.bin,并上传到虚拟机上,使用root用户,执行以下命令创建文件夹,移动安装文件,执行安装。

  1. mkdir /usr/java  

mv/home/auxu/Desktop/jdk-6u45-linux-i586.bin /usr/java  

cd /usr/java  

./jdk-6u45-linux-i586.bin 

配置环境变量

  1. vi /etc/profile 

加入

export JAVA_HOME=/usr/java/jdk1.6.0_45
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin

保存完毕之后,执行:

  1. source /etc/profile 

验证java配置

[root@localhost java]# java -version  

java version "1.6.0_45"

Java(TM) SE Runtime Environment (build 1.6.0_45-b06)  

Java HotSpot(TM) Client VM (build 20.45-b01, mixed mode, sharing) 

可以简单写一个java class来进行测试,这里不多说明

创建Hadoop用户及相关应用文件夹

同样使用root用户创建一个名为hadoop的新用户

useradd hadoop  

passwd hadoop 

创建应用文件夹,以便进行之后的hadoop配置

mkdir /hadoop  

mkdir /hadoop/hdfs  

mkdir /hadoop/hdfs/data  

mkdir /hadoop/hdfs/name

mkdir /hadoop/mapred  

mkdir /hadoop/mapred/local

mkdir /hadoop/mapred/system  

mkdir /hadoop/tmp 

将文件夹属主更改为hadoop用户

chown -R hadoop /hadoop 

设置Hadoop用户使之可以免密码sshlocalhost

su - hadoop  

ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa    

cat ~/.ssh/id_dsa.pub>> ~/.ssh/authorized_keys  

 

cd /home/hadoop/.ssh   

chmod 600 authorized_keys 

注意这里的权限问题,保证.ssh目录权限为700,authorized_keys为600

验证:

  1. [hadoop@localhost .ssh]$ ssh localhost  
  2. Last login: Sun Nov 17 22:11:55 2013 

ssh localhost之后无需输入密码就可以连接,配置OK

安装配置Hadoop

创建目录并安装

重新切回root用户,创建安装目录

mkdir /opt/hadoop  

将安装文件移动到以上新建目录,确保其执行权限,然后执行

mv /home/auxu/Desktop/hadoop-1.2.1.tar.gz /opt/hadoop  

  1. cd /opt/hadoop  
  2. tar -xzvf hadoop-1.2.1.tar.gz 

将hadoop安装目录的属主更改为hadoop用户

chown -R hadoop /opt/hadoop  

切换到hadoop用户,修改配置文件,这里根据前面创建的应用文件进行相关配置,依照各自情况而定

  1. su - hadoop 
  1. cd /opt/hadoop/hadoop-1.2.1/conf 

core-site.xml

<configuration>

<property>

<name>fs.default.name</name>

<value>hdfs://localhost:9000</value>

</property>

<property>

<name>hadoop.tmp.dir</name>

<value>/hadoop/tmp</value>

</property>

</configuration>

hdfs-site.xml

<configuration>

<property>

<name>dfs.replication</name>

<value>1</value>

</property>

<property>

<name>dfs.name.dir</name>

<value>/hadoop/hdfs/name</value>

</property>

<property>

<name>dfs.data.dir</name>

<value>/hadoop/hdfs/data</value>

</property>

</configuration>

mapred-site.xml

<configuration>

<property>

<name>mapred.job.tracker</name>

<value>localhost:9001</value>

</property>

</configuration>

hadoop-env.sh

配置JAVA_HOME 与 HADOOP_HOME_WARN_SUPPRESS。

PS:HADOOP_HOME_WARN_SUPPRESS这个变量可以避免某些情况下出现这样的提醒 "WARM: HADOOP_HOME is deprecated”

export JAVA_HOME=/usr/java/jdk1.6.0_45  

export HADOOP_HOME_WARN_SUPPRESS="TRUE"      

source hadoop-env.sh 

重新配置 /etc/profile 文件,最终如:

export JAVA_HOME=/usr/java/jdk1.6.0_45  

export JRE_HOME=$JAVA_HOME/jre  

export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar  

export HADOOP_HOME=/opt/hadoop/hadoop-1.2.1  

export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin 

使更新后的配置文件生效

  1. source /etc/profile 

测试hadoop安装

[hadoop@localhost conf]$ hadoop version  

Hadoop 1.2.1  

Subversion https://svn.apache.org/repos/asf/hadoop/common/branches/branch-1.2 -r 1503152  

Compiled by mattf on Mon Jul 22 15:23:09 PDT 2013  

From source with checksum 6923c86528809c4e7e6f493b6b413a9a 

启动HADOOP

需要先格式化namenode,再启动所有服务

  1. hadoop namenode -format  
  2. start-all.sh  

查看进程

hadoop@localhost conf]$ jps   

6360 NameNode  

6481 DataNode  

6956 Jps  

6818 TaskTracker  

6610 SecondaryNameNode  

6698 JobTracker 

如果能找到这些服务,说明Hadoop已经成功启动了。

如果有什么问题,可以去/opt/hadoop/hadoop-1.2.1/logs查看相应的日志

最后就可以通过以下链接访问haddop服务了
localhost:50030/   for the Jobtracker
localhost:50070/   for the Namenode
localhost:50060/   for the Tasktracker

Hadoop JobTracker:

Hadoop Namenode:

Hadoop TaskTracker:

PS:完全分布式的安装与伪分布式安装大同小异,注意如下几点即可

1.集群内ssh免用户登录

2.配置文件中指定具体的ip地址(或机器名),而不是localhost

3.配置masters和slaves文件,加入相关ip地址(或机器名)即可

以上配置需要在各个节点上保持一致。

[转]CentOS下安装伪分布式Hadoop-1.2.1的更多相关文章

  1. ubuntu 下安装伪分布式 hadoop

    安装准备: (1)hadoop安装包:hadoop-1.2.1.tar.gz (2)jdk安装包:jdk-7u60-linux-i586.gz (3)要是须要eclipse开发的话 还须要eclips ...

  2. CentOS7上安装伪分布式Hadoop

    1.下载安装包 下载hadoop安装包 官网地址:https://hadoop.apache.org/releases.html 版本:建议使用hadoop-2.7.3.tar.gz 系统环境:Cen ...

  3. Ubuntu 14.10 下安装伪分布式hdoop 2.5.0

    折腾了一天,其间配置SSH时候出现了问题,误删了ssh-keygen相关文件,导致配置SSH彻底萎了,又重装了系统.... 采用伪分布式模式,即hadoop将所有进程运行于同一台主机上,但此时Hado ...

  4. Ubuntu 14.10 下安装伪分布式hbase 0.99.0

    HBase 安装分为:单击模式,伪分布式,完全分布式,在单机模式中,HBase使用本地文件系统而不是HDFS ,所有的服务和zooKeeper都运作在一个JVM中.本文是安装的伪分布式. 安装步骤如下 ...

  5. Ubuntu 14.10 下安装伪分布式hive-0.14.0

    本地独立模式,MySQL作为元数据库 1 安装环境准备 1.1 安装JDK,在安装hadoop时候已经安装了,参考http://www.cnblogs.com/liuchangchun/p/40972 ...

  6. VMwareWorkstation 平台 Ubuntu14 下安装配置 伪分布式 hadoop

    VMwareWorkstation平台Ubuntu14下安装配置伪分布式hadoop 安装VmwareStation 内含注册机. 链接:https://pan.baidu.com/s/1j-vKgD ...

  7. CentOS下安装hadoop

    CentOS下安装hadoop 用户配置 添加用户 adduser hadoop passwd hadoop 权限配置 chmod u+w /etc/sudoers vi /etc/sudoers 在 ...

  8. Linux单机环境下HDFS伪分布式集群安装操作步骤v1.0

    公司平台的分布式文件系统基于Hadoop HDFS技术构建,为开发人员学习及后续项目中Hadoop HDFS相关操作提供技术参考特编写此文档.本文档描述了Linux单机环境下Hadoop HDFS伪分 ...

  9. ubuntu安装伪分布式Hadoop3.1.2

    作业要求:https://edu.cnblogs.com/campus/gzcc/GZCC-16SE1/homework/3223 本文是基于已经安装好的ubuntu环境上搭建伪分布式hadoop,在 ...

随机推荐

  1. NYOJ题目101两点距离

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAsEAAAIBCAIAAAAnO/WXAAAgAElEQVR4nO3dq3IbSeM34L0Jc/O9BW

  2. 关于ActionContext.getContext()的用法心得

    转: 为了避免与Servlet API耦合在一起,方便Action类做单元测试,Struts 2对HttpServletRequest.HttpSession和ServletContext进行了封装, ...

  3. 关于logcat日志

    最近学习android,碰到了logcat,个人总结一下. 当不出日志是解决办法: ProjectMenu---后台设置----LOG设置---LOG开关 Logcat(deprecated)和Log ...

  4. UVA 10252

    按照字典序输出最长公共子序列 #include<time.h> #include <cstdio> #include <iostream> #include< ...

  5. redis-cli -h xxxxx -p xxxx monitor 监控host为xxxx,端口为xxx,redis连接及读写操作

    # redis-cli -p monitor OK ] " lua] " lua] " "-1"

  6. C#学习笔记----.net操作进程

    进程(Process)是Windows系统中的一个基本概念,它包含着一个运行程序所需要的资源.进程之间是相对独立的,一个进程无法直接访问另一个进程的数据(除非分布式),一个进程运行的失败也不会影响其他 ...

  7. svn不知道这样的主机

    重做服务器后,计算机名称肯定是不一样的.我们之前的项目还是老计算机名字,只要更改一下计算机名字即可实现.或者更改

  8. poj 1195:Mobile phones(二维线段树,矩阵求和)

    Mobile phones Time Limit: 5000MS   Memory Limit: 65536K Total Submissions: 14391   Accepted: 6685 De ...

  9. 6-03使用SQL语句一次型向表中插入多行数据

    通过将现有表中的数据添加到已存在的表中: INSERT INTO <表名><列名> SELECT<列名> FROM<源表名> 将UserInfo的数据添 ...

  10. PHP商品秒杀计时实现(解决大流量方案)

    PHP商品秒杀功能我们多半以整点或时间点为例子,这样对于php来说处理不复杂,但有一个问题就是如果流量大要如何来处理,下面我们一起来看看解决办法. 要求要有小时分钟秒的实时倒计时的显示,用户端修改日期 ...