在启用 TLS(传输中加密)的情况下连接到 ElastiCache Redis

我们的 Discourse 使用了在 Amazon ElastiCache 中创建的 Redis 集群,该集群支持启用传输加密(TLS)。然而,一旦我们在 ElastiCache 上启用 TLS,Discourse 就无法连接到 Redis。

看起来 Discourse 尚不支持此功能,尽管 redis-rb 客户端支持,正如在类似问题中提到的:Redis::ConnectionError: Connection lost (ECONNRESET) when using ElastiCache with TLS enabled · Issue #771 · redis/redis-rb · GitHub

2 个赞

我会在上面添加 #pr-welcome。随时可以提交一个@Yevhenii_Baraniuk ;)

3 个赞

更新:我开始实现此功能,但遇到了一个问题:Discourse 使用的 hiredis 驱动目前(截至 2019 年 7 月)不支持 SSL,尽管 redis-rb 客户端支持。等新版本的 hiredis 发布并支持 SSL 后,我会再回来处理这个 PR。:slight_smile:

4 个赞

由于 @sam 的贡献,hiredis 已不再维护,因此我创建了这个 PR,为我们的 Redis 连接添加了 TLS 功能:

我正在测试,目前运行正常。

4 个赞