操作系統版本:ubuntu12.04
redis版本:redis-3.0.1.tar.gz
以下是三臺服務器,每臺服務器包含一個master、一個slave,共6個節點。
依賴庫安裝
1、安裝ruby:
apt-get install ruby
2、安裝rubygems:
apt-get install rubygems
3、安裝gems:
apt-get install gems
4、安裝gem-redis
gem install redis
redis-cluster安裝
拷貝或下載安裝redis-3.0.1.tar.gz包解壓到/usr/local/
tar -zxvf redis-3.0.1.tar.gz
mv redis-3.0.1 redis
cd /usr/local/redis/
make
make test
redis-cluster配置
以下是一個包含了最少選項的集羣配置文件示例:
port 7000
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
appendonly yes
文件中的cluster-enabled 選項用於開實例的集羣模式,而cluster-conf-file 選項則設定了保存節點配
置文件的路徑,默認值爲nodes.conf 。
節點配置文件無須人爲修改,它由Redis 集羣在啓動時創建,並在有需要時自動進行更新。
1、讓我們進入一個新目錄,並創建六個以端口號爲名字的子目錄,稍後我們在將每個目錄中運行一個
Redis 實例:
mkdir cluster
cd cluster
mkdir 7000-master-01
mkdir 7001-slave-01
在文件夾7000-master-01、7001-slave-01 中,各創建一個redis.conf文件,文件的內容可以使用上面的示例配置文件,但記得將配置中的端口號從7000 改爲與文件夾名字相同的號碼。
2、從Redis Github 頁面的unstable 分支中取出最新的Redis 源碼,編譯出可執行文件redis-server,並將文件複製到cluster-test 文件夾,然後使用類似以下命令,在每個標籤頁中打開一個實例:
cd 7000-master-01
../redis-server ./redis.conf
構建集羣
cd /usr/local/redis/src
1、#redis-trib.rb的create子命令構建
#--replicas 則指定了爲Redis Cluster中的每個Master節點配備幾個Slave節點
#節點角色由順序決定,先master之後是slave,master端口7000,slave端口7001
./redis-trib.rb create --replicas 1 10.255.0.189:7000 10.255.0.197:7000 10.255.0.199:7000 10.255.0.189:7001 10.255.0.197:7001 10.255.0.199:7001
2、或者使用以下方式構建集羣
./redis-trib.rb create 10.255.0.189:7000 10.255.0.197:700010.255.0.199:7000
./redis-trib.rb add-node --slave 10.255.0.189:700110.255.0.197:7000
./redis-trib.rb add-node --slave10.255.0.197:7001 10.255.0.199:7000
./redis-trib.rb add-node --slave10.255.0.199:7001 10.255.0.189:7000
驗證集羣生效
cd /usr/local/redis/src
./redis-cli -h 10.255.0.197 -c -p 7000
./redis-cli -h 10.255.0.197 -c -p 7000 cluster nodes 顯示集羣中所有節點