1. 程式人生 > >redis叢集介紹、redis叢集搭建配置、redis叢集操作

redis叢集介紹、redis叢集搭建配置、redis叢集操作

一:redis叢集介紹

redis叢集介紹、redis叢集搭建配置、redis叢集操作
多個redis節點網路互聯,資料共享
所有的節點都是一主一從(可以是多個從),其中從不提供服務,僅作為備用
不支援同時處理多個鍵(如mset/mget),因為redis需要把鍵均勻分佈在各個節點上,併發量很高的情況下同時建立鍵值會降低效能並導致不可預測的行為。
支援線上增加、刪除節點
客戶端可以連任何一個主節點進行讀寫

二:redis叢集搭建配置

場景設定:
兩臺機器,分別開啟三個Redis服務(埠)
A機器上三個埠7000,7002,7004,全部為主
B機器上三個埠7001,7003,7005,全部為從
兩臺機器上都要編譯安裝redis,然後編輯並複製3個不同的redis.conf,分別設定不同的埠號、dir等引數,還需要增加cluster相關引數,然後分別啟動6個redis服務
redis配置檔案如下:

port 7000
bind 192.168.133.130
daemonize yes
pidfile /var/run/redis_7000.pid
dir /data/redis_data/7000
cluster-enabled yes
cluster-config-file nodes_7000.conf
cluster-node-timeout 10100
appendonly yes

安裝步驟:
安裝ruby2.2 (只需要一臺機器上執行)
yum -y groupinstall "Development Tools"
yum -y install gdbm-devel libdb4-devel libffi-devel libyaml libyaml-devel ncurses-devel openssl-devel readline-devel tcl-deve
cd /root/
mkdir -p rpmbuild/{BUILD,BUILDROOT,RPMS,SOURCES,SPECS,SRPMS}
wget

http://cache.ruby-lang.org/pub/ruby/2.2/ruby-2.2.3.tar.gz -P rpmbuild/SOURCES
wget https://raw.githubusercontent.com/tjinjin/automate-ruby-rpm/master/ruby22x.spec -P rpmbuild/SPECS
rpmbuild -bb rpmbuild/SPECS/ruby22x.spec
yum -y localinstall rpmbuild/RPMS/x86_64/ruby-2.2.3-1.el7.centos.x86_64.rpm
gem install redis
cp /usr/local/src/redis-4.0.1/src/redis-trib.rb /usr/bin/
redis-trib.rb create --replicas 1 192.168.133.130:7000 192.168.133.130:7002 192.168.133.130:7004 192.168.133.132:7001 192.168.133.132:7003 192.168.133.132:7005

三:redis叢集操作

叢集方式登陸:
redis-cli -c -h 192.168.133.130 -p 7000//-c說明以叢集的方式登入
任意一個節點都可以建立key,或者檢視key(演示)
redis-trib.rb check 192.168.133.130:7000//檢測叢集狀態
cluster nodes//列出節點
cluster info//檢視叢集資訊
cluster meet ip port //新增節點
cluster forget node_id //移除某個節點
cluster replicate node_id//將當前節點設定為指定節點的從
cluster saveconfig//儲存配置檔案