Hadoop2.2.0伪分布式安装配置

hadoop2.2.0伪分布式安装

安装前解决的问题:

1、hadoop官网下载的hadoop二进制文件是在32位环境下编译的(地址:http://mirrors.cnnic.cn/apache/hadoop/common/hadoop-2.2.0/),如果在64位linux下安装需要自己下载源码进行编译(参考:http://blog.csdn.net/li385805776/article/details/17269497)。也可以直接替换$HADOOP_HOME/lib/native/下的lib文件替换掉。(文件如附件)

2、安装完成执行start-dfs.sh和start-yarn.sh如果出现无法连接hostname,访问被拒绝必须替换$HADOOP_HOME/lib/native/下的lib文件(32bit->64bit)

 

安装:

使用ubuntu13在vmware10下进行安装。伪分布式完全在root用户下配置。

1、安装jdk

从oracle官网下载linux版本的jdk(1.6以上),在linux中解压到安装目录,可以设置全局环境变量(/etc/profile),也可以配置当前用户的环境变量(~/.bashrc)。这里配置的是/etc/profile,配置完成执行

source /etc/profile

 是配置生效。

 

2、配置不需验证的ssh

(1)安装ssh服务

 

apt-get install openssh-server

 (2)无密码访问

 

 

ssh-keygen -t  rsa 之后一路回 车(产生秘钥)

 (3)进入/root/.ssh

 

 

把id_rsa.pub 追加到授权的 key 里面去(cat id_rsa.pub >> authorized_keys)

 

重启 SSH 服 务命令使其生效 :service ssh restart(RedHat下为sshd       Ubuntu下为ssh)

 使用 ssh localhost输入yes后即可无密码登录

 

3、安装hadoop2.2

将下载的hadoop2.2.tar.gz解压到一个目录,然后进行配置(cd $HADOOP_HME/etc/hadoop):

(1)编辑hodoop-env.sh,修改以下对应行为:
export JAVA_HOME=/usr/lib/jvm/java-6-sun
注:请确定JAVA已正确安装。如果没有,你可以参照相关文档进行JAVA的安装。
(2)编辑core-site.xml,添加以下配置:
配置name节点的ip和端口,如果是完全分布式安装需要将localhost改成实际ip
<property>
 		<name>fs.default.name</name>
 		<value>hdfs://localhost:9000</value>
	</property>

 (3)编辑hdfs-site.xml,添加以下配置:

配置name节点和data节点的数据存放位置,dfs.replication表示数据备份数

 <property>
    <name>dfs.replication</name>
    <value>1</value>
  </property>
  <property>
    <name>dfs.namenode.name.dir</name>
    <value>/root/hadoopDir/hadoop4namenode</value>
  </property>
  <property>
    <name>dfs.datanode.data.dir</name>
    <value>/root/hadoopDir/hadoop4datanode</value>
  </property>

 

 (4)编辑yarn-site.xml,加入以下配置:

<property>
		<name>yarn.nodemanager.aux-services</name>
		<value>mapreduce_shuffle</value>
	</property>

	<property>
		<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
		<value>org.apache.hadoop.mapred.ShuffleHandler</value>
	</property>

 

 (5)编辑mapred-site.xml,添加以下配置:

<property>
    <name>mapreduce.cluster.temp.dir</name>
    <value></value>
    <description>No description</description>
    <final>true</final>
  </property>

  <property>
    <name>mapreduce.cluster.local.dir</name>
    <value></value>
    <description>No description</description>
    <final>true</final>
  </property>

 (6)格式化noamenode

 

bin/hadoop namenode -format
 (7)将hadoop的环境添加到系统环境变量

 

 

vim /etc/profile

添加:
export HADOOP_HOME=/root/hadoopDir/hadoop-2.2.0
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/sbin:$HADOOP_HOME/bin 
 (8)启动hadoop守护进程。依次执行以下命令:

 

 

hadoop-daemon.sh start namenode
hadoop-daemon.sh start datanode
hadoop-daemon.sh start secondarynamenode
yarn-daemon.sh start resourcemanager
yarn-daemon.sh start nodemanager
mr-jobhistory-daemon.sh start historyserver
 (9)运行以下命令可以查看各服务状态:

 

 

http://localhost:50070或者http://ipaddr:5007
http://localhost:8088
http://localhost:19888
 4、 如果hadoop进程启动成功,使用wordcount测试

 

(1)新建一个文件

vi /root/test.txt
hello world
hello hadoop

 (2)新建一个hafs文件夹

 hdfs dfs -mkdir /input

 (3)将创建的test.txt放入/input

 hdfs dfs -copyFromLocal /root/* /input

 (4)执行jar

 hadoop jar /root/hadoopDir/hadoop-2.2.0/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.2.0.jar wordcount /input /input/out

 注意:/input里面必须是文件不能是文件夹并且out不能自己创建

5.还有测试方法,参考http://blog.csdn.net/zhaoyl03/article/details/8657104

结合学习hadoop2.2.0的安装配置,jps必须启动namenode,datanode, JobTracker  , TaskTracker  , Jps  , SecondaryNameNode  (一个都不能少!)。


转载自:http://www.myexception.cn/open-source/1514587.html

你可能感兴趣的:(hadoop,ubuntu,分布式)