ECS 集群没有 ecs 实例,但在 EC2 中可以看到两个 ecs 实例

ECS 集群没有 ecs 实例,但在 EC2 中可以看到两个 ecs 实例

我正在尝试在悉尼地区创建一个非常简单的集群。

在此处输入图片描述

这是一个非常简单的设置。我指定硬盘为 60G。我希望集群中有两个 ec2 实例。

它们按预期出现在 ec2 面板中。

在此处输入图片描述

但是 ec2 实例没有显示在 ecs 集群页面中:

在此处输入图片描述

1)为什么会发生这种情况?

2)是否有任何日志可供我检查以找出根本问题?

答案1

您在评论中指出实例没有公有 IP 地址。我从该评论推断您的实例可能也没有通往互联网的路由。

为了使用 ECS,您的实例需要至少有一个到达 ECS 服务端点的路由。到互联网的路由可以通过互联网网关 (IGW)网络地址转换 (NAT)或通过HTTP 代理如果没有到达 ECS 服务端点的路由,ECS 代理将无法将其自身注册到您的集群中,并且您将无法将这些实例与 ECS 一起使用。

答案2

您使用的是ecs optimizedami 吗?我会这样做,然后在您生成实例时将其包含在您的用户数据中

#!/bin/bash
echo ECS_CLUSTER=your-cluster-name >> /etc/ecs/ecs.config

如果你通过 ssh 连接到该盒子,你应该能够看到它在集群中注册,然后在 ecs 代理 docker 日志中

例如。

[ec2-user@ip-10-0-X-XXX ~]$ docker logs my-ecs-agent-container-id
---snip----
2019-04-23T20:46:19Z [INFO] Registered container instance with cluster!
2019-04-23T20:46:19Z [INFO] Registration completed successfully. I am running as 'arn:aws:ecs:us-west-2:XXXXXXX:container-instance/xxxxx-yyyy-zzz-ddd-12345gdd' in cluster 'your-cluster'
---snip----

答案3

按照以下两个步骤修复了该问题:

1)确保已启用“自动分配公共 IPv4 地址”

在此处输入图片描述

2)创建并附加网关到 VPC。然后向网关添加路由。

在此处输入图片描述

答案4

另一个可能的原因是使用非 ECS 优化 AMI,并且安全组中没有出站规则可能会阻止代理。

相关内容