前言
Twemproxta安装
第一步
yum install autoconf automake
第二步
yum install libtool
第三步
wget https://github.com/twitter/twemproxy/archive/v0.4.1.tar.gz
第四步
tar -xvf v0.4.1.tar.gz
mv twemproxy-0.4.1/ /etc/twemproxy-0.4.1
第五步
cd etc/twemproxy-0.4.1/
第六步
autoreconf -fvi
第七步
./configure && make
配置
改之前备份下原件,修改配置文件
cp conf/nutcracker.yml conf/nutcracker.yml.bak
vim conf/nutcracker.yml
清空填入如下的配置
sxt:
listen: 127.0.0.1:22121 # 绑定的机器端口,外部连接自己的端口
hash: fnv1a_64 # 散列算法
distribution: ketama # 分布函数
auto_eject_hosts: true # 当主机下线就把redis主机弹出列表
redis: true
server_retry_timeout: 2000
server_failure_limit: 1
servers:
- 127.0.0.1:6379:1
- 127.0.0.1:6380:1
- 127.0.0.1:6381:1
启动redis集群
redis-server --port 6379
redis-server --port 6380
redis-server --port 6381
启动nutcracker
cp ./etc/twemproxy-0.4.1/src/nutcracker /usr/local/sbin/ # 添加到超级用户才能使用的与本地机器无关的程序
nutcracker -d -c conf/nutcracker.yml # d 表示后台运行
查看运行情况
[root@iZuf64res1ona9ad2ddsejZ /]# ps -aux|grep nutcracker
root 578 0.0 0.0 18008 880 ? Sl 00:48 0:00 src/nutcracker -d -c conf/nutcracker.yml
root 1831 0.0 0.0 112812 984 pts/0 S+ 01:06 0:00 grep --color=auto nutcracker
测试
- 通过twemproxy端口启动服务并写入数据成功
[root@iZuf64res1ona9ad2ddsejZ /]# redis-cli -p 22121
127.0.0.1:22121> set demo 123
OK
- 在三台redis中查看是否存在demo的数据
[root@iZuf64res1ona9ad2ddsejZ ~]# redis-cli -p 6379
127.0.0.1:6379> get demo
(nil)
127.0.0.1:6379>
[root@iZuf64res1ona9ad2ddsejZ ~]# redis-cli -p 6380
127.0.0.1:6380> get demo
"123"
127.0.0.1:6380>
[root@iZuf64res1ona9ad2ddsejZ ~]# redis-cli -p 6381
127.0.0.1:6381> get demo
(nil)
127.0.0.1:6381>
发现6380端口的redis存进去了数据
- 在6379中存数据,在twemproxy上查看数据
127.0.0.1:6379> set 6379 true
OK
127.0.0.1:6379>
写入后查看发现成功
127.0.0.1:22121> get 6379
"true"
127.0.0.1:22121>