参考网址 https://blog.youkuaiyun.com/pucao_cug/article/details/69250101
https://www.cnblogs.com/EasonJim/p/7629477.html
https://www.cnblogs.com/yehaifeng/p/7738439.html
一、环境
Ubuntu16.04
redis4.0.12
ruby2.3
二、准备
替换为国内的源
因为要安装make和gcc等一些程序,需要根据源地址下载相关的东西,如果你的ubuntu16.04使用的还是国外的源,请替换成国内的源吧,否则要下载的东西几乎是下不到的。关于替换成国内的源的问题,请参考此文章:http://blog.youkuaiyun.com/pucao_cug/article/details/65449292
安装make
apt-get install make
安装gcc程序
apt-get install gcc
安装redis
下载地址:https://redis.io/download
wget http://download.redis.io/releases/redis-4.0.12.tar.gz tar xzf redis-4.0.12.tar.gz mv redis-4.0.12 /opt/redis cd /opt/redis make make install 注意:这里提示你运行make test进行测试,但是没必要执行,因为要执行该命令还依赖其他一些东西,还要安装其他东西,这里就略去了,因为不影响后面安装和启动Redis。
三、创建集群
创建文件夹
cd ~ mkdir redisdata cd redisdata mkdir 7001 7002 7003 7004 7005 7006 创建配置文件 vim 7001/redis.conf
内容如下:
port 7001
cluster-enabled yes
cluster-config-file /root/redisdata/7001/nodes.conf
cluster-node-timeout 5000
appendonly yes
bind 127.0.0.1 192.168.79.191
拷贝到其它几个文件夹,并修改加粗的内容(端口)
可以使用sed命令 sed -i 's/7001/7002/g' 7002/redis.conf #在7002/redis.conf,查找7001替换成7002, 有-i参数才可修改文件
关于sed的用法可参考 https://www.cnblogs.com/zwgblog/p/6013975.html
分别启动6台集群
(redis-server /root/redisdata/7001/redis.conf) &
(redis-server /root/redisdata/7002/redis.conf) &
(redis-server /root/redisdata/7003/redis.conf) &
(redis-server /root/redisdata/7004/redis.conf) &
(redis-server /root/redisdata/7005/redis.conf) &
(redis-server /root/redisdata/7006/redis.conf) &
创建集群--安装ruby及ruby对redis的支持
apt install ruby
gem install redis
创建集群--利用redis自带的脚本创建
cd /opt/redis/src
./redis-trib.rb create --replicas 1 192.168.79.191:7001 192.168.79.191:7002 192.168.79.191:7003 192.168.79.191:7004 192.168.79.191:7005 192.168.79.191:7006
测试集群
redis-cli -c -p 7001 #必须要 -c 参数
127.0.0.1:7001> CLUSTER info
cluster_state:ok
cluster_slots_assigned:16384
cluster_slots_ok:16384
cluster_slots_pfail:0
cluster_slots_fail:0
cluster_known_nodes:6
cluster_size:3
cluster_current_epoch:6
cluster_my_epoch:1
cluster_stats_messages_ping_sent:5510
cluster_stats_messages_pong_sent:5453
cluster_stats_messages_sent:10963
cluster_stats_messages_ping_received:5448
cluster_stats_messages_pong_received:5510
cluster_stats_messages_meet_received:5
cluster_stats_messages_received:10963
127.0.0.1:7001> CLUSTER NODES
b6d0b6e85867927cd2b801b68e1268fceac41354 127.0.0.1:7005@17005 slave da4f8e93c05c2e62b884c611e70f81bf9e25a23b 0 1546940481705 5 connected
da4f8e93c05c2e62b884c611e70f81bf9e25a23b 127.0.0.1:7003@17003 master - 0 1546940481504 3 connected 10923-16383
d907bc1ac0dc8f1580d8b661b742d7863dcf9c62 192.168.79.191:7001@17001 myself,master - 0 1546940480000 1 connected 0-5460
bc0bc4072b5553285927f90f6689af8fcaa5453e 127.0.0.1:7002@17002 master - 0 1546940482712 2 connected 5461-10922
63f1373cbb7f7c854eb305d2805c7005215b2e4c 127.0.0.1:7004@17004 slave bc0bc4072b5553285927f90f6689af8fcaa5453e 0 1546940481000 4 connected
abde5d37af1c859a7739f5d385b932b751b93c7a 127.0.0.1:7006@17006 slave d907bc1ac0dc8f1580d8b661b742d7863dcf9c62 0 1546940481504 6 connected