[ECS] 需要配置安全组才能通过本地主机进行通信吗?

0

【以下的问题经过翻译处理】 假设我有两个服务(service-a和service-b),其中service-a是一个REPLICA服务,而service-b是一个DAEMON服务。它们在同一个容器实例上。为了使service-a能够通过localhost与service-b通信,我是否需要配置安全组规则来实现?

我知道对于同一任务定义中的两个容器,您不需要这样做,但是我不确定对于同一容器实例中的两个服务是否需要。

profile picture
전문가
질문됨 5달 전21회 조회
1개 답변
0

【以下的回答经过翻译处理】 当以桥接/主机/网络模式运行时,它的工作方式与您在本地运行docker-compose up时几乎相同。这意味着,您需要自行处理网络权限(现在,使用代理边车例如envoy可能会有一些注意事项,但我实际上没有测试过)。我使用(并推荐仅使用)awsvpc网络模式(尽管如果您使用ECS Anywhere,它是不适用的)。在这种情况下,尽管您的两个容器在同一台机器上运行,但如果不使用关联的ENI,它们无法相互通信。这是非常安全的,只需要稍微多一点的管理工作。现在,在这两种情况下(awsvpc和其他情况),我建议您不要依赖于localhost来处理所有情况,因为您可能使用DAEMON模式的服务。我建议使用CloudMap进行服务发现:您的服务A和B将在其中注册。无论您使用哪种模式,容器都将在DNS中注册一个SRV记录(这也可以很好地处理潜在的暴露端口更改)。您的服务A将始终能够与服务B通信,并且具有更好的扩展性。这将为您未来扩展和添加更多服务提供便利,因为这是一个简单、可重复和一致的过程。

希望这有帮助

profile picture
전문가
답변함 5달 전

로그인하지 않았습니다. 로그인해야 답변을 게시할 수 있습니다.

좋은 답변은 질문에 명확하게 답하고 건설적인 피드백을 제공하며 질문자의 전문적인 성장을 장려합니다.

질문 답변하기에 대한 가이드라인

관련 콘텐츠