扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
redis中怎么使用redis-trib.rb创建带密码的集群,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
成都创新互联公司专注于迁安网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供迁安营销型网站建设,迁安网站制作、迁安网页设计、迁安网站官网定制、小程序制作服务,打造迁安网络公司原创品牌,更为您提供迁安网站排名全网营销落地服务。
1、设定集群密码
各个节点的配置中设定密码,注意集群模式下,下面两行都需要
1 2 | masterauth passwd123 requirepass passwd123 |
2、各个节点的配置中开启集群配置的相关选项,如下:
1 2 3 4 5 | port 30001 cluster-enabled yes cluster-config-file nodes-30001.conf cluster-node-timeout 5000 appendonly yes |
3、修改create-cluster工具
新版的Redis中给我们提供了利用redis-trib.rb创建集群的工具,就是:utils/create-cluster/create-cluster
我们稍作修改,把start部分的redis-server命令的参数,直接替换为各个节点配置文件路径
1 2 3 4 5 6 7 8 9 10 | if [ "$1" == "start" ] then while [ $((PORT < ENDPORT)) != "0" ]; do PORT=$((PORT+1)) echo "Starting $PORT" # 通过redis-server并指定各个节点的redis配置文件路径 ../../src/redis-server /redis/redis-$PORT.conf done exit 0 fi |
4、修改redis-trib.rb脚本
如果Redis设定了密码,那么通过redis-trib.rb脚本创建集群时,是会类似这样的错误的:[ERR] Sorry, can’t connect to node *.*.*.*:7001
这是因为redis-trib.rb脚本中连接Redis时,并未设定密码,这确实是个很大的坑。我的解决方法时,修改该脚本中连接Redis时的代码,修改内容如下:
找到这一行:
1 | @r = Redis.new(:host => @info[:host], :port => @info[:port], :timeout => 60) |
修改为:
1 | @r = Redis.new(:host => @info[:host], :port => @info[:port], :timeout => 60, :password => "你的密码") |
5、修改完成后,依次运行:
./craete-cluster start
./craete-cluster create
即可启动集群
看完上述内容,你们掌握Redis中怎么使用redis-trib.rb创建带密码的集群的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注创新互联行业资讯频道,感谢各位的阅读!
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流