首页 \ 问答 \ hadoop datanode无法启动。(hadoop datanode unable to start. “does not contain a valid host:port authority”)

hadoop datanode无法启动。(hadoop datanode unable to start. “does not contain a valid host:port authority”)

我目前正在使用hadoop 1.2.1(因为我需要运行空间处理软件才支持此版本)。 我正在尝试在多节点模式下部署一个主服务器和三个从服务器。

我确信我能够在没有密码(包括他们自己)的情况下在所有主服务器和从服务器之间进行ssh。 此节点上的主机名也是正确的。 每个节点共享相同的主机文件:

192.168.56.101 master
192.168.56.102 slave1
192.168.56.103 slave2
192.168.56.104 slave3

我一直在奴隶节点遇到问题,错误日志信息如下,

2015-05-21 23:39:16,841 ERROR org.apache.hadoop.hdfs.server.datanode.DataNode: java.lang.IllegalArgumentException: Does not contain a valid host:port authority: file:///
    at org.apache.hadoop.net.NetUtils.createSocketAddr(NetUtils.java:164)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.getAddress(NameNode.java:212)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.getAddress(NameNode.java:244)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.getServiceAddress(NameNode.java:236)
    at org.apache.hadoop.hdfs.server.datanode.DataNode.startDataNode(DataNode.java:359)
    at org.apache.hadoop.hdfs.server.datanode.DataNode.<init>(DataNode.java:321)
    at org.apache.hadoop.hdfs.server.datanode.DataNode.makeInstance(DataNode.java:1712)
    at org.apache.hadoop.hdfs.server.datanode.DataNode.instantiateDataNode(DataNode.java:1651)
    at org.apache.hadoop.hdfs.server.datanode.DataNode.createDataNode(DataNode.java:1669)
    at org.apache.hadoop.hdfs.server.datanode.DataNode.secureMain(DataNode.java:1795)
    at org.apache.hadoop.hdfs.server.datanode.DataNode.main(DataNode.java:181

core-site.xml中的配置

<configuration>
    <property>
        <name>fs.default.name</name>
        <value>hdfs://master:9000</value>
    </property>
</configuration>

在mapred-site.xml中:

<configuration>
    <property>
        <name>mapred.job.tracter</name>
        <value>master:8012</value>  
    </property>
</configuration>

在hdfs-site.xml中:

<configuration>
    <property>
        <name>dfs.replication</name>
        <value>3</value>
    </property>
</configuration

I'm currently using hadoop 1.2.1 (because I need to run a spatial processing software only support this version). I'm trying to deploy in multinode mode with one master and three slaves.

I'm sure I'm able to ssh between all master and slaves without password (including themselves). Also the hostname on each node is correct. Each node shares the same host file:

192.168.56.101 master
192.168.56.102 slave1
192.168.56.103 slave2
192.168.56.104 slave3

I keep having problems in the slaves node, error log info is as follows,

2015-05-21 23:39:16,841 ERROR org.apache.hadoop.hdfs.server.datanode.DataNode: java.lang.IllegalArgumentException: Does not contain a valid host:port authority: file:///
    at org.apache.hadoop.net.NetUtils.createSocketAddr(NetUtils.java:164)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.getAddress(NameNode.java:212)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.getAddress(NameNode.java:244)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.getServiceAddress(NameNode.java:236)
    at org.apache.hadoop.hdfs.server.datanode.DataNode.startDataNode(DataNode.java:359)
    at org.apache.hadoop.hdfs.server.datanode.DataNode.<init>(DataNode.java:321)
    at org.apache.hadoop.hdfs.server.datanode.DataNode.makeInstance(DataNode.java:1712)
    at org.apache.hadoop.hdfs.server.datanode.DataNode.instantiateDataNode(DataNode.java:1651)
    at org.apache.hadoop.hdfs.server.datanode.DataNode.createDataNode(DataNode.java:1669)
    at org.apache.hadoop.hdfs.server.datanode.DataNode.secureMain(DataNode.java:1795)
    at org.apache.hadoop.hdfs.server.datanode.DataNode.main(DataNode.java:181

Configurations in core-site.xml

<configuration>
    <property>
        <name>fs.default.name</name>
        <value>hdfs://master:9000</value>
    </property>
</configuration>

In mapred-site.xml:

<configuration>
    <property>
        <name>mapred.job.tracter</name>
        <value>master:8012</value>  
    </property>
</configuration>

In hdfs-site.xml:

<configuration>
    <property>
        <name>dfs.replication</name>
        <value>3</value>
    </property>
</configuration

原文:https://stackoverflow.com/questions/30390319
更新时间:2022-04-27 08:04

最满意答案

是的,那会有效。

你需要

$.views.helpers.navState.depends = [siteGlobal, "parent", "page"];

现在,如果id3 ,那么你打电话

$.observable(siteGlobal).setProperty("page", 3);

然后类将设置为"nav_item current_page_item"

呼叫

$.observable(siteGlobal).setProperty("parent", 3);

它将被设置为"nav_item current_page_parent"

www.jsviews.com/#computed@depends


Yes, that will work.

You need

$.views.helpers.navState.depends = [siteGlobal, "parent", "page"];

Now if id is 3, and you call

$.observable(siteGlobal).setProperty("page", 3);

then class will get set to "nav_item current_page_item"

Call

$.observable(siteGlobal).setProperty("parent", 3);

and it will get set to "nav_item current_page_parent"

See www.jsviews.com/#computed@depends.

相关问答

更多
  • 我在这里找到答案: 因为你在狂欢模板中调用它,你需要在它main_app. ,与main_app.products_starting_with_path一样 这是Spree的发行说明: 相反,要从Spree中的控制器,视图或模板中引用主应用程序中的路由,您必须使用main_app路由代理 使用main_app路由代理解决了描述的问题:) I found answer here: Because you're calling this inside a spree template you need to p ...
  • 部分视图不是为处理该场景而设计的。 您正在寻找的是副编辑。 看看Brad Wilson关于编辑器模板的精彩系列: http : //bradwilson.typepad.com/blog/2009/10/aspnet-mvc-2-templates-part-1-introduction.html 您可以使用EditorFor和相关方法而不是Partial : @Html.EditorFor(m => m.HomeAddress) 然后,您可以使用自动生成的模板或使用类似于部分视图的方法定义自己的模板。 ...
  • 解决了。 我只需要在_initView()方法的末尾添加这些行: $viewRenderer = Zend_Controller_Action_HelperBroker::getStaticHelper('ViewRenderer'); $viewRenderer->setView($this->view); Solved. I just needed to add these lines at the end of _initView() method: $viewRenderer = Zend_C ...
  • HTML助手可用于可重用组件。 例如WebGrid,Pager等。它们作为程序集分发,不依赖于Razor。 选择这个: 功能是真正可重用的,适用于任何应用程序 你不希望人们修改它,想要版本 部分视图是将大型视图分割成较小部分的方法,以使事情更易于管理。 它们对于您的应用程序特有的可重用性也很有用。 这些由视图引擎定位,因此您可以在不同的位置(例如“视图/共享”)中定义相同的部分,允许您根据控制器,区域或显示模式进行自定义。 选择这个: 功能是应用程序特定的 想要根据控制器,区域或显示模式进行自定义 本地助手 ...
  • 在您用来管理电子邮件的邮件类中: class ReportMailer < ActionMailer::Base add_template_helper(AnnotationsHelper) ... end In the mailer class that you are using to manage your emails: class ReportMailer < ActionMailer::Base add_template_helper(AnnotationsHelper) ...
  • 当grunt-dust编译模板时,您不需要助手可用。 编译是将模板转换为Dust函数的过程,实际上不会调用帮助程序。 当你需要在渲染过程中使用dustjs-helpers时。 因此,无论您是渲染模板,都需要确保帮助程序附加到您用于渲染的灰尘实例。 你只需要它们就可以做到这一点: let dust = require('dustjs-linkedin'); require('dustjs-helpers'); // helpers autoattach to the `dust` object dust.r ...
  • 是的,那会有效。 你需要 $.views.helpers.navState.depends = [siteGlobal, "parent", "page"]; 现在,如果id为3 ,那么你打电话 $.observable(siteGlobal).setProperty("page", 3); 然后类将设置为"nav_item current_page_item" 呼叫 $.observable(siteGlobal).setProperty("parent", 3); 它将被设置为"nav_item ...
  • 过去两天刚刚打过这样的事情。 问题是,在设置它自己的时候,粉尘助手会破坏任何早期定义的助手。 请参阅问题: https : //github.com/linkedin/dustjs-helpers/issues/72 你可以尝试使用这个来自问题72线程中提到的PR的repo版本来解决它。 https://github.com/patrick-steele-idem/dustjs-helpers或者只是非常确定你的助手是在加载dustjs和dustjs-helpers之后定义的。 Having just fo ...
  • 它真的很重要,因为碰撞可能会“消灭”你对助手的访问。 假设我有一个名为Form的模型,并在获得许多记录后决定在我的视图中执行类似的操作。 foreach ($forms as $form) { echo $form['Form']['name'] . '
    '; } 看看那里发生了什么? 我不小心覆盖了$form变量,基本上丢失了我的FormHelper 。 现在的标准是在视图中通过$this访问所有助手。 It really only matters because of the poss ...
  • 在模板中,您只需使用来自javascript的{{currentReport}}来引用该全局帮助器,您需要使用UI._globalHelpers.currentReport()来引用它。 While in a template you can refer to that global helper simply with {{currentReport}} from javascript you need to refer to it using UI._globalHelpers.currentRepor ...

相关文章

更多

最新问答

更多
  • 您如何使用git diff文件,并将其应用于同一存储库的副本的本地分支?(How do you take a git diff file, and apply it to a local branch that is a copy of the same repository?)
  • 将长浮点值剪切为2个小数点并复制到字符数组(Cut Long Float Value to 2 decimal points and copy to Character Array)
  • OctoberCMS侧边栏不呈现(OctoberCMS Sidebar not rendering)
  • 页面加载后对象是否有资格进行垃圾回收?(Are objects eligible for garbage collection after the page loads?)
  • codeigniter中的语言不能按预期工作(language in codeigniter doesn' t work as expected)
  • 在计算机拍照在哪里进入
  • 使用cin.get()从c ++中的输入流中丢弃不需要的字符(Using cin.get() to discard unwanted characters from the input stream in c++)
  • No for循环将在for循环中运行。(No for loop will run inside for loop. Testing for primes)
  • 单页应用程序:页面重新加载(Single Page Application: page reload)
  • 在循环中选择具有相似模式的列名称(Selecting Column Name With Similar Pattern in a Loop)
  • System.StackOverflow错误(System.StackOverflow error)
  • KnockoutJS未在嵌套模板上应用beforeRemove和afterAdd(KnockoutJS not applying beforeRemove and afterAdd on nested templates)
  • 散列包括方法和/或嵌套属性(Hash include methods and/or nested attributes)
  • android - 如何避免使用Samsung RFS文件系统延迟/冻结?(android - how to avoid lag/freezes with Samsung RFS filesystem?)
  • TensorFlow:基于索引列表创建新张量(TensorFlow: Create a new tensor based on list of indices)
  • 企业安全培训的各项内容
  • 错误:RPC失败;(error: RPC failed; curl transfer closed with outstanding read data remaining)
  • C#类名中允许哪些字符?(What characters are allowed in C# class name?)
  • NumPy:将int64值存储在np.array中并使用dtype float64并将其转换回整数是否安全?(NumPy: Is it safe to store an int64 value in an np.array with dtype float64 and later convert it back to integer?)
  • 注销后如何隐藏导航portlet?(How to hide navigation portlet after logout?)
  • 将多个行和可变行移动到列(moving multiple and variable rows to columns)
  • 提交表单时忽略基础href,而不使用Javascript(ignore base href when submitting form, without using Javascript)
  • 对setOnInfoWindowClickListener的意图(Intent on setOnInfoWindowClickListener)
  • Angular $资源不会改变方法(Angular $resource doesn't change method)
  • 在Angular 5中不是一个函数(is not a function in Angular 5)
  • 如何配置Composite C1以将.m和桌面作为同一站点提供服务(How to configure Composite C1 to serve .m and desktop as the same site)
  • 不适用:悬停在悬停时:在元素之前[复制](Don't apply :hover when hovering on :before element [duplicate])
  • 常见的python rpc和cli接口(Common python rpc and cli interface)
  • Mysql DB单个字段匹配多个其他字段(Mysql DB single field matching to multiple other fields)
  • 产品页面上的Magento Up出售对齐问题(Magento Up sell alignment issue on the products page)