【问题标题】:'Operation timed out' error on trying to ssh in to the Amazon EMR Spark Cluster尝试通过 ssh 连接到 Amazon EMR Spark 集群时出现“操作超时”错误
【发布时间】:2016-12-29 22:57:28
【问题描述】:

我正在尝试通过 ssh 连接到 Amazon EMR Spark 集群。这是我所做的:

  1. 获取集群master的IP:

    aws emr describe-cluster --cluster-id <cluster_id> | grep MasterPublicDnsName
    
  2. 使用 IP ssh 进入盒子:

    ssh -i CSxxx.pem hadoop@ec2-xx-xxx-xxx-xxx.ap-southeast-1.compute.amazonaws.com
    

我在这里卡住了,因为运行 (2) 给了我以下错误:

ssh: connect to host ec2-xx-xxx-xxx-xxx.ap-southeast-1.compute.amazonaws.com port 22: Operation timed out

有解决此问题的想法吗?

【问题讨论】:

  • 您是否一直在尝试通过 SSH 连接到节点?如果是这样,那你的问题似乎根本不是关于 Anaconda 的问题。
  • 是的,一直在尝试 ssh 进入节点。有什么线索吗?
  • 编辑问题
  • 不完全确定,但我建议联系亚马逊支持,因为这似乎是节点的 shell 登录脚本的问题,如果没有 SSH,您将无法访问。如果你有多个实例,你能进入其中的任何一个吗?
  • 我只有一个集群实例在运行。

标签: apache-spark ssh amazon-emr


【解决方案1】:

“操作超时”通常是由于以下两个原因之一:

  • EMR 集群的安全组不允许您从中进行 ssh 的 IP。通过转到集群的控制台/仪表板并找到安全组来检查这一点,单击它,然后编辑“入站规则”并为 SSH 添加一行,在 IP 字段中,下拉并选择您的 IP。

  • 或者,如果您在自定义 VPC 中创建了 EMR 集群,并且集群本身启动到私有子网中,您将无法直接通过 SSH 连接到其中,除非先 SSH 连接到实例在同一个 VPC 的公共子网中,然后从那里通过 SSH 连接到集群的驱动程序节点。如果您的 AWS 账户上没有自定义 VPC,则不太可能出现此问题。

【讨论】:

  • 在 EMR 控制台中添加 SSH 规则对我有用。谢谢!
【解决方案2】:

添加更新 ssh 规则的步骤。 安全组位于 EC2 仪表板中。

1) 导航到 EC2 仪表板 -> 安全组

2) 查找组 ElasticMapReduce-master -> Inbound -> 编辑 -> 添加规则

3) 添加 ssh,源选择我的 IP

现在您应该可以 ssh 到主节点了。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-10-29
  • 2018-11-01
  • 2020-08-23
  • 2013-11-21
  • 2020-02-15
相关资源
最近更新 更多