EC2 实例上的 AWS ElastiCache 需要 Redis GUI

EC2 实例上的 AWS ElastiCache 需要 Redis GUI

我有一个 AWS ElastiCache Redis 集群设置,希望对其进行管理。由于 AWS 不允许在 VPC 之外访问 ElastiCache,因此我设置了一个微型 EC2 实例,其中包含指向此集群的 phpRedisAdmin 脚本副本。但 AWS 已禁用 Redis 集群上的“CONFIG”命令,因此 phpRedisAdmin 无法连接和管理 ElastiCache 集群。

我已经尝试过 redis-browser 节点包,但它在 0.0.0.0:4567 上运行,并且我需要此实例上的公共 IP 来管理 Redis 集群。

有什么建议吗?

答案1

你可能想尝试一下雷德斯敏

如果您的 EC2 实例与 Redis ElasticCache 位于同一子网中

笔记:

  • 这仅在您连接到的 EC2 实例位于同一子网作为您的 ElasticCache Redis 实例。
  • 以下示例将表明您的 ElastiCache 私有 IP 正在172.31.5.13端口上运行6379
  • 以下示例将说明您的 EC2 私有 IP 是172.31.5.14,其公有 IP 是52.50.145.87

现在让我们一步一步地进行:

  • 通过 SSH 连接到此 EC2 实例
  • 运行sudo iptables -t nat -A PREROUTING -p tcp --dport 6379 -j DNAT --to-destination 172.31.5.13:6379不要忘记更改你的 IP 甚至端口号
  • 跑步sudo iptables -t nat -A POSTROUTING -p tcp -d 172.31.5.13 --dport 6379 -j SNAT --to-source 172.31.5.14
  • 跑步sudo service iptables save
  • 如果上一个命令不工作, 尝试:

    • 在 Debian/Ubuntu 上 =>iptables-save > /etc/iptables/rules.v4
    • 在 RHEL/CentOS 上 =>iptables-save > /etc/sysconfig/iptables
  • 在安全组中添加一条规则,允许来自 Redsmin IP 的入站请求62.210.222.165,协议 = TCP,端口 = 6379

  • 在 redsmin 中使用连接字符串添加一个新的 Direct Server:,redis://52.50.145.87:6379完成!

如果您没有与 Redis ElasticCache 位于同一子网中的 EC2 实例

  • 按照这个亚马逊教程设置 NAT 实例,设置它与您的 ElastiCache 位于同一子网服务器。
  • 现在按照上面的上一节进行。

如果你只是想将 Redsmin 连接到 EC2 Redis

  • 在安全组中添加一条规则以允许来自 Redsmin IP 的入站请求62.210.222.165(例如,不要忘记指定正确的端口6379
  • 使用 EC2 公共 IP 和您打开的端口在 Redsmin 中连接您的 Redis 服务器。

答案2

我能够ElastiCache private IP通过从 EC2 shell ping 主端点来找到它。

PING xyz.abc.euw2.cache.amazonaws.com (172.31.xxx.xxx) 56(84) bytes of data.

答案3

我知道这是一篇旧帖子,但它出现在我的搜索中并且接受的方法对我来说不起作用。

我发布了对我有用的东西,以防其他人需要它:

我用了MobaX终端 隧道功能使用本地端口 6379 连接到 EC2 Amazon Linux 实例。隧道对话框非常用户友好且易于使用。

相关内容