centos安裝redis3.0.0集群

這里創建6個redis節點,其中三個為主節點,三個為從節點。

redis和端口對應關系:

127.0.0.1:7000

127.0.0.1:7001

127.0.0.1:7002

從:

127.0.0.1:7003

127.0.0.1:7004

127.0.0.1:7005

步驟:

1,下載redis。官網下載3.0.0版本,之前幾的版本不支持集群模式

下載地址:http://download.redis.io/releases/redis-3.0.0.tar.gz

2:上傳服務器,解壓,編譯

tar -zxvf redis-3.0.0-rc2.tar.gz

mv redis-3.0.0-rc2.tar.gz redis3.0

cd /usr/local/redis3.0

make & make install

3:創建集群需要的目錄并拷貝redis

mkdir -p /usr/local/cluster

mkdir -p /usr/local/cluster/7000

mkdir -p /usr/local/cluster/7001

mkdir -p /usr/local/cluster/7002

mkdir -p /usr/local/cluster/7003

mkdir -p /usr/local/cluster/7004

mkdir -p /usr/local/cluster/7005

cp -rf /usr/local/redis3.0/* /usr/local/cluster/7000/

cp -rf /usr/local/redis3.0/* /usr/local/cluster/7001/

cp -rf /usr/local/redis3.0/* /usr/local/cluster/7002/

cp -rf /usr/local/redis3.0/* /usr/local/cluster/7003/

cp -rf /usr/local/redis3.0/* /usr/local/cluster/7004/

cp -rf /usr/local/redis3.0/* /usr/local/cluster/7005/

4:修改配置文件redis.conf

vi /usr/local/cluster/7000/redis.conf

##修改配置文件中的下面選項

port 7000

daemonize yes

cluster-enabled yes

cluster-config-file nodes.conf

cluster-node-timeout 5000

appendonly yes

#同樣再對其它配置文件進行修改

vi /usr/local/cluster/7001/redis.conf

vi /usr/local/cluster/7002/redis.conf

vi /usr/local/cluster/7003/redis.conf

vi /usr/local/cluster/7004/redis.conf

vi /usr/local/cluster/7005/redis.conf

##注意:不同的目錄配置不同的redis.conf中的port

5:啟動6個redis

cd /usr/local/cluster/7000/src

redis-server ../redis.conf

cd /usr/local/cluster/7001/src

redis-server ../redis.conf

cd /usr/local/cluster/7002/src

redis-server ../redis.conf

cd /usr/local/cluster/7003/src

redis-server ../redis.conf

cd /usr/local/cluster/7004/src

redis-server ../redis.conf

cd /usr/local/cluster/7005/src

redis-server ../redis.conf

##啟動之后使用命令查看redis的啟動情況ps -ef|grep redis

6,創建redis集群

cd /usr/local/redis3.0/src

./redis-trib.rb create --replicas 1 127.0.0.1:7000 127.0.0.1:7001 127.0.0.1:7002 127.0.0.1:7003 127.0.0.1:7004 127.0.0.1:7005

6.1,?yum install ruby

執行上面的命令的時候會報錯,因為是執行的的腳本,需要

錯誤內容:/usr/bin/env: ruby: No such file or directory

所以需要安裝ruby的環境,這里推薦使用 yum install ruby

如果yum無法安裝ruby,可以單獨下載ruby壓縮包,安裝!

安裝方式請點擊查看:Ruby 安裝 - Linux

6.2,yum install rubygems

然后再執行第步的創建集群命令,還會報錯,提示缺少rubygems組件

錯誤內容:

./redis-trib.rb:24:in `require': no such file to load -- rubygems (LoadError)

from ./redis-trib.rb:24

yum install rubygems

6.3,gem install redis

再次執行第步的命令,還會報錯,提示不能加載redis,是因為缺少redis的接口

錯誤內容:

/usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require': no such file to load -- redis (LoadError)

from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'

from ./redis-trib.rb:25

gem install redis

這里可能無法安裝,因為無法連接gem服務器:

[@zw_22_90 src]# gem install redis --version 3.0.0

ERROR: Could not find a valid gem 'redis' (= 3.0.0) in any repository

ERROR: While executing gem ... (Gem::RemoteFetcher::FetchError)

需要手工下載并安裝:

wget https://rubygems.global.ssl.fastly.net/gems/redis-3.2.1.gem --no-check-certificate

gem install -l ./redis-3.2.1.gem

6.4 再次執行第步的命令,正常執行

輸入yes,然后配置完成。

[@zw_22_90 src]# ./redis-trib.rb create --replicas 1 127.0.0.1:7000 127.0.0.1:7001 127.0.0.1:7002 127.0.0.1:7003 127.0.0.1:7004 127.0.0.1:7005

>>> Creating cluster

Connecting to node 127.0.0.1:7000: OK

Connecting to node 127.0.0.1:7001: OK

Connecting to node 127.0.0.1:7002: OK

Connecting to node 127.0.0.1:7003: OK

Connecting to node 127.0.0.1:7004: OK

Connecting to node 127.0.0.1:7005: OK

>>> Performing hash slots allocation on 6 nodes...

Using 3 masters:

127.0.0.1:7000

127.0.0.1:7001

127.0.0.1:7002

Adding replica 127.0.0.1:7003 to 127.0.0.1:7000

Adding replica 127.0.0.1:7004 to 127.0.0.1:7001

Adding replica 127.0.0.1:7005 to 127.0.0.1:7002

M: 2022f24d581b4a7c3342e3245c32927cbd5ec16d 127.0.0.1:7000

slots:0-5460 (5461 slots) master

M: 37b7008f80f8c21a698da8cb1f1b32db8c0c415c 127.0.0.1:7001

slots:5461-10922 (5462 slots) master

M: ac6dc5fa96e856b34c1ba4c3814394e4ebb698dd 127.0.0.1:7002

slots:10923-16383 (5461 slots) master

S: b5b76d70bbb0dbf3e7df8a38f1259e95e2054721 127.0.0.1:7003

replicates 2022f24d581b4a7c3342e3245c32927cbd5ec16d

S: 6881f8fef9c25da486f320ebf2ead39c1502db4c 127.0.0.1:7004

replicates 37b7008f80f8c21a698da8cb1f1b32db8c0c415c

S: f090526d32cced97731eef2a2e1722a7bac7d9ea 127.0.0.1:7005

replicates ac6dc5fa96e856b34c1ba4c3814394e4ebb698dd

Can I set the above configuration? (type 'yes' to accept): yes

>>> Nodes configuration updated

>>> Assign a different config epoch to each node

>>> Sending CLUSTER MEET messages to join the cluster

Waiting for the cluster to join...

>>> Performing Cluster Check (using node 127.0.0.1:7000)

M: 2022f24d581b4a7c3342e3245c32927cbd5ec16d 127.0.0.1:7000

slots:0-5460 (5461 slots) master

M: 37b7008f80f8c21a698da8cb1f1b32db8c0c415c 127.0.0.1:7001

slots:5461-10922 (5462 slots) master

M: ac6dc5fa96e856b34c1ba4c3814394e4ebb698dd 127.0.0.1:7002

slots:10923-16383 (5461 slots) master

M: b5b76d70bbb0dbf3e7df8a38f1259e95e2054721 127.0.0.1:7003

slots: (0 slots) master

replicates 2022f24d581b4a7c3342e3245c32927cbd5ec16d

M: 6881f8fef9c25da486f320ebf2ead39c1502db4c 127.0.0.1:7004

slots: (0 slots) master

replicates 37b7008f80f8c21a698da8cb1f1b32db8c0c415c

M: f090526d32cced97731eef2a2e1722a7bac7d9ea 127.0.0.1:7005

slots: (0 slots) master

replicates ac6dc5fa96e856b34c1ba4c3814394e4ebb698dd

[OK] All nodes agree about slots configuration.

>>> Check for open slots...

>>> Check slots coverage...

[OK] All 16384 slots covered.

至此redis集群即搭建成功!

7,redis-cli命令進入集群環境

[@zw_22_90 src]# redis-cli -c -p 7000

127.0.0.1:7000> quit;


相關文章:

??????? Ruby 安裝 - Linux?? ? ??

??????? PHP配置及使用redis cluster集群?

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容