如何获取 ECS 集群的安全组

如何获取 ECS 集群的安全组

创建EC2模式的ECS集群时,必须分配/创建安全组:

创建屏幕

但是,之后似乎没有办法检索安全组的 ARN/名称。

用户界面:

截屏

命令行:

$ aws ecs describe-clusters --clusters extraction
{
    "clusters": [
        {
            "clusterArn": "arn:aws:ecs:us-east-1:326764833890:cluster/extraction",
            "clusterName": "extraction",
            "status": "ACTIVE",
            "registeredContainerInstancesCount": 0,
            "runningTasksCount": 0,
            "pendingTasksCount": 0,
            "activeServicesCount": 0,
            "statistics": [],
            "tags": [],
            "settings": [
                {
                    "name": "containerInsights",
                    "value": "disabled"
                }
            ],
            "capacityProviders": [
                "FARGATE_SPOT",
                "FARGATE"
            ],
            "defaultCapacityProviderStrategy": []
        }
    ],
    "failures": []
}

假设没有可预期的服务:

没有服务

由于这是集群语义,我假设存在一个集群解决方案来检查此信息。话虽如此,我几乎可以假设此信息实际上并未在 ECS 中 [公开],实际上可能只能通过查看 EC2 中的实际实例才能找到。

请注意,有趣的是,“ECS 实例”选项卡下的“属性”显示了机器类,但没有显示安全组:

ECS 实例

答案1

转到 ECS,单击集群,单击您的集群,然后单击服务。在详细信息选项卡下查看“网络访问”区域,其中列出了安全组。这适用于 Fargate 上的集群,不确定您是否正在使用 EC2 实例。

如果您只有任务进入集群,请单击任务,然后选择一个任务。复制 ENI ID。打开 EC2 控制台,单击“网络接口”,然后使用搜索功能搜索您复制的 ENI ID。安全组列在那里。

答案2

如果有人仍然遇到这个问题,我发现如果你转到 EC2 管理控制台中网络和安全下的安全组列表,你很可能能够通过名称识别安全组,因为该名称将包含集群名称!

希望这可以帮助。

相关内容