我们使用rano模板的hadoop纱线,但似乎hadoop无法处理使用容器名称作为主机名(例如hadoop_namenode-primary_1).
Caused by: java.net.URISyntaxException: Illegal character in hostname at index 13: http://hadoop_datanode_1:50075/webhdfs/v1/skystore/tmp/devtest_onedir/2016_08_19_02_35_35_32f7/header.json?op=CREATE&user.name=hdfs&namenoderpcaddress=10.42.14.252:8020&overwrite=true
我做错了还是有解决办法?
当我看到它的问题是导致,但使用容器名作为主机名,而牧场主创建容器与下划线.不知道如何解决它虽然…
解决方法
Oracle错误数据库指出:根据RFC 2396,RFC 952和RFC 1123,Underscore不是主机名中的有效字符.请参阅以下链接:
http://bugs.java.com/bugdatabase/view_bug.do?bug_id=5049974
更好的想法可能是在主机名中用连字号替换下划线.
更新1:
hadoop is unable to deal with using container names as hostnames
不是这样它是关于主机名中的字符下划线.
更新2:
We have no idea how to force rancher to do that though
你不应该朝这个方向前进.原因是,其他应用程序可能会抛出同样的异常,这又是一个麻烦.最好的选择是改变主机名.