CentOS Download: http://mirrors.aliyun.com/centos/
Redis:http://download.redis.io/releases/
CentOS 1908 Redis 5.0.7 Configure a cluster (single node)
CentOS 1908 cluster configuration Redis 5.0.7 bis (from the master copy)
- In Redis folder, copy redis.conf:
cp redis.conf redis6379.conf cp redis.conf redis6380.conf cp redis.conf redis6381.conf
- Configuring redis * .conf
- redis6379.conf:
# 注释 bind # bind 127.0.0.1 protected-mode no port 6379 daemonize yes
- redis6380.conf:
# 注释 bind # bind 127.0.0.1 protected-mode no port 6380 slaveof 127.0.0.1 6379 daemonize yes
- redis6381.conf:
# 注释 bind # bind 127.0.0.1 protected-mode no port 6381 slaveof 127.0.0.1 6379 daemonize yes
- redis6379.conf:
- In Redis folder, copy redis.conf:
cp sentinel.conf sentinel26379.conf cp sentinel.conf sentinel26380.conf cp sentinel.conf sentinel26381.conf
- Configuration sentinel26379.conf:
- sentinel.conf:
port 26379 sentinel monitor mymaster 127.0.0.1 6379 2
- sentinel26380.conf:
port 26380 sentinel monitor mymaster 127.0.0.1 6379 2
- sentinel26381.conf:
port 26381 sentinel monitor mymaster 127.0.0.1 6379 2
- sentinel.conf:
- Start the Redis (in accordance with the order from the master):
src/redis-server redis6379.conf src/redis-server redis6380.conf src/redis-server redis6381.conf
- Start Sentinel (in order from the master):
src/redis-sentinel sentinel26379.conf src/redis-sentinel sentinel26380.conf src/redis-sentinel sentinel26381.conf
- View Redis status:
- See redis 6379 (master node):
From the following Role : Master can be seen, redis 6379 master node:[root@192 redis-5.0.7]# src/redis-cli -h 127.0.0.1 -p 6379 127.0.0.1:6379> info replication # Replication role:master connected_slaves:2 slave0:ip=127.0.0.1,port=6380,state=online,offset=26140,lag=0 slave1:ip=127.0.0.1,port=6381,state=online,offset=26140,lag=1 master_replid:4333b9916945c9fc15b003ce0ff61ec7455cc0e8 master_replid2:0000000000000000000000000000000000000000 master_repl_offset:26140 second_repl_offset:-1 repl_backlog_active:1 repl_backlog_size:1048576 repl_backlog_first_byte_offset:1 repl_backlog_histlen:26140 127.0.0.1:6379>
- See redis 6380 (slave node):
From the following Role : Slave can be seen, redis 6380 from node:[root@192 redis-5.0.7]# src/redis-cli -h 127.0.0.1 -p 6380 127.0.0.1:6380> info replication # Replication role:slave master_host:127.0.0.1 master_port:6379 master_link_status:up master_last_io_seconds_ago:1 master_sync_in_progress:0 slave_repl_offset:37795 slave_priority:100 slave_read_only:1 connected_slaves:0 master_replid:4333b9916945c9fc15b003ce0ff61ec7455cc0e8 master_replid2:0000000000000000000000000000000000000000 master_repl_offset:37795 second_repl_offset:-1 repl_backlog_active:1 repl_backlog_size:1048576 repl_backlog_first_byte_offset:1 repl_backlog_histlen:37795 127.0.0.1:6380>
- See redis 6381 (slave node):
From the following Role : Slave can be seen, redis 6381 from node:[root@192 redis-5.0.7]# src/redis-cli -h 127.0.0.1 -p 6381 127.0.0.1:6381> info replication # Replication role:slave master_host:127.0.0.1 master_port:6379 master_link_status:up master_last_io_seconds_ago:1 master_sync_in_progress:0 slave_repl_offset:46230 slave_priority:100 slave_read_only:1 connected_slaves:0 master_replid:4333b9916945c9fc15b003ce0ff61ec7455cc0e8 master_replid2:0000000000000000000000000000000000000000 master_repl_offset:46230 second_repl_offset:-1 repl_backlog_active:1 repl_backlog_size:1048576 repl_backlog_first_byte_offset:1 repl_backlog_histlen:46230 127.0.0.1:6381>
- See redis 6379 (master node):
- Failover:
- Redis 6379 will be forced to stop:
[root@192 redis-5.0.7]# ps -ef | grep redis root 2703 1 0 16:18 ? 00:00:00 src/redis-server *:6379 root 2708 1 0 16:18 ? 00:00:00 src/redis-server *:6380 root 2714 1 0 16:18 ? 00:00:00 src/redis-server *:6381 root 2810 1 0 16:21 ? 00:00:00 src/redis-sentinel *:26379 [sentinel] root 2815 1 0 16:21 ? 00:00:00 src/redis-sentinel *:26380 [sentinel] root 2820 1 0 16:21 ? 00:00:00 src/redis-sentinel *:26381 [sentinel] root 51237 42180 0 16:23 pts/1 00:00:00 src/redis-cli -h 127.0.0.1 -p 6379 root 51296 51258 0 16:24 pts/2 00:00:00 src/redis-cli -h 127.0.0.1 -p 6380 root 51352 51316 0 16:25 pts/3 00:00:00 src/redis-cli -h 127.0.0.1 -p 6381 root 51412 2368 0 16:29 pts/0 00:00:00 grep --color=auto redis [root@192 redis-5.0.7]# kill -9 2703 [root@192 redis-5.0.7]#
- View from the master node:
- redis 6379 has stopped.
- See redis 6380:
From the following Role : Slave can be seen, redis 6380 from node:127.0.0.1:6380> info replication # Replication role:slave master_host:127.0.0.1 master_port:6381 master_link_status:up master_last_io_seconds_ago:0 master_sync_in_progress:0 slave_repl_offset:112137 slave_priority:100 slave_read_only:1 connected_slaves:0 master_replid:764de6af1521b0204f26d230547986bc2d629efb master_replid2:4333b9916945c9fc15b003ce0ff61ec7455cc0e8 master_repl_offset:112137 second_repl_offset:102882 repl_backlog_active:1 repl_backlog_size:1048576 repl_backlog_first_byte_offset:1 repl_backlog_histlen:112137 127.0.0.1:6380>
- View redis 6381:
From the following Role : Master can be seen, redis 6381 master node (fault generates, uses voting mechanism elections master node):127.0.0.1:6381> info replication # Replication role:master connected_slaves:1 slave0:ip=127.0.0.1,port=6380,state=online,offset=112536,lag=1 master_replid:764de6af1521b0204f26d230547986bc2d629efb master_replid2:4333b9916945c9fc15b003ce0ff61ec7455cc0e8 master_repl_offset:112669 second_repl_offset:102882 repl_backlog_active:1 repl_backlog_size:1048576 repl_backlog_first_byte_offset:1 repl_backlog_histlen:112669 127.0.0.1:6381>
- Redis 6379 will be forced to stop:
- Fault repair:
- Restart redis 6379:
src/redis-server redis6379.conf
- View redis 6379:
From the following Role : Slave can be seen, redis 6379 from the node (the main node failure recovery, converted from the node):127.0.0.1:6379> info replication # Replication role:slave master_host:127.0.0.1 master_port:6381 master_link_status:up master_last_io_seconds_ago:0 master_sync_in_progress:0 slave_repl_offset:154482 slave_priority:100 slave_read_only:1 connected_slaves:0 master_replid:764de6af1521b0204f26d230547986bc2d629efb master_replid2:0000000000000000000000000000000000000000 master_repl_offset:154482 second_repl_offset:-1 repl_backlog_active:1 repl_backlog_size:1048576 repl_backlog_first_byte_offset:146690 repl_backlog_histlen:7793 127.0.0.1:6379>
- See redis 6380:
From the following Role : Slave can be seen, redis 6380 from node:127.0.0.1:6380> info replication # Replication role:slave master_host:127.0.0.1 master_port:6381 master_link_status:up master_last_io_seconds_ago:0 master_sync_in_progress:0 slave_repl_offset:160376 slave_priority:100 slave_read_only:1 connected_slaves:0 master_replid:764de6af1521b0204f26d230547986bc2d629efb master_replid2:4333b9916945c9fc15b003ce0ff61ec7455cc0e8 master_repl_offset:160376 second_repl_offset:102882 repl_backlog_active:1 repl_backlog_size:1048576 repl_backlog_first_byte_offset:1 repl_backlog_histlen:160376 127.0.0.1:6380>
- View redis 6381:
From the following Role : Master can be seen, redis 6381 master node (fault generates, uses the primary election voting mechanism nodes, in addition to failure, the master node will remain the same):127.0.0.1:6381> info replication # Replication role:master connected_slaves:2 slave0:ip=127.0.0.1,port=6380,state=online,offset=166949,lag=1 slave1:ip=127.0.0.1,port=6379,state=online,offset=167082,lag=0 master_replid:764de6af1521b0204f26d230547986bc2d629efb master_replid2:4333b9916945c9fc15b003ce0ff61ec7455cc0e8 master_repl_offset:167082 second_repl_offset:102882 repl_backlog_active:1 repl_backlog_size:1048576 repl_backlog_first_byte_offset:1 repl_backlog_histlen:167082 127.0.0.1:6381>
- Restart redis 6379:
- Only increase modify data in the master node.