【问题标题】:could not connect aws elasticache redis from .net app无法从 .net 应用程序连接 aws elasticache redis
【发布时间】:2020-06-26 01:56:20
【问题描述】:

我正在将 .NET 核心应用程序连接到 AWS ElastiCache Redis。

AWS Elasticache Redis 正在运行,并且端口 6329 在安全组上打开。客户端代码使用StackExchange.Redis:

           var redis = ConnectionMultiplexer.Connect("redis-1.xxxx.0001.use1.cache.amazonaws.com:6379");
           //var redis = ConnectionMultiplexer.Connect("localhost"); //working
           IDatabase db = redis.GetDatabase();

            string value = "abcdefg";
            db.StringSet("mykey", value);        

            string value2 = db.StringGet("mykey");
            Console.WriteLine(value2); // writes: "abcdefg"

            Console.ReadLine();

例外是:

无法连接到 redis 服务器。无法连接 在 redis-1.xxx.0001.use1.cache.amazonaws.com:6379/Interactive 上, Initializing/NotStarted, last: NONE, origin: BeginConnectAsync, 未完成:0,上次读取:5 秒前,上次写入:5 秒前,保持活动状态: 60 秒,状态:正在连接,管理器:10 个可用,10 个可用,最后一次心跳: 从不,全球:0 秒前,v:2.0.601.3402

添加到,abortConnect=false的端点,我可以连接了。

现在错误在StringSet

StackExchange.Redis.RedisConnectionException: '没有连接 可用于服务此操作:SET mykey; UnableToConnect ...

.NET 代码在我的本地 Redis 服务中运行良好,因此我的 AWS 设置看起来不正确。

成功ssh 到我的 EC2 实例和 redis-cli 到我的 AWS redis 服务:

有什么想法吗?

注意:默认情况下,AWS Elasticache Redis 不可用于公共访问。

【问题讨论】:

  • 也许尝试使用工作站上的 redis-cli 连接到服务器?
  • 成功 ssh 到一个 ec2-instance 并运行 redis-cli 对我的 aws redis 服务。但仍然从 .net 应用程序失败 (docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/…)
  • 为了清楚起见,当您将代码部署到同一个 EC2 实例时,您会收到此错误吗?在这种情况下,应该没有任何问题,因为 redis-cli 可以正常连接。
  • 我正在从我的机器上运行 .net 代码。认为redis-1.xxxx.0001.use1.cache.amazonaws.com:6379 可以通过安全组公开(所有 IP 的 TCP\6379)?
  • 尝试从您自己的机器连接到您的 redis 服务器,然后使用 redis-cli,而不是从 EC2。

标签: amazon-web-services .net-core redis amazon-elasticache


【解决方案1】:

问题:“...端口 6329 在安全组上打开..”您不是说 6379 吗?

即便如此,我认为我在“默认”子网组上存在问题。

AWS ElastiCache Redis 所在的 VPC_Subnet(在该组中)是否具有可访问 Internet 网关的路由表? 如果没有,您需要将 InternetGteway 附加到路由表,然后在您想要的子网上使用该路由表。

应该是这样的: Internet GW

【讨论】:

    猜你喜欢
    • 2020-09-07
    • 2018-05-21
    • 2022-07-30
    • 2020-04-04
    • 2019-09-19
    • 2018-12-04
    • 2020-11-01
    • 1970-01-01
    • 2021-06-12
    相关资源
    最近更新 更多