Redis集群簡單搭建

介紹安裝環(huán)境與版本

用兩臺虛擬機(jī)模擬6個節(jié)點,一臺機(jī)器3個節(jié)點,創(chuàng)建出3 master、3 salve 環(huán)境。

redis 采用 redis-3.2.4 版本。

兩臺虛擬機(jī)都是 CentOS,一臺 CentOS6.5 (IP:192.168.174.128),一臺 CentOS6.5(IP:192.168.174.129)

安裝過程 :

  1. 下載并解壓 :
    cd /usr/local/src
    wget http://download.redis.io/releases/redis-3.2.4.tar.gz
    tar -zxvf redis-3.2.4.tar.gz
  2. 編譯安裝
    cd redis-3.2.4

安裝到 /usr/local/redis 目錄下

make && make PREFIX=/usr/local/redis install

順便將 redis-trib.rb 復(fù)制到 /usr/local/bin 目錄下

cd src
cp redis-trib.rb /usr/local/bin/

  1. 創(chuàng)建 Redis 節(jié)點
    首先在 192.168.174.128 機(jī)器上 /usr/local/redis/ 目錄下創(chuàng)建 redis_cluster 目錄;
    mkdir redis_cluster  
    在 redis_cluster 目錄下,創(chuàng)建名為7000、7001、7002的目錄,并將 redis.conf 拷貝到這三個目錄中

mkdir 7000 7001 7002
cp /usr/local/src/redis-3.2.4/redis.conf /usr/local/redis/redis_cluster/7000
cp /usr/local/src/redis-3.2.4/redis.conf /usr/local/redis/redis_cluster/7001
cp /usr/local/src/redis-3.2.4/redis.conf /usr/local/redis/redis_cluster/7002

  1. 分別修改這三個配置文件,修改如下內(nèi)容 :
    port 7000 //端口7000,7001,7002
    bind 本機(jī)ip(192.168.174.128) //默認(rèn)ip為127.0.0.1 需要改為其他節(jié)點機(jī)器可訪問的ip 否則創(chuàng)建集群時無法訪問對應(yīng)的端口,無法創(chuàng)建集群
    daemonize yes //redis后臺運行
    pidfile /var/run/redis_7000.pid //pidfile文件對應(yīng)7000,7001,7002
    cluster-enabled yes //開啟集群 把注釋#去掉
    cluster-config-file nodes_7000.conf //集群的配置 配置文件首次啟動自動生成 7000,7001,7002
    cluster-node-timeout 15000 //請求超時 默認(rèn)15秒,可自行設(shè)置
    appendonly yes //aof日志開啟 有需要就開啟,它會每次寫操作都記錄一條日志

接著在另外一臺機(jī)器上(192.168.174.129), 重復(fù)以上三步,只是把目錄改為7003、7004、7005,對應(yīng)的配置文件也按照這個規(guī)則修改即可

  1. 啟動各個節(jié)點

第一臺機(jī)器上執(zhí)行
/usr/local/redis/bin/redis-server /usr/local/redis/redis_cluster/7000/redis.conf
/usr/local/redis/bin/redis-server /usr/local/redis/redis_cluster/7001/redis.conf
/usr/local/redis/bin/redis-server /usr/local/redis/redis_cluster/7002/redis.conf

另外一臺機(jī)器上執(zhí)行
/usr/local/redis/bin/redis-server /usr/local/redis/redis_cluster/7003/redis.conf
/usr/local/redis/bin/redis-server /usr/local/redis/redis_cluster/7004/redis.conf
/usr/local/redis/bin/redis-server /usr/local/redis/redis_cluster/7005/redis.conf

  1. 檢查 redis 啟動情況

一臺機(jī)器
ps -ef | grep redis

root 61020 1 0 02:14 ? 00:00:01 redis-server 192.168.174.128:7000 [cluster]
root 61024 1 0 02:14 ? 00:00:01 redis-server 192.168.174.128:7001 [cluster]
root 61029 1 0 02:14 ? 00:00:01 redis-server 192.168.174.128:7002 [cluster]

netstat -tnlp | grep redis
tcp 0 0 192.168.174.128:17000 0.0.0.0:* LISTEN 61020/redis-server
tcp 0 0 192.168.174.128:17001 0.0.0.0:* LISTEN 61024/redis-server
tcp 0 0 192.168.174.128:17002 0.0.0.0:* LISTEN 61029/redis-server
tcp 0 0 192.168.174.128:7000 0.0.0.0:* LISTEN 61020/redis-server
tcp 0 0 192.168.174.128:7001 0.0.0.0:* LISTEN 61024/redis-server
tcp 0 0 192.168.174.128:7002 0.0.0.0:* LISTEN 61029/redis-server
......

另外一臺機(jī)器

ps -ef | grep redis
root 9957 1 0 02:32 ? 00:00:01 redis-server 192.168.174.129:7003 [cluster]
root 9964 1 0 02:32 ? 00:00:01 redis-server 192.168.174.129:7004 [cluster]
root 9971 1 0 02:32 ? 00:00:01 redis-server 192.168.174.129:7005 [cluster]
root 10065 4744 0 02:38 pts/0 00:00:00 grep --color=auto redis
netstat -tlnp | grep redis
tcp 0 0 192.168.174.129:17003 0.0.0.0:* LISTEN 9957/redis-server 1
tcp 0 0 192.168.174.129:17004 0.0.0.0:* LISTEN 9964/redis-server 1
tcp 0 0 192.168.174.129:17005 0.0.0.0:* LISTEN 9971/redis-server 1
tcp 0 0 192.168.174.129:7003 0.0.0.0:* LISTEN 9957/redis-server 1
tcp 0 0 192.168.174.129:7004 0.0.0.0:* LISTEN 9964/redis-server 1
tcp 0 0 192.168.174.129:7005 0.0.0.0:* LISTEN 9971/redis-server 1
......

7.創(chuàng)建集群

Redis 官方提供了 redis-trib.rb 這個工具,就在解壓目錄的 src 目錄中,第三步中已將它復(fù)制到 /usr/local/bin 目錄中,可以直接在命令行中使用了。使用下面這個命令即可完成安裝。

redis-trib.rb create --replicas 1 192.168.174.128:7000 192.168.174.128:7001 192.168.174.128:7002 192.168.174.129:7003 192.168.174.129:7004 192.168.174.129:7005
其中,前三個 ip:port 為第一臺機(jī)器的節(jié)點,剩下三個為第二臺機(jī)器。

如果出錯的話 :

1.png

這個工具是用 ruby 實現(xiàn)的,所以需要安裝 ruby。安裝命令如下:
yum -y install ruby ruby-devel rubygems rpm-build
gem install redis
之后再運行 redis-trib.rb 命令,會出現(xiàn)如下提示:


TXK%7}D582D8.png

輸入 yes 即可,然后出現(xiàn)如下內(nèi)容,說明安裝成功。

  1. 集群驗證
    在第一臺機(jī)器上連接集群的7000端口的節(jié)點,在另外一臺連接7003節(jié)點,連接方式為 redis-cli -h 192.168.174.128 -c -p 7000 ,加參數(shù) -C 可連接到集群,因為上面 redis.conf 將 bind 改為了ip地址,所以 -h 參數(shù)不可以省略。
    在7000節(jié)點執(zhí)行命令 set yue00er yue00er , 執(zhí)行結(jié)果如下:
3.png

然后在另外一臺7003端口,查看 key 為 yue00er 的內(nèi)容, get yue00er ,執(zhí)行結(jié)果如下:

4.png

說明集群運作正常。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容