ruby-on-rails - 无法在同一 VPC 上将 aws redis 与 ec2 连接

标签 ruby-on-rails amazon-web-services redis amazon-elasticache

我已经创建了 AWS ElastiCache redis 服务器并配置了 EC2 实例,但不知何故我无法通过 EC2 实例连接 Redis。

我也分配了相同的安全组。

这是我的配置

EC2

Redis

我面临的错误是 Redis::CannotConnectError: Error connecting to Redis on some-prod.dhgdjw.0001.usw2.cache.amazonaws.com:6379 (Redis::TimeoutError)

我们将不胜感激任何帮助。

最佳答案

正如您提到的同一个安全组,您不需要这样的设置。您的 Redis SG 应该有所不同,这只是建议,因为您在本地 VPC 上需要它。

验证几件事...

使用 ElastiCache 控制面板

选择Redis并点击集群然后点击修改

enter image description here

然后您将看到安全组附加到此集群您可以将一个或多个组附加到此集群。

enter image description here

单击编辑图标并验证它是否允许来自 10.0.0.1/16 的 6379 流量 如果实例和 redis 在同一 VPC 中,如果不允许,则允许 redis SG 中实例的公共(public) IP。

enter image description here

您还可以允许您的公共(public) IP 来检查它是否可访问。安装 redis-client 并尝试此命令。

redis-cli -h some-prod.dhgdjw.0001.usw2.cache.amazonaws.com ping

PONG

如果 ping pong 正常工作,则意味着 SG 允许流量。

关于ruby-on-rails - 无法在同一 VPC 上将 aws redis 与 ec2 连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52348066/

相关文章:

ruby-on-rails - 使用 ACM 的证书在 elasticbeanstalk 中强制使用 https

node.js - 前缀在 connect-redis 中重复

ruby-on-rails - 空关联的范围

ruby-on-rails - 显示时Rails时区错误

ruby-on-rails-3 - 你如何调用db :seed on AWS Elastic Beanstalk apps?

node.js - 如何使用 Amazon Lambda 对在 S3 中创建的文件设置打开/下载权限?

c++ - hiredis ,如何检查是否有更多数据可供读取

redis - 在 redis 中,列表是如何被逐出处理的?

ruby-on-rails - 如何识别 RSpec Controller 规范中调用的路由

windows - 在 Windows 8 上使用 SSH 连接到 Amazon EC2 的权限被拒绝