hap配置及运行过程中遇到的问题及解决方案.doc

hap配置及运行过程中遇到的问题及解决方案.doc

  1. 1、本文档共55页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
hap配置及运行过程中遇到的问题及解决方案

1. ssh报端口22打不开的错误 通常是因为sshd服务没有打开,从管理——服务中将sshd服务打开。 2. Cygwin配置ssh时遇到的关于connection closed的问题。 配置无密码访问后,执行 “ssh localhost”命令,报”connection closed”的错误。 该错误需要修改服务属性,找到Cygwin sshd服务,右键属性——登陆——此账户——高级——立即查找,找到当前用户,确定,回到登陆界面,输入密码,确定,然后重启服务。 如果重启时遇到服务无法启动的错误,可以重新执行“ssh-host-config”。 3. ssh远程访问其他机器时无法访问,输密码也不行 当前遇到的该问题是由于两台机器上的用户名不一致造成的,当前机器会以当前用户名去访问远程机器,远程机器上可能没有该账户。 解决方案是在”.ssh”目录下创建一个config文件,不用后缀,在里面添加如下内容: Host 远程机器IP User 远程机器用户名 有多台远程机器,则为每一台都添加2上面两行。 4. hdfs 报连接不到端口的错误 一般是namenode的问题,format一下namenode就可以解决这个问题。 5. hadoop hdfs端口问题 网上大多选用9000端口,基本上都认为是选用一个没有占用的端口就可以。在我们这次配置中遇到了问题,报与默认的8020端口不一致的错误。 解决方案就是把端口换成8020。在Ubuntu下配置时好像没有遇到过类似问题,不知道是不是因为在windows下的原因?这个需要进一步验证。 6. 诡异的添加新节点失败问题 系统运行后,新加一台机器,添加步骤: 在slaves中,将新机器IP地址加上,在新机器上通过 bin/hadoop-daemon.sh start datanode 启动新机器的datanode进程, 结果该节点不能在系统中出现。后经过多次重新启动集群,甚至删除原集群重新format namenode都不行。表现为,在启动时可以看到打datanode在新机器上启动了,但是通过 dfsadmin –report或者通过http接口都看不到。关闭时新机器也会关闭datanode。 后偶然发现是新机器上除了core-site、hdfs-site、mapred-site三个xml配置文件外,还有hadoop-site.xml配置文件,该配置文件里的hdfs端口被配置成9000。事实说明,如果hadoop-site.sh在的话,它会覆盖其他三个做的修改。个人以为,因为我们hdfs实际所用端口是8020,新机器认为是9000,结果导致namenode收不到心跳包,导致无法识别。 删除hadoop-site.xml后,一切正常。 7. hadoop.tmp.dir的配置问题 尝试直接指定为windows的目录,比如D:/tmp,结果是hdfs启动了,但mapreduce启动会报错,因为不存在形如*/D:/tmp*这样的目录,可见不能采用这种形式,不过在这种指定方式下,指定的目录里会产生hdfs文件夹。 还是要配置成linux形式的目录。 8. mapreduce任务执行时报错 表现为在初始化任务后,不一会就报找不到文件的错误,map和reduce都没有执行。 经网上插叙,得知是因为没有在mapred-site.xml中设置”mapred.child.tmp”变量,建议在hadoop所在目录下建一个文件夹作为其目录。感觉应该放在指定的另一个目录下也没有问题,需要注意的是文件要事先建好。这样之后不会报错。 9. mapreduce任务map任务执行正常,reduce任务执行出现错误,报错为无法取得map中间结果。 该问题在小规模试验(不到一个block)的数据量下不会出现,因为此时map和reduce会在一台机器上,因此不需要数据传输。但是高于一个block后就会出错。 网上有很多人遇到过同样地问题,一个成功的解决方案是修改“ulimit”值,说法是因为并行读文件太多,我们的情况没有涉及多大的并行读问题,应该不是。Ulimit对应最大打开文件数 后找到一片总结各种错误出现的可能原因的帖子,上书,出现“Too many fetch-failures”错误的可能原因有如下: 检查/etc/hosts 要求本机IP对应服务器名 要求要包含所有的服务器IP+服务器名 检查 .ssh/authorized_keys 要求包含所有服务器(包括自身)的public key 最后发现我们属于第一条,因为之前找到的配置说明,给出的是在hosts里采用“IP+master或slave”的形式进行配置,这导致服务器名无法解析,修改完整的服务器名后一切正常。 10. 集群机器重起后datanod

文档评论(0)

seunk + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档