ubuntu/centos 搭建 搭建 redis 集羣

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

端口 7000,7001,7002

bind 192.168.50.156

監聽IP 其餘人能夠訪問的IP

daemonize yes

redis 後臺運行

pidfile /var/run/redis/redis-server.pid

pidfile /var/run/redis/redis_7000.pid

pidfile 對應pid 文件

cluster-enabled yes

開啓集羣

cluster-config-file nodes-7000.conf

集羣的配置 配置文件首次啓動自動生成 7000,7001,7002

cluster-node-timeout 15000

請求超時 默認15秒,可自行設置

appendonly yes

aof 日誌開啓 有須要就開啓,它會每次寫操做都記錄一條日誌

對應的 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。

相關文章
相關標籤/搜索