Windows环境下搭建Redis集群
Windows環境下搭建Redis集群
- 前言
- 一、準備工作
- 1.1.Redis下載
- 1.1.1.下載
- 1.1.2.解壓
- 1.2.Redis集群腳本下載
- 1.2.1.下載
- 1.2.2.解壓
- 1.3.Ruby下載
- 1.3.1.下載
- 1.4.Ruby驅動下載
- 1.4.1.下載
- 二、配置安裝
- 2.1.Redis配置與安裝
- 2.1.1.配置
- 2.1.2.安裝
- 2.2.Ruby安裝
- 2.2.1.安裝
- 2.3.Ruby驅動安裝
- 2.3.1.安裝
- 2.4.集群腳本安裝
- 2.4.1.安裝
- 三、集群測試
- 3.1.常用命令
- 3.2.客戶端連接Redis
- 3.2.1.客戶端連接操作
- 3.2.2.客戶端數據測試
- 3.2.3.客戶端連接快捷方式
- 總結
前言
純干貨,windows下搭建Redis集群,所以就不啰嗦,直接上就對了:
額…還是啰嗦幾句吧…為什么要在Windows環境搭建Redis集群呢?因為適合我這種貧窮,沒有自己的服務器,又有測試連接的需求,又嫌棄起個集群還要打開虛擬機太麻煩…就喜歡傻瓜式雙擊當場啟動成功。如果你跟我一樣,那來吧~
一、準備工作
Redis集群創建需要下載安裝以下主要幾個部件:
| 1 | Redis-x64-3.2.100.zip | Redis-windows-64-3.2.100zip包 | https://github.com/microsoftarchive/redis/releases/ |
| 2 | redis-trib.rb | Redis官方提供的創建Redis集群的ruby腳本文件 | https://github.com/microsoftarchive/redis/releases/ |
| 3 | rubyinstaller-2.3.3-x64.exe | Ruby環境可執行文件 | https://rubyinstaller.org/downloads/ |
| 4 | rubygems-3.2.2.zip | Ruby驅動zip包 | https://rubygems.org/gems/redis/versions/3.2.2 |
疑問三連:怎么有的下載地址一樣?地址進去要我怎么找?要下載哪個?稍安勿躁,請待下文分解:
1.1.Redis下載
1.1.1.下載
地址:https://github.com/microsoftarchive/redis/releases/
(1)下載頁進來選擇3.2.100版本(別再問為啥選某個版本,問就是我喜歡新的)
(2)單擊紅色選框,下載選框下載Redis-x64-3.2.100.zpi包(下載完這個頁面先不關,下文有用)
1.1.2.解壓
(1)解壓Redis-x64-3.2.100.zpi包(選擇解壓到指定文件夾不然會散落一片驚喜,我這里指定文件夾名稱為:Redis-x64-3.2.100)
注:這里我事先創建了路徑為:D:\Redis-Cluster 的文件夾,以下的存儲安裝都在該目錄下進行,路徑自己定。
1.2.Redis集群腳本下載
1.2.1.下載
(1)依然是在1.1中的下載路徑下,單擊下載選框中的文件(腳本就在包中)
1.2.2.解壓
(1)解壓到路徑:D:\Redis-Cluster 下
(2)進入:redis-win-3.2.100 > src 路徑下找到redis-trib.rb文件(這個文件就是集群腳本)
(3)拷貝redis-trib.rb文件到 Redis-x64-3.2.100 根目錄下(自此redis-win-3.2.100文件包已經沒有利用價值了,刪除了,就是這么奢侈)
1.3.Ruby下載
1.3.1.下載
地址:https://rubyinstaller.org/downloads/
(1)單擊紅色選框中內容,找到指定2.3.3-x64版本
(2)單擊下載 rubyinstaller-2.3.3-x64.exe
(3)選擇下載路路徑,這里我依然放在 D:\Redis-Cluster 文件夾下
1.4.Ruby驅動下載
1.4.1.下載
地址: https://rubygems.org/gems/redis/versions/3.2.2
(1)單擊紅色選框中內容,下載rubygems-3.2.2.zip驅動包
(2)存放在 Redis-Cluster 根目錄下備用
二、配置安裝
2.1.Redis配置與安裝
2.1.1.配置
(1)在redis路徑下新建文件夾:logs 用于存放各個實例日志(別問為啥這個路徑,自己選的)
(2)為每個實例添加配置文件,我豪氣,將啟動6個實例,所以這里需要添加6個配置文件(其實大可不必6個都附上的就改改端口號,名稱就行了,可能我是個好人,都給你提供好了copy就對了)
配置文件解析:
配置文件:redis.6380.conf
port 6380 loglevel notice logfile "D:/Redis-Cluster/Redis-x64-3.2.100/logs/redis6380_log.txt" appendonly yes appendfilename "appendonly.6380.aof" cluster-enabled yes cluster-config-file nodes.6380.conf cluster-node-timeout 15000 cluster-slave-validity-factor 10 cluster-migration-barrier 1 cluster-require-full-coverage yes配置文件:redis.6381.conf
port 6381 loglevel notice logfile "D:/Redis-Cluster/Redis-x64-3.2.100/logs/redis6381_log.txt" appendonly yes appendfilename "appendonly.6381.aof" cluster-enabled yes cluster-config-file nodes.6381.conf cluster-node-timeout 15000 cluster-slave-validity-factor 10 cluster-migration-barrier 1 cluster-require-full-coverage yes配置文件:redis.6382.conf
port 6382 loglevel notice logfile "D:/Redis-Cluster/Redis-x64-3.2.100/logs/redis6382_log.txt" appendonly yes appendfilename "appendonly.6382.aof" cluster-enabled yes cluster-config-file nodes.6382.conf cluster-node-timeout 15000 cluster-slave-validity-factor 10 cluster-migration-barrier 1 cluster-require-full-coverage yes配置文件:redis.6383.conf
port 6383 loglevel notice logfile "D:/Redis-Cluster/Redis-x64-3.2.100/logs/redis6383_log.txt" appendonly yes appendfilename "appendonly.6383.aof" cluster-enabled yes cluster-config-file nodes.6383.conf cluster-node-timeout 15000 cluster-slave-validity-factor 10 cluster-migration-barrier 1 cluster-require-full-coverage yes配置文件:redis.6384.conf
port 6384 loglevel notice logfile "D:/Redis-Cluster/Redis-x64-3.2.100/logs/redis6384_log.txt" appendonly yes appendfilename "appendonly.6384.aof" cluster-enabled yes cluster-config-file nodes.6384.conf cluster-node-timeout 15000 cluster-slave-validity-factor 10 cluster-migration-barrier 1 cluster-require-full-coverage yes配置文件:redis.6385.conf
port 6385 loglevel notice logfile "D:/Redis-Cluster/Redis-x64-3.2.100/logs/redis6385_log.txt" appendonly yes appendfilename "appendonly.6385.aof" cluster-enabled yes cluster-config-file nodes.6385.conf cluster-node-timeout 15000 cluster-slave-validity-factor 10 cluster-migration-barrier 1 cluster-require-full-coverage yes(3)新建6個txt文件,填寫以上配置信息后修改成對應配置文件名稱和文件后綴就行了,我這里放在Redis-x64-3.2.100文件夾根目錄下
2.1.2.安裝
(1)使用6個配置文件在windows中進行安裝,注冊服務。打開cmd執行以下命令。需要注意的是,如果你的文件目錄和我不一樣,記得先修改下以下命令的路徑,使其分別對應redis-server.exe與redis.xxx.conf配置文件所在路徑。
安裝注冊服務命令:
格式:[redis-server.exe全路徑] --service-install [redis.xxxx.conf配置文件全路徑] --service-name [自己取的服務名]
有朝一日你想卸載了,我也給你考慮好了這里是卸載命令,有需求者拿,安裝的就略過吧不要看錯了:
D:/Redis-Cluster/Redis-x64-3.2.100/redis-server.exe --service-uninstall D:/Redis-Cluster/Redis-x64-3.2.100/redis.6380.conf --service-name redis6380 D:/Redis-Cluster/Redis-x64-3.2.100/redis-server.exe --service-uninstall D:/Redis-Cluster/Redis-x64-3.2.100/redis.6381.conf --service-name redis6381 D:/Redis-Cluster/Redis-x64-3.2.100/redis-server.exe --service-uninstall D:/Redis-Cluster/Redis-x64-3.2.100/redis.6382.conf --service-name redis6382 D:/Redis-Cluster/Redis-x64-3.2.100/redis-server.exe --service-uninstall D:/Redis-Cluster/Redis-x64-3.2.100/redis.6383.conf --service-name redis6383 D:/Redis-Cluster/Redis-x64-3.2.100/redis-server.exe --service-uninstall D:/Redis-Cluster/Redis-x64-3.2.100/redis.6384.conf --service-name redis6384 D:/Redis-Cluster/Redis-x64-3.2.100/redis-server.exe --service-uninstall D:/Redis-Cluster/Redis-x64-3.2.100/redis.6385.conf --service-name redis6385(2)執行結果(別一頓猛拷直接執行,一條條執行,不要急)
(3)執行成功后,右鍵我的電腦打開管理,查看服務列表確認服務已經注冊
(4)雙擊服務,將6個服務啟動類型修改為手動,為了后面自己寫啟動停止腳本控制需要時在啟動,不讓它占用電腦啟動時間(這個看個人,可以不設置,我先干了,你隨意)
(5)創建啟動停止腳本(就是懶,為了方便。你也可以不創建,每次去一個個啟動,或者每次敲一遍命令。耗子尾汁~)
注:分別創建2個txt,拷貝一下命令,然后將文件分別重命名(名字自己取,開心就行),并修改文件后綴為 .bat。這里使用到NET 命令,執行有報錯的自己百度配置環境再執行
啟動服務命令
NET START redis6380 NET START redis6381 NET START redis6382 NET START redis6383 NET START redis6384 NET START redis6385關閉服務命令
NET STOP redis6380 NET STOP redis6381 NET STOP redis6382 NET STOP redis6383 NET STOP redis6384 NET STOP redis6385創建后放在自己喜歡的位置。愛誰誰,這里是放在Redis-Cluster/下
(6)啟動服務。右鍵 redis-cluster-start.bat 以管理員身份運行,咻以下就啟動了,方便得飛起(需要關閉服務同理可得…)
這里就不截圖展示啟動過程了,因為它太快了,我截不到啊…
但是我們可以刷新下服務列表看下啟動情況,從列表可以看到服務都已經啟動成功了,狀態都為:正在運行。
2.2.Ruby安裝
2.2.1.安裝
(1)雙擊可執行文件:rubyinstaller-3.0.1-1-x64.exe 勾選同意,單擊Next,自己選擇安裝路徑,勾選三個選項執行安裝
(2)安裝完畢后,打開cmd輸入以下命令,驗證是否安裝成功
出現如圖片展示的版本信息則表示安裝成功
2.3.Ruby驅動安裝
2.3.1.安裝
(1)執行以下命令進行驅動安裝(path:改成具體的驅動文件路徑)
gem install --local path/redis-3.2.2.gem2.4.集群腳本安裝
2.4.1.安裝
(1)打開cmd切換到集群腳本(即redis解壓目錄)路徑下,執行以下命令創建集群
replicas 1 表示:每個主節點至少擁有一個從節點,我們啟動了6個節點,所以這里創建的是三主三從的集群
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出現:Can I set the above configuration? (type ‘yes’ to accept): 提示,輸入:yes 回車繼續執行完畢,自此集群就創建成功了~
(2)選擇以下命令執行,再確認一遍安裝結果,出現以下信息表示已經成功,簡直完美~
三、集群測試
3.1.常用命令
(1)在cmd窗口中輸入以下命令,就可以查看redis-trib.rb能支持的操作了,可以玩一玩
redis-trib.rb help
基本操作整理如下:
| create | 創建集群 |
| check | 檢查集群 |
| info | 查看集群信息 |
| fix | 修復集群 |
| reshard | 在線遷移slot |
| rebalance | 平衡集群節點slot數量 |
| add-node | 添加新節點 |
| del-node | 刪除節點 |
| set-timeout | 設置節點超時時間 |
| call | 在集群所有節點執行 |
| import | 將外部redis數據導入集群 |
比如可以查看集群信息:
比如可以查看集群節點:
3.2.客戶端連接Redis
3.2.1.客戶端連接操作
(1)打開cmd切換到redis-cle.exe所在路徑,執行以下命令進行連接操作(這里選擇的是端口號為6380的節點連接)
命令格式:redis-cli.exe -c -p 端口號
redis-cli.exe -c -p 6380出現以下提示則表明連接成功~
3.2.2.客戶端數據測試
(1)執行 set 命令保存一條數據(提示ok表示操作成功)
(2)執行 get 命令獲取保存的數據(成功獲取,6得飛起~)
(3)既然是集群,我們新打卡一個客戶端,在另外一個節點看能不能獲取到數據(這里打開端口為6381節點)
成功獲取到數據,老鐵666~ 穩住后面還有
3.2.3.客戶端連接快捷方式
既然我們集群開啟和關閉都有快捷的 .bat 文件可以執行,那客戶端的連接也不能輸~
(1)新建txt文件,拷貝一下命令保存(放哪里自己選,開心就好~這里就只舉例6380端口,其他端口修改端口號同理可得),注意自己redis解壓路徑,和我不一樣你就修改下cd命令后的路徑
cd D:\Redis-Cluster\Redis-x64-3.2.100 redis-cli.exe -h 127.0.0.1 -c -p 6380(2)修改名稱和后綴為.bat
(3)雙擊redis-cluster-cli-6380.bat執行就可以直接連接redis了
(4)有興趣可以一個個創建客戶端連接快捷方式,雖然多了無用,但是閑著也是閑著,注意記得修改端口號啊,不要一頓復制猛如虎(這里插播一條祝福:六一快樂吧老鐵們!剛好六一)
(5)最后,強迫癥驅使我刪除剛剛創建的key(老鐵可以忽略~刪了再也不能alone 666了)
總結
<font color=#999AAA 以上就是在windows中創建redis集群的步驟,可以說很用心,步驟也很細了,也增加了一些快捷啟動方式方便操作(夸下自己)。考慮到老鐵們有探索精神,這里一些命令也做了具體闡述,包括配置信息。然后就不帶大家在程序上測試了,自己去完成吧~
總結
以上是生活随笔為你收集整理的Windows环境下搭建Redis集群的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: auto.js制作简易音乐app(二)
- 下一篇: java信息管理系统总结_java实现科