【问题标题】:Cannot Connect To AWS Elasticache Redis Cluster From Local Machine无法从本地计算机连接到 AWS Elasticache Redis 集群
【发布时间】:2021-10-16 14:43:58
【问题描述】:

我最近在 AWS elasticache 上创建了一个 Redis 集群,但在我的本地计算机上通过 redis-cli 连接时遇到了问题。每次我运行命令时:

redis-cli -h <redis_cluster_domain> -p 6379

连接永远不会建立,最终由于超时而退出。

最终,我认为它是由于安全组上的设置而被阻止的,因此我编辑了入站规则以允许来自我的 IP 地址的所有流量。即使这样做了,我仍然无法连接到集群。任何想法为什么会这样?

【问题讨论】:

  • 您的 VPC 正在阻止传入连接
  • 您是否启用了身份验证?它在 VPC 中吗?我们需要更多细节。
  • @ErmiyaEskandary 身份验证当前未在此集群上启用,它位于 VPC 中。 VPC 也启用了 IPv4 CIDR。快速而愚蠢的问题 - 我的 IP 地址是否需要在 CIDR 范围内?
  • 哪个 CIDR 范围?如果您在入站规则中定义了一个,那么当然可以 - 获取您当前的公共 IP 并更改入站规则以允许您的 IP - 这有效吗?

标签: amazon-web-services amazon-vpc aws-security-group redis-cli aws-elasticache


【解决方案1】:

我想通了。

显然,默认情况下,您无法从 AWS 外部访问 elasticache 集群。为此,您需要通过 AWS 创建一个 VPN 并连接到该 VPN 以访问您想要的集群。

此 AWS 教程 here 中概述了执行此操作的步骤,但更简单地说,我所做的只是以下内容:

  1. 使用 AWS Certificate Manager 创建和导入授权证书。您将使用此证书来授权您的 VPN 连接。

  2. 创建一个 VPN Client Endpoint 并将上一步中生成的密钥和证书附在上面。

  3. 将您的 elasticache 集群上使用的 VPC 与 VPN 端点相关联。

  4. 为所有用户授权 VPN 上的所有流量。

  5. 向您的 VPN 端点的路由表添加一个路由,以允许从任何地方 (0.0.0.0/0) 进行访问。

  6. 在本地下载 VPN 客户端配置文件并使用“openvpn”连接到 VPN(您可能需要 brew 安装它)以及您在第一步中创建的证书和密钥。

这对我有用,我很高兴我弄明白了。现在我可以使用“redis-cli”从本地机器连接到我的 Redis 集群!

【讨论】:

    猜你喜欢
    • 2020-03-31
    • 2019-09-12
    • 2015-11-21
    • 1970-01-01
    • 2017-12-25
    • 2018-05-21
    • 1970-01-01
    • 2021-03-26
    • 2019-06-15
    相关资源
    最近更新 更多