我在https://medium.com/@andrewcbass/install-redis-v3-2-on-aws-ec2-instance-93259d40a3ce
之后的AWS ec2实例上设置了一个redis服务器我在另一个ec2实例上运行python脚本
import redis
try:
conn = redis.Redis(host=<private ip address>,port=6379, db=1)
user = {"Name":"Pradeep", "Company":"SCTL", "Address":"Mumbai", "Location":"RCP"}
conn.hmset("pythonDict", user)
conn.hgetall("pythonDict")
except Exception as e:
print(e)
在redis服务器的安全组中,我允许端口6379上的入站流量
运行上面的脚本时,我收到以下错误:
Error 111 connecting to 172.31.22.71:6379. Connection refused.
我已经尝试更改conf文件中的绑定值,正如堆栈溢出的类似问题的几个答案所示,但它没有用
答案 0 :(得分:1)
假设您的其他实例与Redis实例位于同一子网内,我的建议是审核以下内容:
确保您的安全组入站规则中,您已为子网设置Redis端口,例如:
6379 (REDIS) 172.31.16.0/20
在Redis
配置中(例如/etc/redis/redis.conf
),如果尚未完成,请将服务器绑定到私有IP(bind 172.31.22.71
)或简单地注释掉任何现有的localhost绑定,然后重新启动Redis
。