【问题标题】:Accessing Elasticache Redis from ECS [closed]从 ECS 访问 Elasticache Redis [关闭]
【发布时间】:2021-08-19 12:38:51
【问题描述】:

我在 AWS EC2 中部署了一个使用 Elasticache Redis 的应用程序。我想将它迁移到 ECS 并且我已经设置了所有内容,但是当我运行它时,应用程序从 ECS 访问 Redis 时超时。

在 AWS 文档中,它说 Elasticache 可以从 EC2 访问,但有人尝试从 ECS 使用它吗?

提前致谢

PS:这不是安全组问题,因为 AWS EC2 实例和 ECS 任务使用相同的安全组。

【问题讨论】:

  • "无法访问 Redis" - 它并不具体。到底发生了什么?超时,任何错误信息?示例代码示例?
  • 对不起,超时了。在问题中编辑
  • "PS:这不是安全组问题,因为 AWS EC2 实例和 ECS 任务使用相同的安全组。"在同一个安全组中是没有意义的。您仍然需要打开安全组中的端口,以允许安全组中的资源相互通信。
  • 这不是没有意义,如果你可以从具有安全组的EC2访问,则意味着你必须能够从具有相同安全组的ECS访问。它不是 Redis 和 ECS 具有相同的安全组,它是工作的 EC2 实例而不是工作的 ECS
  • "如果您可以从具有安全组的EC2访问,则意味着您必须能够从具有相同安全组的ECS访问。"不完全的。 ec2 实例和 ecs 任务是否在同一个子网中?鉴于这是一项 ECS 任务,您的 dockerfile 是否公开了正确的端口?

标签: amazon-web-services amazon-ec2 amazon-ecs amazon-elasticache


【解决方案1】:

我遇到了类似的超时(从 cmets 读取),但那是因为我的应用程序没有正确配置 TLS。但是,如果您的应用程序在 EC2 上运行并且能够访问 redis,则情况不应该如此。

一些让我头疼的调试问题是:

  • 是否可以通过SSH隧道在本地访问redis连接?
  • ECS集群和redis服务是否在同一个VPC并配置正确?
  • 另外,您如何从 EC2 访问 redis?

如果您可以让我们知道这些问题,那么我们或许可以帮助确定根本原因。

【讨论】:

    【解决方案2】:

    问题解决了。问题出在错误加载的配置文件中,我试图连接到位于另一个 VPC 中的 redis,而不是连接到同一 VPC 中的 redis。

    【讨论】:

      猜你喜欢
      • 2018-04-29
      • 1970-01-01
      • 2014-08-13
      • 2021-09-22
      • 2019-08-30
      • 2015-08-14
      • 2019-07-01
      • 2020-10-21
      • 2015-04-05
      相关资源
      最近更新 更多