Bird
Raised Fist0
Redisquery~30 mins

Adding and removing nodes in Redis - Mini Project: Build & Apply

Choose your learning style10 modes available
Adding and Removing Nodes in Redis Cluster
📖 Scenario: You are managing a Redis cluster for a growing online store. The cluster needs to be updated by adding a new node to handle more traffic and removing an old node that is no longer needed.
🎯 Goal: Learn how to add a new node to a Redis cluster and remove an existing node using Redis CLI commands.
📋 What You'll Learn
Create a Redis cluster with three nodes
Add a new node to the existing cluster
Remove an existing node from the cluster
Verify the cluster nodes after each operation
💡 Why This Matters
🌍 Real World
Managing Redis clusters is essential for scaling applications that require fast data access and high availability.
💼 Career
Database administrators and backend engineers often need to add or remove nodes in Redis clusters to maintain performance and reliability.
Progress0 / 4 steps
1
Create a Redis cluster with three nodes
Use the Redis CLI command redis-cli --cluster create with the exact node addresses 127.0.0.1:7000, 127.0.0.1:7001, and 127.0.0.1:7002 to create a cluster. Include the --cluster-replicas 0 option to create no replicas.
Redis
Hint

Use redis-cli --cluster create followed by the three node addresses and --cluster-replicas 0.

2
Add a new node to the existing cluster
Use the Redis CLI command redis-cli --cluster add-node to add the new node 127.0.0.1:7003 to the cluster. Specify the existing cluster node 127.0.0.1:7000 as the target for the join.
Redis
Hint

Use redis-cli --cluster add-node 127.0.0.1:7003 127.0.0.1:7000 to add the new node.

3
Remove an existing node from the cluster
Use the Redis CLI command redis-cli --cluster del-node to remove the node 127.0.0.1:7001 from the cluster. You need to specify the cluster node 127.0.0.1:7000 and the node ID of 127.0.0.1:7001. For this exercise, use the placeholder node ID node-id-7001 exactly as shown.
Redis
Hint

Use redis-cli --cluster del-node 127.0.0.1:7000 node-id-7001 to remove the node.

4
Verify the cluster nodes after changes
Use the Redis CLI command redis-cli --cluster nodes with the cluster node 127.0.0.1:7000 to list all nodes currently in the cluster.
Redis
Hint

Use redis-cli --cluster nodes 127.0.0.1:7000 to see the current cluster nodes.

Practice

(1/5)
1. What is the primary purpose of adding nodes to a Redis cluster?
easy
A. To increase the cluster's capacity and distribute data
B. To delete all data from the cluster
C. To backup the cluster data
D. To change the Redis version on all nodes

Solution

  1. Step 1: Understand what adding nodes means

    Adding nodes means increasing the number of servers in the cluster to share the data load.
  2. Step 2: Identify the effect of adding nodes

    More nodes mean more capacity and better data distribution across the cluster.
  3. Final Answer:

    To increase the cluster's capacity and distribute data -> Option A
  4. Quick Check:

    Adding nodes = More capacity and distribution [OK]
Hint: Adding nodes grows cluster capacity and data spread [OK]
Common Mistakes:
  • Thinking adding nodes deletes data
  • Confusing adding nodes with backup
  • Assuming adding nodes upgrades Redis version
2. Which of the following is the correct syntax to add a node to a Redis cluster using redis-cli?
easy
A. redis-cli --cluster add-node :<port> :<port>
B. redis-cli --cluster remove-node :<port>
C. redis-cli --cluster create-node :<port>
D. redis-cli --cluster add :<port>

Solution

  1. Step 1: Recall the command to add a node

    The correct command uses --cluster add-node followed by the new node and an existing node in the cluster.
  2. Step 2: Match the syntax

    redis-cli --cluster add-node :<port> :<port> matches the correct syntax: redis-cli --cluster add-node new-node existing-node.
  3. Final Answer:

    redis-cli --cluster add-node <new-node-ip>:<port> <existing-node-ip>:<port> -> Option A
  4. Quick Check:

    Correct add-node syntax = redis-cli --cluster add-node :<port> :<port> [OK]
Hint: Add node command uses --cluster add-node with new and existing nodes [OK]
Common Mistakes:
  • Using remove-node instead of add-node
  • Using create-node which does not exist
  • Omitting existing node IP in command
3. Given the command redis-cli --cluster del-node 192.168.1.5:7000 07c37dfeb2352e03a5a1e1f3a2f8b9a1f2e3d4c5, what will happen?
medium
A. A new node will be added at 192.168.1.5:7000
B. The node at 192.168.1.5:7000 will be removed from the cluster
C. The cluster will be created with the given node ID
D. The command will fail due to wrong syntax

Solution

  1. Step 1: Understand the del-node command

    The command redis-cli --cluster del-node removes a node from the cluster using its IP and node ID.
  2. Step 2: Analyze the given command

    The command specifies the node IP and the node ID, so it will remove that node from the cluster.
  3. Final Answer:

    The node at 192.168.1.5:7000 will be removed from the cluster -> Option B
  4. Quick Check:

    del-node removes specified node [OK]
Hint: del-node removes node by IP and node ID [OK]
Common Mistakes:
  • Confusing del-node with add-node
  • Thinking it adds a node
  • Assuming command syntax is incorrect
4. You run redis-cli --cluster add-node 192.168.1.10:7003 192.168.1.11:7000 but get an error. What is the most likely cause?
medium
A. The new node is already part of the cluster
B. The existing node IP is incorrect
C. The command should be --cluster del-node instead
D. Redis server is not running on the new node

Solution

  1. Step 1: Check prerequisites for adding a node

    The new node must be running Redis and reachable for the add-node command to succeed.
  2. Step 2: Identify common causes of add-node failure

    If Redis is not running on the new node, the command will fail because it cannot connect.
  3. Final Answer:

    Redis server is not running on the new node -> Option D
  4. Quick Check:

    New node must run Redis to add [OK]
Hint: New node must be running Redis before adding [OK]
Common Mistakes:
  • Assuming IP typo without checking server status
  • Confusing add-node with del-node command
  • Ignoring that Redis must run on new node
5. You want to remove a node from a Redis cluster but keep its data safe. Which sequence of commands should you use?
hard
A. Use redis-cli --cluster del-node then backup data manually
B. Directly stop the Redis server on the node and remove it
C. Use redis-cli --cluster reshard to move slots, then redis-cli --cluster del-node
D. Use redis-cli --cluster add-node to replace the node

Solution

  1. Step 1: Understand data safety when removing nodes

    Removing a node without moving its data causes data loss.
  2. Step 2: Use reshard to move data slots

    Resharding moves the data slots from the node to be removed to other nodes safely.
  3. Step 3: Remove the node after resharding

    After data is moved, del-node safely removes the node without data loss.
  4. Final Answer:

    Use redis-cli --cluster reshard to move slots, then redis-cli --cluster del-node -> Option C
  5. Quick Check:

    Reshard then del-node = safe removal [OK]
Hint: Reshard slots before removing node to keep data safe [OK]
Common Mistakes:
  • Removing node without moving data first
  • Stopping server directly causing data loss
  • Confusing add-node with removal process
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard