安装前解决的问题:
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):
export JAVA_HOME=/usr/lib/jvm/java-6-sun
<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:198884、 如果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