转载请务必注明原创地址为:http://dongkelun.com/2018/01/09/redisClusterDeployment/
服务器
CentOS
Centos 服务器初始环境配置最好先配置好,服务器时间最好配置为一致
我用的是6个服务器,一个服务器一个端口,便于配置文件的修改
首先下载redis3 到本地(需要3以后的版本,我下载的最新的版本:3.0.4)
wget http://download.redis.io/releases/redis-3.0.4.tar.gz
分别上传到每个服务器
scp -r redis-3.0.4.tar.gz redis@redis1:~/
分别在每个服务器上安装 gcc tcl ruby rubygems gem_redis
sudo yum -y install gccsudo yum -y install tclsudo yum -y install ruby rubygemssudo gem install redis --version 3.0.4
(gem_redis如果装不上,可多试几次,若是ubuntu,换源,换成taobao,建议服务器用centOS)
解压安装redis
tar -zxvf redis-3.0.4.tar.gzcd redis-3.0.4/ sudo make testsudo make install
修改配置文件redis.conf 以端口9000为例
sudo vim redis.conf port 9000pidfile /var/run/redis-9000.pid dbfilename dump-9000.rdb appendfilename "appendonly-9000.aof"cluster-config-file nodes-9000.conf cluster-enabled yes cluster-node-timeout 5000appendonly yes
然后分别在每个服务器上启动redis
src/redis-server redis.conf
查看每个端口是否成功开启
ps -aux | grep redis
结果如下:
redis 26674 1 0 Sep15 ? 00:01:21 src/redis-server *:9000 [cluster]
如果后面有[cluster] 证明开启成功
然后建立集群
src/redis-trib.rb create --replicas 1 192.168.32.195:9000 192.168.32.196:9000 192.168.32.197:9000 192.168.32.198:9000 192.168.32.199:9000 192.168.6.214:9000
(master 至少有三个 1 代表 一个master 对应一个slave)
如果下面这样就代表成功(端口 9000 )
>>> Creating cluster Connecting to node 192.168.32.195:9000: OK Connecting to node 192.168.32.196:9000: OK Connecting to node 192.168.32.197:9000: OK Connecting to node 192.168.32.198:9000: OK Connecting to node 192.168.32.199:9000: OK Connecting to node 192.168.6.214:9000: OK>>> Performing hash slots allocation on 6 nodes... Using 3 masters:192.168.32.199:9000 192.168.32.198:9000 192.168.32.197:9000 Adding replica 192.168.32.196:9000 to 192.168.32.199:9000 Adding replica 192.168.32.195:9000 to 192.168.32.198:9000 Adding replica 192.168.6.214:9000 to 192.168.32.197:9000 S: f4c625f49b6c1b073a379c41073b9ff9786f45f6 192.168.32.195:9000 replicates 20ecac926dba10a056f4d36a72bed35bbb7fcd57 S: 77e68bf6eb86d8bf6cb993b32d726e2cd4d05a54 192.168.32.196:9000 replicates 3276d09525fff0195dd366c8d05f80773d7d9af3 M: c6f4504b2ceb8bcffb682483168b8016e6f5973e 192.168.32.197:9000 slots:10923-16383 (5461 slots) master M: 20ecac926dba10a056f4d36a72bed35bbb7fcd57 192.168.32.198:9000 slots:5461-10922 (5462 slots) master M: 3276d09525fff0195dd366c8d05f80773d7d9af3 192.168.32.199:9000 slots:0-5460 (5461 slots) master S: 627c0ae61d75570dc15a03cbdb03b1a8abd56f58 192.168.6.214:9000 replicates c6f4504b2ceb8bcffb682483168b8016e6f5973e 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 192.168.32.195:9000)M: f4c625f49b6c1b073a379c41073b9ff9786f45f6 192.168.32.195:9000slots: (0 slots) master replicates 20ecac926dba10a056f4d36a72bed35bbb7fcd57M: 77e68bf6eb86d8bf6cb993b32d726e2cd4d05a54 192.168.32.196:9000slots: (0 slots) master replicates 3276d09525fff0195dd366c8d05f80773d7d9af3M: c6f4504b2ceb8bcffb682483168b8016e6f5973e 192.168.32.197:9000slots:10923-16383 (5461 slots) masterM: 20ecac926dba10a056f4d36a72bed35bbb7fcd57 192.168.32.198:9000slots:5461-10922 (5462 slots) masterM: 3276d09525fff0195dd366c8d05f80773d7d9af3 192.168.32.199:9000slots:0-5460 (5461 slots) masterM: 627c0ae61d75570dc15a03cbdb03b1a8abd56f58 192.168.6.214:9000slots: (0 slots) master replicates c6f4504b2ceb8bcffb682483168b8016e6f5973e [OK] All nodes agree about slots configuration.>>> Check for open slots...>>> Check slots coverage... [OK] All 16384 slots covered.
以集群的方式登陆(9000为例)
redis-cli -c -p 9000
查看 主从关系
$ 127.0.0.1:9000> cluster nodes baa1779a73a8d329dfc96104ac3116a24b16a681 192.168.32.199:9000 myself,master - 0 05 connected 0-5460140a8c76dfd44a6e43045d43a4d853fa330dfd42 192.168.32.198:9000 master - 01442403482170 12 connected 5461-10922c99974ae9a92ed18166d580e4d7bb438a26ad3a2 192.168.32.195:9000 slave140a8c76dfd44a6e43045d43a4d853fa330dfd42 0 1442403481669 12 connected e07467f74f81f31c024bb5626c37e550396eebe5 192.168.6.214:9000 master - 01442403481168 9 connected 10923-1638304f3bcd569fb325e77a109a530fd376eb84512ce 192.168.32.196:9000 slave baa1779a73a8d329dfc96104ac3116a24b16a681 0 1442403480667 5 connected fd383105b93797d7502a7d6bcaa77308cccf2e71 192.168.32.197:9000 slave e07467f74f81f31c024bb5626c37e550396eebe5 0 1442403482671 9 connected $127.0.0.1:9000>
作者:董可伦
链接:https://www.jianshu.com/p/e1767073ecf3
點擊查看更多內容
為 TA 點贊
評論
評論
共同學習,寫下你的評論
評論加載中...
作者其他優質文章
正在加載中
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦