杨叔叔 发表于 2018-11-6 07:01:51

redis集群部署(redis-cluster)

  

  
服务器配置:
  
数量:3台
  
IP:10.200.134.610.200.134.8 10.200.134.34
  
端口:每台服务器起3个端口:6379 6380 6381
  
cluster:每台服务器创建3个目录:cluster/6379cluster/6380cluster/6381
  

  
yum installruby rubygems -y
  

  
tar zxvf redis-3.0.5.tar.gz
  
mv redis-3.0.5 /usr/local/redis
  
cd /usr/local/redis
  
make MALLOC=libc && make install
  

  
#redis-3.2.1.zip 安装包在附件,自行下载
  
unzip redis-3.2.1.zip
  
gem install redis-3.2.1.gem
  

  

  
ln -s /usr/local/redis/src/redis-server /usr/bin/
  
ln -s /usr/local/redis/src/redis-cli /usr/bin/
  

  
mkdir -pv /usr/local/redis/cluster/{6379,6380,6381}
  

  
cp redis.conf cluster/6379/
  
cp redis.conf cluster/6380/
  
cp redis.conf cluster/6381/
  

  

  

  
#3台服务器修改6379 6380 6381下的redis.conf配置文件:
  

  
daemonize yes
  
#其余两个redis.conf就改下端口为6380 和 6381就可以了,其他是一样的
  
port 6379
  
cluster-enabled yes
  
cluster-config-file nodes-6379.conf
  

  
#3台服务器启动redis
  
redis-server /usr/local/redis/cluster/6379/redis.conf
  
redis-server /usr/local/redis/cluster/6380/redis.conf
  
redis-server /usr/local/redis/cluster/6381/redis.conf
  

  
#任意1台服务器创建集群
  
redis-trib.rb create --replicas 1 10.200.134.6:6379 10.200.134.6:6380 10.200.134.6:6381 10.200.134.34:6379 10.200.134.34:6380 10.200.134.34:6381 10.200.134.8:6379 10.200.134.8:6380 10.200.134.8:6381
  

  
命令的意义如下:
  
给定 redis-trib.rb 程序的命令是 create , 这表示我们希望创建一个新的集群。
  
选项 --replicas 1 表示我们希望为集群中的每个主节点创建一个从节点。
  
之后跟着的其他参数则是实例的地址列表, 我们希望程序使用这些地址所指示的实例来创建新集群。
  

  
简单来说, 以上命令的意思就是让 redis-trib 程序创建一个包含三个主节点和三个从节点的集群。
  
接着, redis-trib 会打印出一份预想中的配置给你看, 如果你觉得没问题的话, 就可以输入 yes , redis-trib 就会将这份配置应用到集群当中:
  

  

  

  
>>> Creating cluster
  
Connecting to node 10.200.134.6:6379: OK
  
Connecting to node 10.200.134.6:6380: OK
  
Connecting to node 10.200.134.6:6381: OK
  
>>> Performing hash slots allocation on 3 nodes...
  
Using 3 masters:
  
10.200.134.6:6379
  
10.200.134.6:6380
  
10.200.134.6:6381
  
......more
  
>>> Check for open slots...
  
>>> Check slots coverage...
  
All 16384 slots covered.
  

  

  
#检查集群节点:
  
/usr/local/redis/src/redis-trib.rb check 10.200.134.6:6379
  
#使用redis-cli命令测试redis集群
  
# redis-cli -c -p 6379
  
10.200.134.6:6379> set foo bar
  
-> Redirected to slot located at 10.200.134.6:6380
  
OK
  
10.200.134.6:6380> set hello world
  
-> Redirected to slot located at 10.200.134.6:6379
  
OK
  
10.200.134.6:6379> get foo
  
-> Redirected to slot located at 10.200.134.6:6380
  
"bar"
  
10.200.134.6:6380> get hello
  
-> Redirected to slot located at 10.200.134.6:6379
  
"world"
  

  
redis-cli是集群最基本的支持,依靠 Redis 集群节点来将它转向(redirect)至正确的节点


页: [1]
查看完整版本: redis集群部署(redis-cluster)