gpt4 book ai didi

ruby-on-rails - 操作系统 : Rails Layer connect to Elasticache : Redis

转载 作者:IT王子 更新时间:2023-10-29 06:03:10 26 4
gpt4 key购买 nike

我正在尝试将我在 Opsworks 中运行的 Rails 应用程序连接到 Elasticache Redis 层。我只是无法让它工作。

我当前的配置:

1 个堆栈(2 个实例)
图层
- rails 应用服务器 - MySQL

Rails 应用程序在 AWS-OpsWorks-Rails-App-Server 中安全组。

1 个 ElasticCache 集群ES集群在default security sg-ff58559a (VPC)(active)安全组。

我正在使用“主端点”尝试连接。

这个值是可见的
ElastiCache>复制组
仪表板。

它看起来类似于:
<name>.oveuui.ng.0001.use1.cache.amazonaws.com:6379

在我的 rails 控制台中(在 SSH 进入 rails 层之后)我尝试:

>r = Redis.new(:url => 'redis://<name>.oveuui.ng.0001.use1.cache.amazonaws.com:6379')
>r.connected

结果是:

Redis::CannotConnectError: Timed out connecting to Redis on...

最佳答案

如果您将集群启动到 Amazon Virtual Private Cloud (Amazon VPC),则只能从在同一 Amazon VPC 中运行的 Amazon EC2 实例连接到 ElastiCache 集群。在这种情况下,您需要将网络入口授予集群。授予从 Amazon VPC 安全组到集群的网络入口:

1.登录 AWS 管理控制台并打开 Amazon EC2 控制台 https://console.aws.amazon.com/ec2/ .

2.在左侧导航 Pane 中的“网络与安全”下,单击“安全组”。

3.在安全组列表中,单击您的 Amazon VPC 的安全组。如果您是新的 ElastiCache 用户,此安全组将被命名为 default。

4.点击 Inbound 选项卡,然后执行以下操作:

一个。单击编辑。

单击添加规则。

在类型列中,选择自定义 TCP 规则。

在“端口范围”框中,键入缓存集群节点的端口号。此编号必须与您在启动集群时指定的编号相同。默认端口如下:

 Memcached: port 11211

Redis: port 6379

在源框中,选择具有端口范围 (0.0.0.0/0) 的任意位置,以便您在 Amazon VPC 中启动的任何 Amazon EC2 实例都可以连接到您的 ElastiCache 节点。

单击保存。

http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/GettingStarted.AuthorizeAccess.html

关于ruby-on-rails - 操作系统 : Rails Layer connect to Elasticache : Redis,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26723176/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com