hadoop集群安装
首现非常感谢 虾皮(http://www.cnblogs.com/xia520pi/archive/2012/05/16/2503949.html) 安装过程是参照他的《Hadoop集群(第5期)_Hadoop安装配置》
进行配置安装的,但是安装过程中出现了一些细节问题,特此在这做个记录,有遇到和我相同或者类似问题的可以参照一下。
下面的配置介绍有些只是粗略的说一下,因为虾皮博客中已经介绍的很详细了,我就不再赘述了,重点在地方我会标注出来(一些细节)。
1.环境介绍
我用的是CentOS5.8 一个NameNode,两个DataNode。NameNode(Master)的IP:192.168.17.128;DataNode1(Slave_01)的IP:192.168.17.130;
DataNode2(Slave_02)的IP:192.168.17.131;
2.软件介绍
JDK:jdk1.6.0_38
Hdoop:hadoop-1.0.0.tar.gz
FTP工具:WinSCP
3.安装出现的细节问题
3.1 tmp目录
在hadoop下创建tmp文件夹(目录)以后,它默认所属用户为root,需要给hadoop用户添加读的权限
chown hadoop:hadoop tmp,但是这样还是会有问题
TaskTracker local dir /usr/local/hadoop/tmp/mapred/local error can not create directory: /usr/local/hadoop/tmp/mapred/local, removing from local dirs

出现这个问题的原因就是我们创建tmp目录的权限问题,chmod a+w tmp修改完成之后把NameNode,DataNode下的tmp目录清空,
然后重新执行hadoop namenode -format
3.2 core-site.xml文件

3.3 mapred-site.xml文件

3.4 hadoop 1.0.0版本,安装完之后敲入hadoop命令时,老是提示这个警告:
编辑"/etc/profile"文件,添加一个环境变量,之后警告消失------>export HADOOP_HOME_WARN_SUPPRESS=1
3.5 NameNode中namespaceID和DataNode中namespaceId不一致

其实出现此问题的原因很简单,每次namenode format会重新创建一个namenodeId,而tmp/dfs/data下包含了上次format下的id,namenode format清空了namenode下的数据,但是没有晴空datanode下的数据,导致启动时失败,所要做的就是每次fotmat前,清空tmp一下 的所有目录
当我们执行stop-all.sh的时候,发现datanode并没有启动

最简单的解决办法就是,把NameNode和所有DataNode中的tmp目录下的所有目录全部删除,然后重新在namenode上format,问题随之消失。
3.6 java.net.UnknownHostException: Slave_01 is not a valid Inet address

出现此问题的原因是主机名中不能加下划线。
3.7 Cannot delete /usr/local/hadoop/tmp/mapred/system. Name node is in safe mode

解决方案是:关闭安全模式 hadoop dfsadmin -safemode leave
4.问题总结
出现问题一定要去查看日志文件,不要因为一出错就不知所措,错误总有解决的办法。
这里所说的查看日志不仅仅是查看master的日志,也要去查看各个Slave的日志。
hadoop集群安装的更多相关文章
- Apache Hadoop 集群安装文档
简介: Apache Hadoop 集群安装文档 软件:jdk-8u111-linux-x64.rpm.hadoop-2.8.0.tar.gz http://www.apache.org/dyn/cl ...
- 1.Hadoop集群安装部署
Hadoop集群安装部署 1.介绍 (1)架构模型 (2)使用工具 VMWARE cenos7 Xshell Xftp jdk-8u91-linux-x64.rpm hadoop-2.7.3.tar. ...
- Apache Hadoop集群安装(NameNode HA + SPARK + 机架感知)
1.主机规划 序号 主机名 IP地址 角色 1 nn-1 192.168.9.21 NameNode.mr-jobhistory.zookeeper.JournalNode 2 nn-2 ).HA的集 ...
- Apache Hadoop集群安装(NameNode HA + YARN HA + SPARK + 机架感知)
1.主机规划 序号 主机名 IP地址 角色 1 nn-1 192.168.9.21 NameNode.mr-jobhistory.zookeeper.JournalNode 2 nn-2 192.16 ...
- 2 Hadoop集群安装部署准备
2 Hadoop集群安装部署准备 集群安装前需要考虑的几点硬件选型--CPU.内存.磁盘.网卡等--什么配置?需要多少? 网络规划--1 GB? 10 GB?--网络拓扑? 操作系统选型及基础环境-- ...
- hadoop集群安装故障解决
nodemanager进程解决:http://blog.csdn.net/baiyangfu_love/article/details/13504849 编译安装:http://blog.csdn.n ...
- Hadoop集群安装配置教程_Hadoop2.6.0_Ubuntu/CentOS
摘自:http://www.powerxing.com/install-hadoop-cluster/ 本教程讲述如何配置 Hadoop 集群,默认读者已经掌握了 Hadoop 的单机伪分布式配置,否 ...
- linux hadoop 集群安装步骤
http://blog.csdn.net/xjavasunjava/article/details/12013677 1,时间同步hadoop集群的每台机器的时间不能相差太大. 安装集群前最好进行一下 ...
- hadoop系列一:hadoop集群安装
转载请在页首明显处注明作者与出处 http://www.cnblogs.com/zhuxiaojie/p/6384393.html 一:说明 此为大数据系列的一些博文,有空的话会陆续更新,包含大数据 ...
随机推荐
- 【百度地图API】发布静态图API啦!只需一个网址,即可展示定制百度地图!
原文:[百度地图API]发布静态图API啦!只需一个网址,即可展示定制百度地图! 摘要: 百度地图静态图API!您无须执行任何“特殊”操作便可在网页上显示此图片. 不需要 JavaScript.我们只 ...
- 深入理解C指针之四:指针和数组
原文:深入理解C指针之四:指针和数组 数组是C内建的基本数据结构,数组表示法和指针表示法紧密关联.一种常见的错误认识是数组和指针完全可以互换,尽管数组名字有时可以当做指针来用,但数组的名字不是指针.数 ...
- PHP的MySQL扩张:MySQL数据库概述
资源:http://www.ido321.com/1023.html 一.SQL:结构化查询语言 SQL(Structured Query Language)是高级的非过程化变成语言.专门用于查询和改 ...
- SSAS系列——【03】多维数据(多维数据集对象)
原文:SSAS系列--[03]多维数据(多维数据集对象) 1.什么是Cube? 简单 Cube 对象由基本信息.维度和度量值组组成. 基本信息包括多维数据集的名称.多维数据集的默认度量值.数据源和存储 ...
- Python - 字符串的替换(interpolation) 具体解释
字符串的插值(interpolation) 具体解释 本文地址: http://blog.csdn.net/caroline_wendy/article/details/27054263 字符串的替换 ...
- 大约xib连接错误bug正确
今天code什么时候,发现xib除了加载问题,研究发现的一个问题 在连接的时候, object一定要选择,您连接view,代替 File's Owner 版权声明:本文博客原创文章,博客,未经同意,不 ...
- request.getparameter和 request.getattribute的差别
request.getAttribute():是request时设置的变量的值,用request.setAttribute("name","您自己的值");来设 ...
- C# 解析bt种子
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.C ...
- Spring IOC 之Bean作用域
当你创建一个bean定义的时候,你创建了一份通过那种bean定义的bean的创建类的真正实力的处方.bean的定义是一个处方 的想法是很重要的的.因为这意味着,对于一个类你可以创建很多对象实例从一个单 ...
- 《STL源代码剖析》---stl_hash_set.h阅读笔记
STL仅仅规定接口和复杂度,对于详细实现不作要求.set大多以红黑树实现,但STL在标准规格之外提供了一个所谓的hash_set,以hash table实现.hash_set的接口,hash_tabl ...