解决方案-外域hadoop客户端访问hadoop平台和异域hadoop平台间访问

通信hadoop平台需要开通的端口

服务port配置文件端口服务可选
zookeeper2181core-site.xmlha.zookeeper.quorumY。
hdfs_namenode9000hdfs-site.xmldfs.namenode.rpc-address.beh.nn1N。namennode通信端口。
hdfs50070hdfs-site.xmldfs.namenode.http-address.beh.nn1N。namenode通信端口,distcp_hftp访问50070端口。
hdfs8485hdfs-site.xmldfs.namenode.shared.edits.dirY。
hdfs_datanode1027hdfs-site.xmldfs.datanode.data.dir.permN。访问datanode。
hdfs_datanode1026hdfs-site.xmldfs.datanode.http.addressN。访问datanode。
hdfs_datanode1025hdfs-site.xmldfs.datanode.https.addressN。访问datanode。
hdfs_datanode50010hdfs-site.xmldfs.datanode.addressY。
hdfs_datanode50020hdfs-site.xmldfs.datanode.ipc.addressY。
yarn23140yarn-site.xmlyarn.resourcemanager.address.rm1Y(无提交application动作)。提交application,会访问yarn,必须开通端口。
yarn23130yarn-site.xmlyarn.resourcemanager.scheduler.address.rm1Y(无提交application动作)。提交application,会访问yarn,必须开通端口。
yarn23189yarn-site.xmlyarn.resourcemanager.webapp.https.address.rm1Y。
yarn23188yarn-site.xmlyarn.resourcemanager.webapp.address.rm1Y。
yarn23125yarn-site.xmlyarn.resourcemanager.resource-tracker.address.rm1Y(无提交application动作)。提交application,会访问yarn,必须开通端口。
yarn23141yarn-site.xmlyarn.resourcemanager.admin.address.rm1Y(无提交application动作)。提交application,会访问yarn,必须开通端口。
yarn23344yarn-site.xmlyarn.nodemanager.localizer.addressY。
yarn23999yarn-site.xmlyarn.nodemanager.webapp.addressY。
yarn23080yarn-site.xmlapreduce.shuffle.portY。
yarn8033yarn-site.xmlyarn.resourcemanager.admin.addressY。
yarn8041yarn-site.xmlyarn.nodemanager.addressY。提交application,会访问yarn。
hive3306hive-site.xmljavax.jdo.option.ConnectionURLY。
hive10000hive-site.xmlhiveserver2Y。hiveserver2(两个节点)
mapreduce10020mapred-site.xmlmapreduce.jobhistory.addressY(无提交mapreduce)。提交mapreduce,必须开通端口。
mapreduce19888mapred-site.xmlmapreduce.jobhistory.webapp.address

hadoop客户端

客户端机器

外域机器通信需要用外网ip,未配置hostname访问会访问异常,namenode return hosts to hadoop client,the hosts is inner ip,outter client can not request by inner ip. so need config **dfs.client.use.datanode.hostname** in otter client.

  • 解决方案
    服务器客户端,hdfs-site.xml
    配置客户端用hostname方式访问集群
<property>
    <name>dfs.client.use.datanode.hostname</name>
    <value>true</value>
    <description>only cofig in clients</description>
 </property>

java_api客户端

Configuration conf=new Configuration();
conf.set("dfs.client.use.datanode.hostname", "true");

关于向yarn提交job的问题

1.application一直保持accepted状态,tarck ui是undefined状态

问题分析

查看yarn的application_xxx日志,发现datanode节点同外网客户端访问yarn的方式一样(用外网ip访问),所以可以肯定外网ip是从当前客户端机器获取的,尝试把yarn-site.xml里ResourceManager的ip都更新为hostname。

解决方案

yarn.resourcemanager.hostname,yarn.resourcemanager.address
把yarn-site.xml里的ResourceManager的ip都更新为hostname。

yarn-site

参考
yarn配置参数详解
通过公网IP访问云上的Hadoop集群

评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值