我可以从EC2 实例连接到 VPC中的ElastiCacheRedis 实例。但我想知道是否有办法连接到 Amazon EC2 实例之外的 ElastiCache Redis 节点,例如从我的本地开发设置或其他供应商提供的 VPS 实例。
目前从我的本地设置尝试时:
redis-cli -h my-node-endpoint -p 6379
我只得到一个超时后一段时间。
SSH 端口转发应该做的伎俩。尝试从你的客户端运行这个。
ssh -f -N -L 6379:<your redis node endpoint>:6379 <your EC2 node that you use to connect to redis>
然后从你的客户
redis-cli -h 127.0.0.1 -p 6379
它为我工作。
请注意,redis 的默认端口是6379
而不是6739
。此外,请确保允许您用于连接到 redis 实例的 EC2 节点的安全组进入 Cache 安全组。
此外,AWS 现在支持访问您的集群更多信息here
2018 年更新
以前的答案在编写时是准确的,但是现在可以通过一些配置使用根据Accessing ElastiCache Resources from Outside AWS的方向从外部访问 redis 缓存
旧答案
不,你不能不诉诸“技巧”,如隧道,这也许可以进行测试,但会杀死使用超快速缓存的任何真正的好处,增加延迟 / 开销。
如何在 VPC 内部使用 Amazon ElastiCache 不同于在外部使用 Amazon ElastiCache?下的Old FAQ:
VPC 内部或外部的 Amazon ElastiCache 集群不允许从 Internet 访问
但是,此语言已在current faq中删除
这些答案已过期。
您可以按照以下步骤访问 AWS 外部的弹性缓存:
在与缓存集群相同的 VPC 中但在公有子网中创建 NAT 实例。
为缓存集群和 NAT 实例创建安全组规则。
验证规则。
在 NAT 实例中添加 iptables 规则。
确认受信任的客户端能够连接到群集。
保存 iptables 配置。
有关更详细的说明,请参阅 aws 指南:
https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/accessing-elasticache.html#access-from-outside-aws不是那么老的问题,我自己跑到同样的问题,并解决了它:
有时,出于开发原因,您需要从外部访问(以避免多部署只是为了一个简单的错误修复?)
亚马逊发布了一份使用 EC2 作为外部世界的新指南:
https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/accessing-elasticache.html#access-from-outside-aws祝你好运
本站系公益性非盈利分享网址,本文来自用户投稿,不代表码文网立场,如若转载,请注明出处
评论列表(8条)