在Debian上配置Redis哨兵模式需要以下几个步骤:
首先,确保你已经安装了Redis。如果没有安装,可以使用以下命令进行安装:
sudo apt update
sudo apt install redis-server
你需要为每个Redis实例创建一个配置文件。假设你有三个Redis实例,分别命名为redis-master
、redis-slave1
和redis-slave2
。
port 6379
cluster-enabled no
appendonly yes
port 6380
cluster-enabled no
appendonly yes
slaveof 127.0.0.1 6379
port 6381
cluster-enabled no
appendonly yes
slaveof 127.0.0.1 6379
将这三个配置文件分别保存到/etc/redis/redis-master.conf
、/etc/redis/redis-slave1.conf
和/etc/redis/redis-slave2.conf
。
使用以下命令启动每个Redis实例:
sudo redis-server /etc/redis/redis-master.conf
sudo redis-server /etc/redis/redis-slave1.conf
sudo redis-server /etc/redis/redis-slave2.conf
创建一个哨兵配置文件sentinel.conf
:
port 26379
sentinel monitor mymaster 127.0.0.1 6379 2
sentinel down-after-milliseconds mymaster 5000
sentinel failover-timeout mymaster 60000
sentinel parallel-syncs mymaster 1
将这个配置文件保存到/etc/redis/sentinel.conf
。
使用以下命令启动哨兵:
sudo redis-sentinel /etc/redis/sentinel.conf
你可以通过以下命令检查哨兵的状态:
redis-cli -p 26379 sentinel get-master-addr-by-name mymaster
这个命令应该返回主Redis实例的地址和端口,例如:
1) "127.0.0.1"
2) "6379"
你可以手动停止主Redis实例来测试故障转移:
sudo redis-cli -p 6379 shutdown
然后再次检查哨兵的状态:
redis-cli -p 26379 sentinel get-master-addr-by-name mymaster
你应该会看到一个新的主Redis实例被选举出来。
通过以上步骤,你就可以在Debian上成功配置Redis哨兵模式。