標簽(空格分隔): Redis
[TOC]
環境
- CentOS版本:CentOS 6.5
- 主機IP:192.168.6.105
注意事項
安裝 GCC 編譯工具 不然會有編譯不過的問題
yum install -y gcc g++ gcc-c++ make
集群搭建
安裝Redis
cd /home/es
wget http://download.redis.io/releases/redis-4.0.2.tar.gz
tar -xzvf redis-4.0.2.tar.gz
cd redis-4.0.2
make
出現如下信息

image_1busm5igk1bs819nv1aurbjofa59.png-18.5kB
執行
make test
看到如下信息,說明編譯成功

image_1busoeeu4118tdej1tq8hhcsng16.png-28.9kB
節點配置
1、在/home/es/redis-4.0.2
目錄下創建cluster
目錄
cd /home/es/redis-4.0.2
mkdir cluster
2、在cluster
目錄下,創建名為7001、7002、7003、7004、7005、7006
的目錄
cd cluster/
mkdir 7001 7002 7003 7004 7005 7006
3、在每個目錄下分別新建配置文件,把如下 redis.conf 配置 內容粘貼進去
vi 7001/redis.conf
vi 7002/redis.conf
vi 7003/redis.conf
vi 7004/redis.conf
vi 7005/redis.conf
vi 7006/redis.conf
redis.conf 配置
#端口,每個節點端口要不一致
port 7001
#默認ip為127.0.0.1,需要改為本機ip,否則創建集群時無法訪問對應的端口,無法創建集群
bind 192.168.6.105
#redis后臺運行
daemonize yes
#pidfile文件
pidfile /var/run/redis_7001.pid
#開啟集群
cluster-enabled yes
#集群的配置,配置文件首次啟動自動生成
cluster-config-file nodes_7001.conf
#aof日志開啟,有需要就開啟,它會每次寫操作都記錄一條日志
appendonly yes
啟動各節點
cd /home/es/redis-4.0.2
for((i=1;i<=6;i++)); do src/redis-server cluster/700$i/redis.conf; done
檢查服務
ps -ef | grep redis //redis是否啟動成功
netstat -tnlp | grep redis //監聽redis端口

image_1busv670tur4tc81kj2kjg133f9.png-69.9kB
創建集群
安裝依賴Ruby環境
1.安裝curl
sudo yum install curl
2. 安裝RVM
curl -L get.rvm.io | bash -s stable
source /usr/local/rvm/scripts/rvm
3. 查看rvm庫中已知的ruby版本
rvm list known
4. 安裝一個ruby版本
rvm install 2.4.1
5. 查看Ruby版本
ruby -v
6. 安裝Redis庫
gem install redis

image_1buum1gfp1hc116e1kti1j682r4m.png-5.3kB

image_1buunbneeg2o3dvcu6pmrq6513.png-13.1kB
創建集群
注意:在任意一臺上運行 不要在每臺機器上都運行,一臺就夠了
Redis 官方提供了redis-trib.rb
這個工具,就在解壓目錄的 src
目錄中
cd /home/es/redis-4.0.2
# 創建集群,集群6個節點,3主3從
src/redis-trib.rb create --replicas 1 192.168.6.105:7001 192.168.6.105:7002 192.168.6.105:7003 192.168.6.105:7004 192.168.6.105:7005 192.168.6.105:7006
出現如下內容:

image_1buuqfc2ajrt1h3dilj11r13591g.png-51.5kB
輸入
yes

image_1buuqgkaujdtgaeu77bppe11t.png-60.9kB
安裝完成
關閉集群
pkill redis
集群驗證

image_1buuqn4pp18bs1g3118k810easvg2q.png-13kB