文章目錄
- 1. 部署劃分
- 2. 單機安裝Redis
- 3. 建立配置/資料/日志目錄
- 4. 修改配置檔案
- 5. redis啟動
- 6. 登入檢視資訊
- 7. 讀寫分離
1. 部署劃分
IP | 角色 |
192.168.92.100 | Master |
192.168.92.101 | Slave |
192.168.92.102 | Slave |
2. 單機安裝Redis
首先在在3台伺服器上分别安裝Redis單機環境
Linux環境 安裝 Redis-6.2.6 配置運作_01
3. 建立配置/資料/日志目錄
聲明:下面流程3個節點依次操作
- 建立配置目錄
mkdir /usr/local/redis/conf -p
- 建立資料目錄
mkdir /usr/local/redis/data -p
- 建立日志目錄
mkdir /usr/local/redis/log -p
4. 修改配置檔案
3個節點依次建立一個redis.conf配置檔案在conf目錄下面
vi /usr/local/redis/conf/redis.conf
主節點配置
# 放行通路IP的限制 多個用空格隔開
# 0.0.0.0 代表無限制
bind 0.0.0.0
# 背景啟動開啟
daemonize yes
# 日志存儲目錄以及日志檔案名
logfile "/usr/local/redis/log/redis.log"
# rdb資料檔案名
dbfilename dump.rdb
# aof模式開啟
appendonly no
# aof資料檔案名
appendfilename "appendonly.aof"
#rdb資料檔案和aof資料檔案存儲目錄
dir /usr/local/redis/data
# 設定密碼
requirepass 123456
# 從節點通路主節點的密碼(必須和requirepass 一緻)
masterauth 123456
#從節點隻讀模式
replica-read-only yes
2個Slave節點配置
vi /usr/local/redis/conf/redis.conf
主節點配置
# 放行通路IP的限制 多個用空格隔開
# 0.0.0.0 代表無限制
bind 0.0.0.0
# 背景啟動開啟
daemonize yes
# 日志存儲目錄以及日志檔案名
logfile "/usr/local/redis/log/redis.log"
# rdb資料檔案名
dbfilename dump.rdb
# aof模式開啟
appendonly no
# aof資料檔案名
appendfilename "appendonly.aof"
#rdb資料檔案和aof資料檔案存儲目錄
dir /usr/local/redis/data
# 設定密碼
requirepass 123456
# 從節點通路主節點的密碼(必須和requirepass 一緻)
masterauth 123456
#從節點隻讀模式
replica-read-only yes
# 從節點從屬于那個主節點
slaveof 192.168.92.100 6379
5. redis啟動
主節點
[root@bigdata01 bin]# /usr/local/redis/bin/redis-server /usr/local/redis/conf/redis.conf
[root@bigdata01 bin]# ps -ef |grep redis
root 11960 1 0 17:15 ? 00:00:00 /usr/local/redis/bin/redis-server 0.0.0.0:6379
root 11977 7237 0 17:16 pts/0 00:00:00 grep --color=auto redis
01節點
[root@bigdata02 ~]# /usr/local/redis/bin/redis-server /usr/local/redis/conf/redis.conf
[root@bigdata02 ~]# ps -ef |grep redis
root 23879 1 0 17:16 ? 00:00:00 /usr/local/redis/bin/redis-server 0.0.0.0:6379
root 23885 23847 0 17:16 pts/0 00:00:00 grep --color=auto redis
02節點
[root@bigdata03 bin]# /usr/local/redis/bin/redis-server /usr/local/redis/conf/redis.conf
[root@bigdata03 bin]# ps -ef |grep redis
root 23814 1 0 17:16 ? 00:00:00 /usr/local/redis/bin/redis-server 0.0.0.0:6379
root 23820 19247 0 17:16 pts/0 00:00:00 grep --color=auto redis
6. 登入檢視資訊
主節點資訊
[root@bigdata01 bin]# /usr/local/redis/bin/redis-cli -a 123456
Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe.
127.0.0.1:6379> info replication
# Replication
role:master
connected_slaves:2
slave0:ip=192.168.92.101,port=6379,state=online,offset=266,lag=1
slave1:ip=192.168.92.102,port=6379,state=online,offset=266,lag=1
master_failover_state:no-failover
master_replid:b1f446c9ea7c0d5e95c8c47f31bb007cea158ce8
master_replid2:0000000000000000000000000000000000000000
master_repl_offset:266
second_repl_offset:-1
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:1
repl_backlog_histlen:266
127.0.0.1:6379>
01節點資訊
[root@bigdata02 ~]# /usr/local/redis/bin/redis-cli -a 123456
Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe.
127.0.0.1:6379> info replication
# Replication
role:slave
master_host:192.168.92.100
master_port:6379
master_link_status:up
master_last_io_seconds_ago:4
master_sync_in_progress:0
slave_repl_offset:392
slave_priority:100
slave_read_only:1
connected_slaves:0
master_failover_state:no-failover
master_replid:b1f446c9ea7c0d5e95c8c47f31bb007cea158ce8
master_replid2:0000000000000000000000000000000000000000
master_repl_offset:392
second_repl_offset:-1
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:1
repl_backlog_histlen:392
127.0.0.1:6379>
02節點資訊
[root@bigdata03 bin]# /usr/local/redis/bin/redis-cli -a 123456
Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe.
127.0.0.1:6379> info replication
# Replication
role:slave
master_host:192.168.92.100
master_port:6379
master_link_status:up
master_last_io_seconds_ago:6
master_sync_in_progress:0
slave_repl_offset:448
slave_priority:100
slave_read_only:1
connected_slaves:0
master_failover_state:no-failover
master_replid:b1f446c9ea7c0d5e95c8c47f31bb007cea158ce8
master_replid2:0000000000000000000000000000000000000000
master_repl_offset:448
second_repl_offset:-1
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:15
repl_backlog_histlen:434
127.0.0.1:6379>
7. 讀寫分離
master節點 能讀能寫驗證
127.0.0.1:6379> set name zhangsan
OK
127.0.0.1:6379> get name
"zhangsan"
127.0.0.1:6379>
127.0.0.1:6379> get name
"zhangsan"
127.0.0.1:6379> set lisi
(error) ERR wrong number of arguments for 'set' command
127.0.0.1:6379>
27.0.0.1:6379> get name
"zhangsan"
127.0.0.1:6379> set name lisi
(error) READONLY You can't write against a read only replica.
127.0.0.1:6379>