Windows環(huán)境搭建Redis(主從、哨兵、分片)集群
主從模式
下載地址
下載zip包解壓即可使用
https://github.com/MicrosoftArchive/redis/releases
redis下載
解壓后修改文件夾名稱為6379_master,然后復(fù)制兩個分別改名為6380_slave1和6381_slave2
redis目錄
修改主從配置文件
修改 6380_slave1的配置文件redis.windows,將端口改為6380,并配置master的ip和端口
redis端口修改
從節(jié)點配置
修改 6381_slave1的配置文件redis.windows,將端口改為6381,并配置master的ip和端口
redis端口修改
從節(jié)點配置
安裝redis為windows服務(wù)
切換到6379_master目錄,然后執(zhí)行
redis-server --service-install redis.windows.conf --service-name
Redis6379
安裝redis服務(wù)
再切換到6380_slave1目錄執(zhí)行
redis-server --service-install redis.windows.conf --service-name
Redis6380
再切換到6381_slaves2目錄執(zhí)行
redis-server --service-install redis.windows.conf --service-name
Redis6381
全部安裝完成后雙擊每個服務(wù)點擊啟動
啟動服務(wù)
查看主從狀態(tài)
雙擊6379_master目錄下的redis-cli.exe執(zhí)行命令
info replication
主從狀態(tài)
切換到從庫查看狀態(tài)
redis-cli.exe -p 6380
info replication
主從狀態(tài)
測試主從
使用redis客戶端在主節(jié)點插入一個key,兩個從節(jié)點會自定同步過來
測試主從同步
哨兵模式
在上面主從模式的基礎(chǔ)上,分別在文件夾6379_master、6380_slave1、6381_slaves2中添加一個哨兵的配置文件sentinel.conf,配置文件內(nèi)容如下
增加哨兵配置文件
6379_master的sentinel.conf:
#哨兵運(yùn)行的端口
port 32523
sentinel monitor testmaster 127.0.0.1 6379 3
sentinel down-after-milliseconds testmaster 3000
sentinel parallel-syncs testmaster 1
sentinel failover-timeout testmaster 10000
6380_slave1的sentinel.conf:
port 32524
sentinel monitor testmaster 127.0.0.1 6380 3
sentinel down-after-milliseconds testmaster 3000
sentinel parallel-syncs testmaster 1
sentinel failover-timeout testmaster 10000
6381_slave2的sentinel.conf:
port 32525
sentinel monitor testmaster 127.0.0.1 6381 3
sentinel down-after-milliseconds testmaster 3000
sentinel parallel-syncs testmaster 1
sentinel failover-timeout testmaster 10000
安裝哨兵為windows服務(wù)
安裝6379_master哨兵
sc create RedisSentinel6379 binpath= "\"D:\redis\6379_master\redis-server.exe\" --service-run sentinel.conf --sentinel --loglevel verbose" start= auto
安裝6380_slave1哨兵
sc create RedisSentinel6380 binpath=
"\"D:\redis\6380_slave1\redis-server.exe\" --service-run sentinel.conf
--sentinel --loglevel verbose" start= auto
安裝6381_slaves2哨兵
sc create RedisSentinel6381 binpath=
"\"D:\redis\6381_slave2\redis-server.exe\" --service-run sentinel.conf
--sentinel --loglevel verbose" start= auto
安裝完成雙擊啟動哨兵服務(wù)
哨兵服務(wù)
查看哨兵狀態(tài)
redis-cli.exe -p 32523
哨兵狀態(tài)
測試哨兵模式
手動將redis6379服務(wù)停止
停止主節(jié)點
在查看哨兵信息發(fā)現(xiàn)6381已經(jīng)提升為主節(jié)點
redis-cli.exe -p 32523
主節(jié)點切換
分片集群
資源準(zhǔn)備
除了redis安裝包外還需下載:
Ruby安裝包:
https://rubyinstaller.org/downloads/
ruby下載
Ruby下redis的驅(qū)動:
https://rubygems.org/gems/redis/versions/3.2.2
redis驅(qū)動
創(chuàng)建Redis集群的ruby腳本redis-trib.rb
https://raw.githubusercontent.com/MSOpenTech/redis/3.0/src/redis-trib.rb
redis配置文件修改
復(fù)制六個節(jié)點并重命名為端口號
集群節(jié)點
修改Redis配置文件
#運(yùn)行的端口
port 6380
#開啟集群
cluster-enabled yes
#aof日志
appendonly yes
cluster-config-file nodes-6380.conf
六個節(jié)點的配置文件都要改,唯一不同的就是端口號
安裝redis
分別安裝六個redis實例
redis-server --service-install redis.windows.conf --service-name
Redis6380
redis-server --service-install redis.windows.conf --service-name
Redis6381
redis-server --service-install redis.windows.conf --service-name
Redis6382
redis-server --service-install redis.windows.conf --service-name
Redis6383
redis-server --service-install redis.windows.conf --service-name
Redis6384
redis-server --service-install redis.windows.conf --service-name
Redis6385
安裝完成后啟動服務(wù)
集群服務(wù)
安裝Ruby
一直下一步就行
ruby安裝
安裝Ruby下redis驅(qū)動
將下載的redis-3.2.2.gem復(fù)制到ruby安裝目錄
驅(qū)動
執(zhí)行安裝命令
gem install --local C:\Ruby31-x64\redis-3.2.2.gem
安裝驅(qū)動
使用redis-trib.rb來創(chuàng)建Redis集群
redis-trib.rb create --replicas 1 127.0.0.1:6380 127.0.0.1:6381
127.0.0.1:6382 127.0.0.1:6383 127.0.0.1:6384 127.0.0.1:6385
執(zhí)行完命令要輸入yes
啟動redis集群
命令
檢查集群
redis-trib.rb check 127.0.0.1:6380
檢查集群狀態(tài)
查看集群節(jié)點
redis-cli.exe -h 127.0.0.1 -p 6380
cluster nodes
查看集群節(jié)點