1 環境配置:php
ubuntu16.04
redis3.0.6
2 機器:node
192.168.50.156
192.168.50.154
192.168.50.155
3 下載redis獨立文件位置:redis
http://download.redis.io/rele...ubuntu
4 安裝redis:centos
apt-get install redis-server
關鍵點:Redis-trib.rb工具實現集羣ruby
5 複製redis-trib.rb到/usr/local/bin目錄下。服務器
首先查找:find / -name redis-trib.rb
複製操做:cp /usr/share/doc/redis-tools/examples/redis-trib.rb /usr/local/bin/redis-trib.rbapp
6 建立redis節點文件工具
進入到root目錄: cd /root
建立相應的節點目錄: mkdir redis_cluster
進入到redis_cluster目錄,cd redis_cluster
建立子目錄:mkdir 7000 7001 7002
查找redis.conf文件:find / -name redis.conf
拷貝配置文件到相應的7001,7002,7000文件夾下面:
cp /etc/redis/redis.conf /root/redis_cluster/7000/redis.conf
cp /etc/redis/redis.conf /root/redis_cluster/7001/redis.conf
cp /etc/redis/redis.conf /root/redis_cluster/7002/redis.conf學習
7 修改配置文件
默認修改主日誌裏面的:
port 7000
bind 192.168.50.156
daemonize yes
pidfile /var/run/redis/redis_7000.pid
cluster-enabled yes
cluster-config-file nodes-7000.conf
cluster-node-timeout 15000
appendonly yes
對應的 7001及7002修改相應的數字
8 調整其它程序
備份機器上執行:192.168.50.154
備份機器上執行:192.168.50.155
如上調整方式,3,4,5,6,7,8 端口進行設置。
9 運行程序
主機上執行:192.168.50.156
redis-server /root/redis_cluster/7000/redis.conf
redis-server /root/redis_cluster/7001/redis.conf
redis-server /root/redis_cluster/7002/redis.conf
備份機器上執行:192.168.50.154
redis-server /root/redis_cluster/7003/redis.conf
redis-server /root/redis_cluster/7004/redis.conf
redis-server /root/redis_cluster/7005/redis.conf
備份機器上執行:192.168.50.155
redis-server /root/redis_cluster/7006/redis.conf
redis-server /root/redis_cluster/7007/redis.conf
redis-server /root/redis_cluster/7008/redis.conf
經過ps查看能夠發現以下代碼:
主機上執行:192.168.50.156:執行ps xH
1661 ? Ssl 0:00 redis-server 192.168.50.156:7000 [cluster]
1661 ? Ssl 0:00 redis-server 192.168.50.156:7000 [cluster]
1661 ? Ssl 0:00 redis-server 192.168.50.156:7000 [cluster]
1665 ? Ssl 0:00 redis-server 192.168.50.156:7001 [cluster]
1665 ? Ssl 0:00 redis-server 192.168.50.156:7001 [cluster]
1665 ? Ssl 0:00 redis-server 192.168.50.156:7001 [cluster]
1669 ? Ssl 0:00 redis-server 192.168.50.156:7002 [cluster]
1669 ? Ssl 0:00 redis-server 192.168.50.156:7002 [cluster]
1669 ? Ssl 0:00 redis-server 192.168.50.156:7002 [cluster]
備份機器上執行:192.168.50.154:執行ps xH
1544 ? Ssl 0:00 redis-server 192.168.50.154:7003 [cluster]
1544 ? Ssl 0:00 redis-server 192.168.50.154:7003 [cluster]
1544 ? Ssl 0:00 redis-server 192.168.50.154:7003 [cluster]
1548 ? Ssl 0:00 redis-server 192.168.50.154:7004 [cluster]
1548 ? Ssl 0:00 redis-server 192.168.50.154:7004 [cluster]
1548 ? Ssl 0:00 redis-server 192.168.50.154:7004 [cluster]
1552 ? Ssl 0:00 redis-server 192.168.50.154:7005 [cluster]
1552 ? Ssl 0:00 redis-server 192.168.50.154:7005 [cluster]
1552 ? Ssl 0:00 redis-server 192.168.50.154:7005 [cluster]
備份機器上執行:192.168.50.155:執行ps xH
1530 ? Ssl 0:00 redis-server 192.168.50.155:7006 [cluster]
1530 ? Ssl 0:00 redis-server 192.168.50.155:7006 [cluster]
1530 ? Ssl 0:00 redis-server 192.168.50.155:7006 [cluster]
1534 ? Ssl 0:00 redis-server 192.168.50.155:7007 [cluster]
1534 ? Ssl 0:00 redis-server 192.168.50.155:7007 [cluster]
1534 ? Ssl 0:00 redis-server 192.168.50.155:7007 [cluster]
1538 ? Ssl 0:00 redis-server 192.168.50.155:7008 [cluster]
1538 ? Ssl 0:00 redis-server 192.168.50.155:7008 [cluster]
1538 ? Ssl 0:00 redis-server 192.168.50.155:7008 [cluster]
10 建立集羣【單獨主服務器操做便可】
redis官方提供建立集羣工具 redis-trib.rb工具,默認這個工具是在工具箱內,在上面的第五步驟中,咱們已經複製到/usr/local/bin下,也就意味者能夠全局執行這個命令了。
建立集羣命令:
redis-trib.rb create –replicas 1 192.168.50.156:7000 192.168.50.156:7001 192.168.50.156:7002 192.168.50.154:7003 192.168.50.154:7004 192.168.50.154:7005 192.168.50.155:7006 192.168.50.155:7007 192.168.50.155:7008
發現環境須要ruby:
centos下安裝方案:
yum -y install ruby ruby-devel rubygems rpm-build
gem install redis
ubuntu16.04 下安裝方案:
apt-get install ruby ruby-dev rubygems rpm-build -y
apt-get install ruby ruby-dev rubygems -y
若是:gem install redis 很差用,能夠切換到淘寶源:
gem sources -a https://ruby.taobao.org/
而後再次執行gem install redis便可。
11 驗證集羣
分別鏈接3臺服務器:
鏈接方式以下:
第一臺機器:
redis-cli -h 192.168.50.156 -c -p 7002
說明:加參數 -C 可鏈接到集羣,由於上面 redis.conf 將 bind 改成了ip地址,因此 -h 參數不能夠省略。
第二臺機器:
redis-cli -h 192.168.50.154 -c -p 7003
第三臺機器:
redis-cli -h 192.168.50.155 -c -p 7008
分別設置及讀取,說明。說明集羣正常工做。
驗證效果:
設置數據:
root@ubuntu:~# redis-cli -h 192.168.50.156 -c -p 7002
192.168.50.156:7002> set hello world
-> Redirected to slot [866] located at 192.168.50.156:7000
OK
192.168.50.156:7000>
獲取數據:
root@ubuntu:~# redis-cli -h 192.168.50.154 -c -p 7004
192.168.50.154:7004> get hello
-> Redirected to slot [866] located at 192.168.50.156:7000
"world"
192.168.50.156:7000>
著做權歸做者全部。商業轉載請聯繫做者得到受權,非商業轉載請註明出處。互聯網+時代,時刻要保持學習,攜手千鋒PHP,Dream It Possible。