有4台机器开启REDIS服务,做主备同步,2台机器做备机。用TWMPROXY 代理 2台主的REDIS 服务。
master:
192.168.4.142 6379
slave:
192.168.4.141 6379
master:
192.168.3.174 6379
slave:
192.168.3.175 6379
1、去Google Code 下载最新稳定版 nutcracker-0.3.0.tar.gz
2、编译安装
./configure --enable-debug=log
make
make install
3、配置 conf/nutcracker.yml
alpha:
listen: 192.168.3.174:22121
hash: fnv1a_64
distribution: ketama
auto_eject_hosts: true
redis: true
server_retry_timeout: 2000
server_failure_limit: 1
servers:
- 192.168.3.174:6379:1
- 192.168.4.142:6379:1
(此处监听服务一定要配置成外网IP,配置成127.0.0.1 后只有本机可以访问,其它机器不能访问到代理服务)
clstuer1:
listen: 0.0.0.0:9999 #使用哪个端口启动Twemproxy
redis: true #是否是Redis的proxy
hash: fnv1a_64 #指定具体的hash函数
distribution: ketama #具体的hash算法
auto_eject_hosts: true #是否在结点无法响应的时候临时摘除结点
timeout: 400 #超时时间(毫秒)
server_retry_timeout: 2000 #重试的时间(毫秒)
server_failure_limit: 1 #结点故障多少次就算摘除掉
servers: #下面表示所有的Redis节点(IP:端口号:权重 别名)
- 192.168.0.22:6379:1 node1
- 192.168.0.22:6380:1 node2
- 192.168.0.22:6381:1 node3
4、以后台服务启动代理服务
nutcracker -d -c ./conf/nutcracker.yml -o /var/log/nutcracker/nutcracker.log -v 6
/conf/nutcracker.yml 为配置文件
/var/log/nutcracker/nutcracker.log 为日志文件
5、测试服务是否正常
redis-cli -h 192.168.3.174 -p 22121