Mat*_*cki 5 amazon-web-services redis
我创建 cache.t2.small在 ElastiCache 下Redis。它可用。
我有终点:portal-test.abcdef.ab.0001.abcd1.cache.amazonaws.com.
我ssh进入了实例(通过ubuntu@ip-172-xx-xx-xx和尝试runcloud@ip-172-xx-xx-xx)。我正在尝试通过redis-cli键入以下内容进行连接:
redis-cli -h 门户测试.abcdef.ab.0001.abcd1.cache.amazonaws.com -p 6379 ping
我期待,PONG但我得到
无法在 portal-test.abcdef.ab.0001.abcd1.cache.amazonaws.com:6379 处连接到 Redis: 连接超时
我进入我的 EC2 实例并定义了端口的入站流量6379:
在 runcloud(我用于此实例)上,我还打开了端口并成功部署了防火墙规则:
同样的超时。我错过了什么?
Mat*_*cki 10
我找到了解决方案。
罪魁祸首:
我创建的 Redis与我的 Laravel 应用程序所在的 EC2实例不在同一个 VPC/可用区/子网中。第一个 IP 为 10.xxx > 而 EC2 实例为 172.xxx 我认为这种不匹配会阻止两端相互通信。
解决方案:
创建 Redis 时,只需将其分配到与 Laravel 宝宝所在的现有 EC2 实例相同的 VPC。还要重用您打开端口 6379 的相同安全组(假设您在创建 Redis 时选择此端口作为默认端口)。
现在通过 SSH 连接到您的 EC2 并从类型中:
redis-cli -h endpoint-from-your-aws-redis-dashboard -p 6379 ping
Run Code Online (Sandbox Code Playgroud)
如果你得到:
乒乓球
你是赢家。
| 归档时间: |
|
| 查看次数: |
5370 次 |
| 最近记录: |