gpt4 book ai didi

amazon-web-services - 如何根据其中运行的容器动态修改正在运行的ECS实例的安全组?

转载 作者:行者123 更新时间:2023-12-02 18:38:25 25 4
gpt4 key购买 nike

我正在尝试从我的 ECS 集群部署不同类型的 docker 容器。根据容器的类型,我需要允许某些入站和出站端口公开。如何修改现有的容器部署到的ECS实例安全组,并以动态方式添加这个额外的安全组规则?我正在寻找一个自动化的解决方案;如果容器移动到不同的实例,我需要恢复 ECS 实例的原始安全组。

  • 我查看了 awsvpc 网络模式以动态创建一个安全组并将其分配给 ENI,但是我需要一个公共(public) ip 和一个特定端口来公开每个 ECS 实例。通过在私有(private)子网中部署 ECS 实例以将其公开给公众的基于 NAT 的网络不适用于我的用例。
  • awsvpc 可以为 fargate 部署提供公共(public) IP,但是对于我的用例(恰好是一个有状态的容器以及 EFS 挂载),fargate 不会有太大帮助。
  • 最佳答案

    我认为您可能想重新访问 awsvpc 网络模式。正如您在此处解释的那样,这听起来可以满足您的需求。在 awsvpc 模式下,为您的任务分配一个新的 ENI,并映射到任务的网络命名空间。从您的任务的角度来看,您看起来像是在主机模式网络中运行;您的容器将可以直接访问您的网络。您将使用一个现有的安全组,该安全组将允许您的任务容器公开的端口的入站流量。

    或者,如果您确实需要根据任务放置来操作安全组,您应该考虑使用 lambda 函数通过适当的操作来响应 ECS CloudWatch 事件。这记录在 https://docs.aws.amazon.com/AmazonECS/latest/developerguide/cloudwatch_event_stream.html

    关于amazon-web-services - 如何根据其中运行的容器动态修改正在运行的ECS实例的安全组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50760075/

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