user6223764
user6223764

Reputation:

Why does Redis Server not allow me to connect to a node?

On src directory, I am running below command

/redis-trib.rb create --replicas 1 127.0.0.1:7000 127.0.0.1:7001 127.0.0.1:7002 127.0.0.1:7003 127.0.0.1:7004 127.0.0.1:7005

but getting below error.

Creating cluster
[ERR] Sorry, can't connect to node 127.0.0.1:7000

However if I start the node at 7000 using command redis-server redis.conf where redis.conf is below

port 7000
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 10
cluster-slave-validity-factor 0
appendonly yes

and similarly I started redis in all ports successfully.

Now when I run

/redis-trib.rb create --replicas 1 127.0.0.1:7000 127.0.0.1:7001 127.0.0.1:7002 127.0.0.1:7003 127.0.0.1:7004 127.0.0.1:7005

I am getting another erorr.

Creating cluster [ERR] Node 127.0.0.1:7000 is not empty. Either the node already knows other nodes (check with CLUSTER NODES) or contains some key in database 0.

please help.

Upvotes: 5

Views: 15267

Answers (2)

Miss Shrivastava
Miss Shrivastava

Reputation: 39

Perform steps in the following manner stop -> clean -> start -> create of the servers.

Upvotes: 1

Daniel
Daniel

Reputation: 3010

The first error is because redis-trib create attempts to connect to the redis instances while creating the cluster- however you do not have any redis instances running at 127.0.0.1:7000.

The second error looks like you started your redis instance, but now your cluster cannot be created because you already tried to create a cluster on node 7000 (Probably allocated slots to your node) before you got the first error message. To wipe the node clean, run

$redis-cli -p 7000
127.0.0.1:7000> flushall
127.0.0.1:7000> cluster reset
127.0.0.1:7000> exit

then your redis-trib create will work.

Upvotes: 21

Related Questions