gpt4 book ai didi

hadoop - ssh:无法解析主机名。名称或服务未知

转载 作者:可可西里 更新时间:2023-11-01 14:50:16 25 4
gpt4 key购买 nike

我正在尝试在我的亚马逊实例上的 2 节点集群上设置 hadoop。每个实例都有一个公共(public) dns,我用它来引用它们。因此,在两台机器上的/etc/hosts 文件中,我附加了如下行:

{public dns of 1st instance} node1
{public dns of 2st instance} node2

我还可以通过简单地执行以下操作从另一个实例连接到每个实例:

ssh {public dns of the other instance}

在 hadoop/conf/slaves 上的第一个实例文件中,我有:

localhost
node2

当我启动脚本 bin/start-dfs.sh 时它能够在主节点上启动名称节点、数据节点和辅助名称节点,但它说:

node2: ssh: Could not resolve hostname node2: Name or service not known

如果我尝试打印出同样的结果:

ssh node2

我想问题是我如何告诉它将 node2 与第二个实例的公共(public) DNS 相关联。追加

还不够吗
{public dns of 2st instance} node2

/etc/hosts 文件的行?我必须重启实例吗?

最佳答案

/etc/hosts 有点像本地 DNS,当您没有与 IP 地址关联的真实 DNS 时。

如果您可以直接在从属文件和主文件中使用{第一个实例的公共(public) dns},您真的需要一个{public dns of 1st instance} node1 映射吗?

此外,最好使用亚马逊实例的私有(private)IP地址,而不是使用公共(public)IP地址。您可以在每个实例的终端中执行 ifconfig 并确定它们的私有(private) IP 地址(如果有)。他们可能基本上会从 10.x.x.x/172.x.x.x/192.x.x.x 开始?然后,您可以将它们映射到每个亚马逊实例的/etc/hosts 中。

因此,每台机器中的/etc/hosts 应该类似于 -

机器 1:

{IP_address_1st_instance} node1
{IP_address_2st_instance} node2

机器 2:

{IP_address_1st_instance} node1
{IP_address_2st_instance} node2

而且,如果您打算映射它们,这样 Amazon 实例(机器)就可以相互解析。

关于hadoop - ssh:无法解析主机名。名称或服务未知,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18134231/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com