redis集群中至少應該有三個節點。要保證集群的高可用,需要每個節點有乙個備份機。
redis集群至少需要6臺伺服器。
搭建偽分布式。可以使用一台虛擬機器執行6個redis例項。需要修改redis的埠號7001-7006
1.在redis同級目錄,建立redis-cluster目錄,用來放6個redis例項
2.複製redis目錄下的bin到redis-cluster,(注意要刪除持久化檔案dump.rdb,保證redis乾淨)
cp redis/bin/ redis-cluster/redis01 -r
3.修改redis.conf配置檔案裡的埠號,以及放開cluster-enabled yes的#號注釋
4.再在這個redis01基礎上,複製另外5份,並修改埠號7002-7006
5.建立批處理檔案vim start-all.sh,編輯批處理內容
vim start-all.sh
cd redis01
./redis-server redis.conf
cd ..
cd redis02
./redis-server redis.conf
cd ..
cd redis03
./redis-server redis.conf
cd ..
cd redis04
./redis-server redis.conf
cd ..
cd redis05
./redis-server redis.conf
cd ..
cd redis06
./redis-server redis.conf
cd ..
6.給start-all.sh加可執行許可權,然後啟動批處理
1.將redis-3.0.0原始碼裡的ruby指令碼複製到redis-cluster資料夾
cp /usr/local/redis-3.0.0/src/redis-trib.rb /usr/local/redis-cluster/
2.安裝ruby
yum install ruby
yum install rubygems
3.安裝ruby指令碼執行所需要的包複製redis-3.0.0.gem到/usr/soft裡
安裝redis-3.0.0.gem
gem install /usr/soft/redis-3.0.0.gem
4.搭建集群(這裡是採取不同埠偽分布式,實際搭建時注意要關閉各伺服器的防火牆)
./redis-trib.rb create --replicas 1 192.168.25.128:7001 192.168.25.128:7002 192.168.25.128:7003 192.168.25.128:7004 192.168.25.128:7005 192.168.25.128:7006
使用7001,7002.7003作為主 7004,7005,7006分別作為備
5.使用redis-cli連線集群 -c表示是連線redis集群
redis01/redis-cli -p 7002 -c
redis
集群中內建了
16384
個雜湊槽,當需要在
redis
集群中放置乙個
key-value
時,redis
先對key
使用crc16
演算法算出乙個結果,然後把結果對
16384
求餘數,這樣每個
key
都會對應乙個編號在
0-16383
之間的雜湊槽,
redis
會根據節點數量大致均等的將雜湊槽對映到不同的節點,例如:
7001: 0到5000的雜湊槽
7002: 5000到10000的雜湊槽
7003: 10001到16384的雜湊槽
然後計算key所屬的雜湊槽,放到指定的redis節點
以下就是根據不同的key計算出所屬雜湊槽後,自動連線到對應redis節點,然後存入資料
搭建redis集群
sudo apt get install git python python pip sudo pip install redis sudo pip install e git sudo pip install e git git clone ll binaries total 19m 173582...
redis集群搭建
redis集群搭建持久化保證了即使redis服務重啟不會丟失資料,因為redis服務重啟後會將硬碟上持久化的資料恢復到記憶體中,但是當redis伺服器的硬碟損壞了可能會導致資料丟失,如果通過redis的主從複製機制就可以避免這種單點故障。接下來開始redis集群的搭建。1 ruby環境2 建立集群 ...
redis集群搭建
redis集群部署文件 centos6系統 要讓集群正常工作至少需要3 個主節點,在這裡我們要建立6個 redis 節點,其中三個為主節點,三個為從節點,對應的 redis 節點的ip 和埠對應關係如下 127.0.0.1 7000 127.0.0.1 7001 127.0.0.1 7002 127...