在Windows群集设置的Redis

我已经下载MSOpenTech Redis版本3.x,其中包括期待已久的群集function。 我的redis数据库全部正常工作,我可以在所需的最less3个节点上启动群集(在群集模式下)。 有谁知道如何configuration集群(似乎没有人知道)? 安装Linux并运行本机Linux版本对我来说不是一个可悲的select。 任何帮助将不胜感激。

您可以按照Redis集群教程创建群集,您可以使用redis-trib.rb ruby脚本,为此需要安装Ruby for Windows 。

例如:

> C:\Ruby22\Bin\ruby.exe redis-trib.rb create --replicas 1 192.168.1.1:7000 192.168.1.1:7001 192.168.1.1:7002 192.168.1.1:7003 192.168.1.1:7004 192.168.1.1:7005 

没有选择在Windows上安装Ruby,但发现手动步骤为我工作。 Ruby脚本似乎做了很多检查的东西安装正确,是首选的设置路线。 所以要小心,这里是龙。

将每个节点设置为以群集模式运行。 编辑redis.windows-service.conf文件并取消注释

 cluster-enabled yes cluster-config-file nodes-6379.conf cluster-node-timeout 15000 

重新启动服务。

运行一个PowerShell窗口,切换到安装Redis的文件夹并启动redis-cli。 例如

 cd "C:\Program Files\Redis" .\redis-cli.exe 

现在你可以加入其他节点了。 对于其他每个节点,都运行CLUSTER MEET IPADDRESS PORT,而不是您正在使用的实例。 例如

 CLUSTER MEET 10.10.0.2 6379 

几秒钟后运行

 CLUSTER NODES 

应列出连接的所有节点,但都将设置为MASTER。

在其他每个节点上,运行CLUSTER REPLICATE MASTERNODEID。 其中MASTERNODEID是下一个散列值,当运行CLUSTER NODES时,节点在主节点上声明“我自己”。 例如

 CLUSTER REPLICATE b7c767ab3ab7c4a926ac2fed937cf140b96764a7 

现在为每个主分配插槽。 我的设置有三个实例,只有一个主。

 for ($slot=0;$slot -le 16383;$slot++) { .\redis-cli.exe -h REDMST CLUSTER ADDSLOTS $slot } 

用redis-cli重新连接并尝试并保存数据。 例如

 SET foo bar OK GET foo "bar" 

唷! 从阅读https://www.javacodegeeks.com/2015/09/redis-clustering.html#InstallingRedis这是不是Windows特定的大部分。