单独启动datanode和tasktracker遇到的小问题

在测试集群上拉了5台机器,自己另外搭建了一个小集群,不影响原来的集群。

 

1.规划,jobtracker一台,namenode一台,datanode三台,secondNamenode和网关机一台

 

2.新建用户lxw,并打通无密码ssh

 

3.安装版本0.20.2

 

完成之后先启动namenode和jobtracker,接着启动一台datanode时候报错

 

2012-05-28 17:35:23,625 ERROR org.apache.hadoop.hdfs.server.datanode.DataNode: java.net.SocketException: Permission denied
        at sun.nio.ch.Net.bind(Native Method)
        at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:126)
        at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:59)
        at org.mortbay.jetty.nio.SelectChannelConnector.open(SelectChannelConnector.java:216)
        at org.apache.hadoop.http.HttpServer.start(HttpServer.java:425)
        at org.apache.hadoop.hdfs.server.datanode.DataNode.startDataNode(DataNode.java:375)
        at org.apache.hadoop.hdfs.server.datanode.DataNode.<init>(DataNode.java:216)
        at org.apache.hadoop.hdfs.server.datanode.DataNode.makeInstance(DataNode.java:1283)
        at org.apache.hadoop.hdfs.server.datanode.DataNode.instantiateDataNode(DataNode.java:1238)
        at org.apache.hadoop.hdfs.server.datanode.DataNode.createDataNode(DataNode.java:1246)
        at org.apache.hadoop.hdfs.server.datanode.DataNode.main(DataNode.java:1368)

 

查看源代码,DataNode.startDataNode,

该处涉及到三个属性值,

String address = 
      NetUtils.getServerAddress(conf,
                                "dfs.datanode.bindAddress", 
                                "dfs.datanode.port",
                                "dfs.datanode.address");

 

觉得是新建的用户没有权限在绑定dfs.datanode.address默认端口(1004),于是修改hdfs-site.xml

添加或修改下面三个属性:

<property>
  <name>dfs.datanode.address</name>
  <value>0.0.0.0:9999</value>
</property>
<property>
  <name>dfs.datanode.http.address</name>
  <value>0.0.0.0:9998</value>
</property>
<property>
  <name>dfs.datanode.ipc.address</name>
  <value>0.0.0.0:9997</value>
</property>

 

因为机器上还运行着测试集群的tasktracker和datanode,有些默认端口已经被占用,这时候需要修改端口号,比如tasktracker对应的:

<property>
  <name>mapred.task.tracker.http.address </name>
  <value>0.0.0.0:9996</value>
</property>

 

问题解决!

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值