Understanding Redis Sentinel for High Availability
📖 Scenario: You are managing a Redis database that needs to stay online even if some servers fail. To do this, you want to use Redis Sentinel, which helps keep your data available and your system running smoothly.
🎯 Goal: Build a simple Redis Sentinel configuration that monitors a Redis master server and automatically handles failover to a replica if the master goes down, ensuring high availability.
📋 What You'll Learn
Create a Redis master server configuration
Create Redis replica server configuration
Set up a Redis Sentinel configuration to monitor the master
Configure Sentinel to perform automatic failover
💡 Why This Matters
🌍 Real World
Redis Sentinel is used in real systems to keep databases running without interruption, even if some servers crash.
💼 Career
Understanding Redis Sentinel is important for roles like DevOps, backend developers, and system administrators who manage reliable data services.
Progress0 / 4 steps
1
Set up Redis master server configuration
Create a Redis configuration file named redis-master.conf with the following exact content: port 6379 and bind 127.0.0.1.
Redis
Hint
Use the port directive to set the port and bind to restrict connections to localhost.
2
Set up Redis replica server configuration
Create a Redis configuration file named redis-replica.conf with port 6380, bind 127.0.0.1, and add replicaof 127.0.0.1 6379 to replicate the master.
Redis
Hint
Use replicaof to tell the replica which master to follow.
3
Configure Redis Sentinel to monitor the master
Create a Redis Sentinel configuration file named sentinel.conf with port 26379, sentinel monitor mymaster 127.0.0.1 6379 1, and sentinel down-after-milliseconds mymaster 5000.
Redis
Hint
The sentinel monitor command tells Sentinel which master to watch and how many Sentinels must agree before failover.
4
Enable automatic failover in Sentinel
Add to sentinel.conf the line sentinel failover-timeout mymaster 60000 to set failover timeout and sentinel parallel-syncs mymaster 1 to control replica sync during failover.
Redis
Hint
These settings help Sentinel manage failover timing and how replicas sync after failover.
Practice
(1/5)
1. What is the main reason Redis Sentinel provides high availability?
easy
A. It compresses data to save storage space.
B. It increases the speed of Redis queries.
C. It encrypts Redis data for security.
D. It monitors Redis servers and promotes replicas automatically on failure.
Solution
Step 1: Understand Sentinel's role in monitoring
Sentinel continuously watches Redis servers to detect if the master fails.
Step 2: Recognize automatic failover
When the master fails, Sentinel promotes a replica to master automatically to keep service running.
Final Answer:
It monitors Redis servers and promotes replicas automatically on failure. -> Option D
Quick Check:
Sentinel = Automatic failover [OK]
Hint: Sentinel watches and switches masters automatically [OK]
Common Mistakes:
Confusing Sentinel with data compression tools
Thinking Sentinel speeds up queries
Assuming Sentinel only encrypts data
2. Which of the following is the correct way to configure Redis Sentinel to monitor a master named mymaster on port 6379?
easy
A. sentinel monitor mymaster 127.0.0.1 6379 2
B. sentinel watch mymaster 127.0.0.1 6379 2
C. sentinel track mymaster 127.0.0.1 6379 2
D. sentinel check mymaster 127.0.0.1 6379 2
Solution
Step 1: Recall Sentinel configuration command
The correct command to start monitoring a master is sentinel monitor.
Step 2: Verify command syntax
The syntax is sentinel monitor <name> <ip> <port> <quorum>, matching sentinel monitor mymaster 127.0.0.1 6379 2.
Final Answer:
sentinel monitor mymaster 127.0.0.1 6379 2 -> Option A
Quick Check:
Monitor command = sentinel monitor [OK]
Hint: Use 'sentinel monitor' to watch a master server [OK]
Common Mistakes:
Using 'watch' instead of 'monitor'
Confusing 'track' or 'check' commands
Wrong command syntax order
3. Given a Redis Sentinel setup monitoring a master and two replicas, what will happen if the master server stops responding?
medium
A. Sentinel will promote one replica to master automatically.
B. Sentinel will do nothing and wait for manual restart.
C. Sentinel will shut down all Redis servers.
D. Sentinel will delete all data to prevent corruption.
Solution
Step 1: Understand Sentinel's failure detection
Sentinel detects when the master is down by monitoring its health.
Step 2: Recognize Sentinel's failover action
Upon detecting failure, Sentinel promotes a replica to master automatically to maintain availability.
Final Answer:
Sentinel will promote one replica to master automatically. -> Option A
4. You configured Redis Sentinel but it never promotes a replica after the master fails. What is the most likely cause?
medium
A. The replicas have more memory than the master.
B. The Redis version is too new for Sentinel to work.
C. Sentinel quorum is not reached due to insufficient Sentinel nodes.
D. Sentinel does not support automatic failover.
Solution
Step 1: Understand Sentinel quorum requirement
Sentinel requires a quorum (minimum number of Sentinels agreeing) to trigger failover.
Step 2: Identify cause of no failover
If quorum is not reached, Sentinel will not promote replicas automatically.
Final Answer:
Sentinel quorum is not reached due to insufficient Sentinel nodes. -> Option C
Quick Check:
Failover needs quorum [OK]
Hint: Check Sentinel quorum count if failover doesn't happen [OK]
Common Mistakes:
Blaming replica memory size
Assuming Redis version blocks Sentinel
Thinking Sentinel lacks failover feature
5. In a Redis Sentinel cluster with 5 Sentinel nodes monitoring 3 replicas and 1 master, what happens if 2 Sentinels lose network connectivity but the master fails?
hard
A. All replicas are shut down to avoid split-brain.
B. Failover proceeds because quorum of Sentinels still agree on master failure.
C. Sentinel automatically adds new nodes to replace disconnected ones.
D. Failover is blocked because any Sentinel failure stops the process.
Solution
Step 1: Calculate quorum in a 5-node Sentinel cluster
Quorum is usually a majority; with 5 nodes, quorum is 3.
Step 2: Assess failover with 2 disconnected Sentinels
3 Sentinels remain connected, so quorum is met and failover proceeds.
Step 3: Understand Sentinel behavior on partial network loss
Sentinel does not block failover if quorum is reached despite some nodes being disconnected.
Final Answer:
Failover proceeds because quorum of Sentinels still agree on master failure. -> Option B
Quick Check:
Quorum met = failover proceeds [OK]
Hint: Failover needs majority Sentinels, not all connected [OK]
Common Mistakes:
Thinking any Sentinel loss blocks failover
Assuming Sentinel auto-adds nodes
Believing replicas shut down on master failure
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.