Get the App
SLTechnology News&Howtos  ›  Database  › 

Redis master-slave replication structure mode, Sentinel mode

Shulou Source: shulou.com Published: 2022-06-01 09:23:09 10月03日 Update

Set temporary effect

1. Configure Slave Library

192.168.4.58:6058> info replication //View master-slave configuration information

# Replication

role:master

connected_slaves:0

master_replid:784d7d32d7f522703ca763c6a1a4bb0f8c1db591

master_replid2:0000000000000000000000000000000000000000

master_repl_offset:0

second_repl_offset:-1

repl_backlog_active:0

repl_backlog_size:1048576

repl_backlog_first_byte_offset:0

repl_backlog_histlen:0

Command line specifies master library: SLAVEOF master library IP address Port number

2. One master and one slave

192.168.4.57:6057> 192.168.4.50 6050 #Slave library configuring 57 to 50

OK

192.168.4.57:6057> INFO replication

# Replication

role:slave

master_host:192.168.4.50

master_port:6050

master_link_status:up

master_last_io_seconds_ago:8

master_sync_in_progress:0

slave_repl_offset:56

client test

[root@51 ~]# redis-cli -c -h 192.168.4.50 -p 6050

192.168.4.50:6050> set name bob

OK

Master:

192.168.4.50:6050> keys *

1)"name"

2)192.168.4.57:6057> keys *

3)1) "name"

3. One master with multiple slaves (add 58 to the above)

192.168.4.58:6058> SLAVEOF 192.168.4.50 6050

OK

192.168.4.58:6058> info replication

# Replication

role:slave

master_host:192.168.4.50

...............

192.168.4.58:6058> keys *

1) "age"

2) "name"

4. Master slave (58 configured to become slave library of 57)

Just when we set 58 to 50 from the library, we need redis from Kai 58

[root@58 ~]# redis-cli -h 192.168.4.58 -p 6058 shutdown

[root@58 ~]# redis_6379 start

[root@58 ~]# redis-cli -h 192.168.4.58 -p 6058

192.168.4.58:6058> info replication

# Replication

role:master

connected_slaves:0

............

192.168.4.58:6058> SLAVEOF 192.168.4.57 6057

OK

192.168.4.58:6058> info replication

# Replication

role:slave

master_host:192.168.4.57

master_port:6057

Testing:

192.168.4.50(Master Library Slave Library 57)

192.168.4.50:6050> keys *

1) "age"

2) "name"

192.168.4.50:6050> set sex gral

OK

192.168.4.57(It is the slave library of 50 and the master library of 58)

192.168.4.57:6057> keys *

1) "sex"

2) "name"

3) "age"

192.168.4.58(57 from Library)

192.168.4.58:6058> keys *

1) "age"

2) "name"

3) "sex"

Reverse guest master-manually set slave to master after master outage

192.168.4.50 After downtime, manually set 57 as the master library

192.168.4.57:6057> SLAVEOF no one //Set as main library

OK

The above settings are temporary, restart invalid

Configure permanent master-slave synchronization with authentication (synchronization authentication requires entering the master library password)

1. set a password

[root@50 ~]# vim /etc/redis/6379.conf

501 requirepass 123456

8 REDISPORT="6050"

43 $CLIEXEC -h 192.168.4.50 -p $REDISPORT -a 123546 shutdown

2. from library settings

[root@57 redis]# vim /etc/redis/6379.conf

282 slaveof 192.168.4.50 6050

289 masterauth 123456

[root@57 redis]# redis-cli -h 192.168.4.57 -p 6057

192.168.4.57:6057> INFO replication

# Replication

role:slave

master_host:192.168.4.50

master_port:6050

master_link_status:up

...................................

Configure master-slave (configure 57 slave libraries permanently)

[root@58 ~]# redis-cli -h 192.168.4.58 -p 6058 shutdown

[root@58 ~]# vim /etc/redis/6379.conf

282 slaveof 192.168.4.57 6057

[root@58 ~]# redis_6379 start

[root@58 ~]# redis-cli -h 192.168.4.58 -p 6058

192.168.4.58:6058> info replication

# Replication

role:slave

master_host:192.168.4.57

master_port:6057

master_link_status:up

.............

sentry mode

- When the master database is down, the slave database is automatically upgraded to the master database.

- Edit the sentinel.conf file on the slave host

- Run sentinel on slave host

1. Write a configuration file under Rebase

Format: sentinel monitor host name ip address port votes

Host Name: Custom

IP address: IP address of master host

Port: Port used by master host redis service

Number of votes: After the main database is down, the host with more than 1 votes will be upgraded to the main database.

The production environment generally does not set the connection password

50 before downtime (cancel 51 password)

[root@50 ~]# vim /etc/redis/6379.conf

#requirepass 123456

Restart redis after setup

57 link 50 code cancelled

[root@57 ~]# vim /etc/redis/6379.conf

289 #masterauth 123456

Restart redis after setup

[root@57 redis]# vim /etc/sentinel.conf

sentinel monitor 50 192.168.4.50 6050 1

Sentinel auth-pass 50 123456 If master inventory is in secret, enter

[root@57 redis]# redis-sentinel /etc/sentinel.conf

[root@57 ~]# redis-cli -h 192.168.4.57 -p 6057

192.168.4.57:6057> info replication

# Replication

role:slave

master_host:192.168.4.50

master_port:6050

50 View after downtime

192.168.4.57:6057> info replication

# Replication

role:master

connected_slaves:1

slave0:ip=192.168.4.58,port=6058,state=online,offset=10763,lag=1

.....................

Tags: Configuration host password master-slave address sentry manual file number of votes port permanent upgrade synchronization test authentication input mode anti-guest host information slogan Apple Docker Huawei Linux macOS MariaDB Microsoft MySQL NVidia OPPO Reno Shulou Tech Info vpn OPPO Reno MariaDB Xiaomi