標籤:soft 程式包 world master 輸入 資料 cli highlight targe
環境以及引用資料
1.windows server 2008 r2 enterprise (木有辦法,公司的伺服器全是如此,就這種環境搭建吧)
2.redis官方資料下載: https://redis.io/download
3.redis官方沒有提供相關的程式包,但是Microsoft Open Tech group提供並維護了相關的redis安裝包 https://github.com/MSOpenTech/redis(只是提供64位程式)
這裡說一句,很多公司的redis都是部署在linux上的,我這裡只是針對需要在window環境下搭建redis叢集做安裝部署。
安裝包下載
1.Redis 3.2 Release 版本.msi
安裝成功後,這裡安裝的是單個redis服務。找到安裝路徑,當前機器安裝在:D:\Redis
以管理員開啟控制台,將redis-cli.exe拖入其中,斷行符號,驚喜的看到,我安裝成功了,安裝部成功的夥伴們自己去找問題吧。簡單的加幾個資料
Set a test
get a
如,都成功了。
2.Ruby環境
安裝此環境的原因是因為我們需要使用Ruby Gems 中的redis-trib.rb來建立和操作叢集。
3.Ruby Gems
通過此Ruby包管理來擷取操作Redis叢集的redis-trib.rb
3.1 解壓安裝包後,點擊setup.rb安裝。
3.2 首先,為了防止被牆,我們需要把鏡像指向新的地址,開啟一個控制台
gem sources --remove https://rubygems.org/ 刪掉原來的源
gem sources -a http://gems.ruby-china.org/ 添加新源
gem sources -l 查看現有的源
gem install redis 安裝redis依賴
叢集搭建
通過上述步驟,搭建了一個Redis服務,在服務管理員中也可以看到此服務。(注意伺服器連接埠),同時我們也搭建了配置redis叢集的ruby環境。下面就是講述如何搭建redis叢集。
在官方cluster文檔中,最小叢集需要至少包含三個主節點。對於您的第一次測試,強烈建議啟動具有三個主站和三個從站的六個節點群集。
我的叢集式在此伺服器中搭建3個master+3個Slave,總共6個節點。關於資料發布的問題,後續對redis研究深入的時候,再寫文章記錄分享下。
開始時候,我們安裝了一個redis執行個體,預設連接埠是6379,準備新建立的6個節點分別是 6380,6381,6382,6383,6384,6385,然後將下載下來的壓縮包檔案都放進去,這樣我們就建立了6個節點,下面就是分別對各個節點進行配置。
在每一個檔案夾添加設定檔 redis.conf ,將配置修改為以下
port 7005cluster-enabled yescluster-config-file nodes.confcluster-node-timeout 5000appendonly yes
然後開啟redis服務,具體開啟控制台,在當前檔案夾執行
redis-server.exe redis.conf
所有服務開啟成功後如下,到此時,我們在單台伺服器上建立了6+1個redis執行個體(開始安裝的時候建立了一個redis實體)
後續部署不可能用控制台來host服務,下面介紹如何用把redis部署到服務當中,在控制台分別執行以下命令,請夥伴們注意你的服務名稱要按照自己的需求修改。我這裡直接Redis+連接埠來建立了
redis-server --service-install redis.conf --service-name redis6380
建立成功後我們看到資料庫裡面有6個服務 ,把服務啟動起來,有空的話,可以用控制台去看看對應服務是否可以正常添加刪除資料。
節點都建立好了,那麼下面的工作就是如何來建立叢集了。
建立叢集時候,我們用到了redis-trib.rb檔案
檔案在下載下來的redis包裡可能是沒有的,可以到
https://github.com/antirez/redis/tree/unstable/src 目錄下下載
之前的ruby環境就是為運行這個檔案做準備的
輸入建立叢集命令,注意,這個時候要檢查下伺服器當前的連接埠6380-6385是否已經開啟,沒有開啟的話建立會失敗的。
D:\RedisCluster\6380>redis-trib.rb create --replicas 192.168.123.90:6380 192.168.123.90:6381 192.168.123.90:6382 192.168.123.90:6383 192.168.123.90:6384 192.168.123.90:6385
叢集環境搭建好後,會出現如下介面,3master+3slave,同時我們每個節點會找到nodes.conf,這裡記錄了節點在叢集中的一些資訊,有興趣可以去分析下。
輸入yes就行了
建立成功了,16384個槽位都被覆蓋了,這裡簡單說下redis的原理,對key 做 CRC16 校正和後,按照槽位分配在不同的伺服器上。在上述資訊上,我們可以清楚的看到資料分布在那台伺服器上。
最後,我們簡單的來測試下資料的增加和擷取吧。
老樣子,在cmd視窗用redis-cli來處理資料,注意命令和非叢集相比加了一個-c
redis-cli -h 192.168.123.90 -p 6380 -c
到了這裡,怎麼能忘記我們最喜歡的一句話呢:hello,world
可以清晰的看到資料放到6382節點去了,好了,redis cluster在windows下叢集搭建就這樣了,後續我會把裡面使用到的包房後面
Windows 環境搭建Redis叢集