redis version: 6.0.9 nodes: 192.168.122.5 192.168.122.6 192.168.122.7 192.168.122.8 master: 192.168.122.5:6379 -> slave: 192.168.122.6:6380 master: 192.168.122.6:6379 -> slave: 192.168.122.5:6380 master: 192.168.122.7:6379 -> slave: 192.168.122.8:6380 master: 192.168.122.8:6379 -> slave: 192.168.122.7:6380
Execute on each node: redis-cli --cluster check 127.0.0.1:6379
The result is:
M: cd517037c1b7a6b1910fa7daeb57ef3b108c8116 127.0.0.1:6379
slots:[1365-5460] (4096 slots) master
1 additional replica(s)
S: 9bdac88f50a7d029d6021647e302ffb064cdfef8 127.0.0.1:6380
slots: (0 slots) slave
replicates 12caeb7a99c2c709de1a8b7b72105b200e185bce
M: f6a8f940ddce25a51f98d65162ac3c49c8ac4e5d 192.168.122.7:6379
slots:[12288-16383] (4096 slots) master
1 additional replica(s)
M: 12caeb7a99c2c709de1a8b7b72105b200e185bce 192.168.122.6:6379
slots:[8192-12287] (4096 slots) master
1 additional replica(s)
S: f56d34e469214ec3145dd60e52acb0a34465384b 192.168.122.8:6380
slots: (0 slots) slave
replicates f6a8f940ddce25a51f98d65162ac3c49c8ac4e5d
S: 8c2cb2158a2d2959fe1211cbe6b0b1f72d1d326c 192.168.122.7:6380
slots: (0 slots) slave
replicates 8e2cfb5c0f8ada2900526c86f283979f17c2aa18
M: 8e2cfb5c0f8ada2900526c86f283979f17c2aa18 192.168.122.8:6379
slots:[0-1364],[5461-8191] (4096 slots) master
1 additional replica(s)
S: 0159f66e5dd464754d7de18e6b9e9ebc7c425e47 192.168.122.6:6380
slots: (0 slots) slave
replicates cd517037c1b7a6b1910fa7daeb57ef3b108c8116
This result is very correct!
However, if you enter other master node check on each machine, the results will be different, for example:
Execute on 192.168.122.5: redis-cli --cluster check 192.168.122.6:6379
The result is:
M: 12caeb7a99c2c709de1a8b7b72105b200e185bce 192.168.122.6:6379
slots:[8192-12287] (4096 slots) master
2 additional replica(s)
S: 9bdac88f50a7d029d6021647e302ffb064cdfef8 127.0.0.1:6380
slots: (0 slots) slave
replicates 12caeb7a99c2c709de1a8b7b72105b200e185bce
S: 8c2cb2158a2d2959fe1211cbe6b0b1f72d1d326c 192.168.122.7:6380
slots: (0 slots) slave
replicates 8e2cfb5c0f8ada2900526c86f283979f17c2aa18
M: f6a8f940ddce25a51f98d65162ac3c49c8ac4e5d 192.168.122.7:6379
slots:[12288-16383] (4096 slots) master
1 additional replica(s)
M: cd517037c1b7a6b1910fa7daeb57ef3b108c8116 192.168.122.5:6379
slots:[1365-5460] (4096 slots) master
S: f56d34e469214ec3145dd60e52acb0a34465384b 192.168.122.8:6380
slots: (0 slots) slave
replicates f6a8f940ddce25a51f98d65162ac3c49c8ac4e5d
S: 9bdac88f50a7d029d6021647e302ffb064cdfef8 192.168.122.5:6380
slots: (0 slots) slave
replicates 12caeb7a99c2c709de1a8b7b72105b200e185bce
M: 8e2cfb5c0f8ada2900526c86f283979f17c2aa18 192.168.122.8:6379
slots:[0-1364],[5461-8191] (4096 slots) master
1 additional replica(s)
Among them, "9bdac88f50a7d029d6021647e302ffb064cdfef8" appeared twice, The master node "192.168.122.6:6379" has a duplicate replica node, it seems that the slave node above 192.168.122.6 did not return. Switching to other nodes to perform the same is a similar effect. What could be the reason? Thank you. I don’t speak English well. Will you have difficulty reading?
Comment From: yossigo
Hi @zengzhiying, can you please describe how you have set up the cluster and provide the output of redis-cli cluster nodes on each instance? Thank you
Comment From: zengzhiying
@yossigo Hello, my cluster has a total of 4 nodes, and two redis instances are started on each node. The port numbers are 6379 and 6380 respectively. The main configuration is as follows:
bind 127.0.0.1
The detailed configuration file is in the link: https://github.com/zengzhiying/redis-issue-temp Or view the uploaded file. redis-conf.zip
Each node executes the following command to start:
redis-server /usr/local/redis/conf/redis.conf
redis-server /usr/local/redis/conf/redis2.conf
The configuration of each node is the same except ip.
The results of redis-cli cluster nodes are below:
192.168.122.5:
cd517037c1b7a6b1910fa7daeb57ef3b108c8116 192.168.122.5:6379@16379 myself,master - 0 1605150338000 10 connected 1365-5460
f6a8f940ddce25a51f98d65162ac3c49c8ac4e5d 192.168.122.7:6379@16379 master - 0 1605150338903 3 connected 12288-16383
0159f66e5dd464754d7de18e6b9e9ebc7c425e47 192.168.122.6:6380@16380 slave cd517037c1b7a6b1910fa7daeb57ef3b108c8116 0 1605150337000 10 connected
8e2cfb5c0f8ada2900526c86f283979f17c2aa18 192.168.122.8:6379@16379 master - 0 1605150336000 6 connected 0-1364 5461-8191
9bdac88f50a7d029d6021647e302ffb064cdfef8 127.0.0.1:6380@16380 slave 12caeb7a99c2c709de1a8b7b72105b200e185bce 0 1605150337000 8 connected
f56d34e469214ec3145dd60e52acb0a34465384b 192.168.122.8:6380@16380 slave f6a8f940ddce25a51f98d65162ac3c49c8ac4e5d 0 1605150337901 3 connected
12caeb7a99c2c709de1a8b7b72105b200e185bce 192.168.122.6:6379@16379 master - 0 1605150339906 8 connected 8192-12287
8c2cb2158a2d2959fe1211cbe6b0b1f72d1d326c 192.168.122.7:6380@16380 slave 8e2cfb5c0f8ada2900526c86f283979f17c2aa18 0 1605150338000 6 connected
192.168.122.6: 9bdac88f50a7d029d6021647e302ffb064cdfef8 192.168.122.5:6380@16380 slave 12caeb7a99c2c709de1a8b7b72105b200e185bce 0 1605150378743 8 connected 12caeb7a99c2c709de1a8b7b72105b200e185bce 127.0.0.1:6379@16379 myself,master - 0 1605150377000 8 connected 8192-12287 8c2cb2158a2d2959fe1211cbe6b0b1f72d1d326c 192.168.122.7:6380@16380 slave 8e2cfb5c0f8ada2900526c86f283979f17c2aa18 0 1605150379000 6 connected 8e2cfb5c0f8ada2900526c86f283979f17c2aa18 192.168.122.8:6379@16379 master - 0 1605150380748 6 connected 0-1364 5461-8191 0159f66e5dd464754d7de18e6b9e9ebc7c425e47 127.0.0.1:6380@16380 slave cd517037c1b7a6b1910fa7daeb57ef3b108c8116 0 1605150379745 10 connected f56d34e469214ec3145dd60e52acb0a34465384b 192.168.122.8:6380@16380 slave f6a8f940ddce25a51f98d65162ac3c49c8ac4e5d 0 1605150376000 3 connected cd517037c1b7a6b1910fa7daeb57ef3b108c8116 192.168.122.5:6379@16379 master - 0 1605150377000 10 connected 1365-5460 f6a8f940ddce25a51f98d65162ac3c49c8ac4e5d 192.168.122.7:6379@16379 master - 0 1605150378000 3 connected 12288-16383
192.168.122.7: 9bdac88f50a7d029d6021647e302ffb064cdfef8 192.168.122.5:6380@16380 slave 12caeb7a99c2c709de1a8b7b72105b200e185bce 0 1605150413000 8 connected 12caeb7a99c2c709de1a8b7b72105b200e185bce 192.168.122.6:6379@16379 master - 0 1605150411822 8 connected 8192-12287 8e2cfb5c0f8ada2900526c86f283979f17c2aa18 192.168.122.8:6379@16379 master - 0 1605150414831 6 connected 0-1364 5461-8191 0159f66e5dd464754d7de18e6b9e9ebc7c425e47 192.168.122.6:6380@16380 slave cd517037c1b7a6b1910fa7daeb57ef3b108c8116 0 1605150411000 10 connected f56d34e469214ec3145dd60e52acb0a34465384b 192.168.122.8:6380@16380 slave f6a8f940ddce25a51f98d65162ac3c49c8ac4e5d 0 1605150412826 3 connected f6a8f940ddce25a51f98d65162ac3c49c8ac4e5d 127.0.0.1:6379@16379 myself,master - 0 1605150411000 3 connected 12288-16383 8c2cb2158a2d2959fe1211cbe6b0b1f72d1d326c 127.0.0.1:6380@16380 slave 8e2cfb5c0f8ada2900526c86f283979f17c2aa18 0 1605150413828 6 connected cd517037c1b7a6b1910fa7daeb57ef3b108c8116 192.168.122.5:6379@16379 master - 0 1605150412000 10 connected 1365-5460
192.168.122.8: f6a8f940ddce25a51f98d65162ac3c49c8ac4e5d 192.168.122.7:6379@16379 master - 0 1605150973000 3 connected 12288-16383 12caeb7a99c2c709de1a8b7b72105b200e185bce 192.168.122.6:6379@16379 master - 0 1605150976000 8 connected 8192-12287 f56d34e469214ec3145dd60e52acb0a34465384b 127.0.0.1:6380@16380 slave f6a8f940ddce25a51f98d65162ac3c49c8ac4e5d 0 1605150976849 3 connected 8e2cfb5c0f8ada2900526c86f283979f17c2aa18 192.168.122.8:6379@16379 myself,master - 0 1605150976000 12 connected 0-1364 5461-8191 8c2cb2158a2d2959fe1211cbe6b0b1f72d1d326c 192.168.122.7:6380@16380 slave 8e2cfb5c0f8ada2900526c86f283979f17c2aa18 0 1605150976000 12 connected cd517037c1b7a6b1910fa7daeb57ef3b108c8116 192.168.122.5:6379@16379 master - 0 1605150974000 10 connected 1365-5460 0159f66e5dd464754d7de18e6b9e9ebc7c425e47 192.168.122.6:6380@16380 slave cd517037c1b7a6b1910fa7daeb57ef3b108c8116 0 1605150977851 10 connected 9bdac88f50a7d029d6021647e302ffb064cdfef8 192.168.122.5:6380@16380 slave 12caeb7a99c2c709de1a8b7b72105b200e185bce 0 1605150974834 8 connected
The above is the current status, if you need other information, please let me know, thank you
Comment From: yossigo
@zengzhiying I notice you use bind on both the 127.0.0.1 and the interface's address and also the nodes output above shows some inconsistency around addressing. Need to take a closer a look at that, but in the meanwhile can you just bind 0.0.0.0 and see if that works around your problem?
Comment From: zengzhiying
@yossigo Hi, When I try to bind 0.0.0.0, there will still be inconsistent results, maybe because it still of including 127.0.0.1. Therefore, after modifying all configuration files to bind the actual network interface again (Exclude 127.0.0.1), the display no longer has any problems.
The binding configuration is:
192.168.122.5: bind 192.168.122.5
192.168.122.6: bind 192.168.122.6
192.168.122.7: bind 192.168.122.7
192.168.122.8: bind 192.168.122.8
Thank you for answering my question!