您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

轻量的Memcached代理Twemproxy的部署

2024/3/9 5:46:47发布24次查看
轻量的memcached代理twemproxy的部署twemproxy(又称为nutcracker)是一个轻量级的redis和memcached代理,主要用来减少对后端缓存服务器的连接数。由twitter开源出
轻量的memcached代理twemproxy的部署
twemproxy(又称为nutcracker)是一个轻量级的redis和memcached代理,,主要用来减少对后端缓存服务器的连接数。由twitter开源出来的缓存服务器集群管理工具,主要用来弥补redis和memcached对集群(cluster)管理指出的不足。
twemproxy是一个快速的单线程代理程序,支持memcached ascii协议和更新的redis协议。
twemproxy最了不起的地方就在于它能在节点失败的时候卸载它,然后可以在一段时间以后重新尝试(随即)连接,又或者可以严格按照配置文件中写的键与服务器之间对应关系进行连接。
安装部署
现有测试机:192.168.11.51/52/68
先在51和52测试机上安装好libevent和memcached,分别启动两个memcached实例;
然后在68上安装好twemproxy,配置好参数,启动twemproxy实例。
安装和启动memcached实例
详细步骤,请参见之前的博文《memcached 1.4.22安装和配置》,分别启动如下实例:
/usr/local/bin/memcached -d -m 128 -u memcached -l 192.168.11.51 -p 11211 -c 1024 -p /var/run/memcached/memcached1.pid/usr/local/bin/memcached -d -m 128 -u memcached -l 192.168.11.51 -p 11212 -c 1024 -p /var/run/memcached/memcached2.pid/usr/local/bin/memcached -d -m 128 -u memcached -l 192.168.11.52 -p 11211 -c 1024 -p /var/run/memcached/memcached1.pid/usr/local/bin/memcached -d -m 128 -u memcached -l 192.168.11.52 -p 11212 -c 1024 -p /var/run/memcached/memcached2.pid 
安装和启动twemproxy实例
1、安装autoconf
cd /tmpwget tar zxvf autoconf-2.69.tar.gzcd autoconf-2.69./configure --prefix=/usr/make && make install 
2、安装twemproxy
cd /tmpwget https://github.com/twitter/twemproxy/archive/master.zipunzip master.zip -d /usr/local/cd /usr/localmv twemproxy-master twemproxycd twemproxycflags=-ggdb3 -o0 autoreconf -fvi./configure --prefix=/usr/local/twemproxy --enable-debug=logmake && make install 
3、查看帮助
[root@test01 twemproxy]# ./sbin/nutcracker -hthis is nutcracker-0.4.0usage: nutcracker [-?hvddt] [-v verbosity level] [-o output file][-c conf file] [-s stats port] [-a stats addr][-i stats interval] [-p pid file] [-m mbuf size]options:-h, --help : this help-v, --version : show version and exit-t, --test-conf : test configuration for syntax errors and exit-d, --daemonize : run as a daemon-d, --describe-stats : print stats description and exit-v, --verbose=n : set logging level (default: 5, min: 0, max: 11)-o, --output=s : set logging file (default: stderr)-c, --conf-file=s : set configuration file (default: conf/nutcracker.yml)-s, --stats-port=n : set stats monitoring port (default: 22222)-a, --stats-addr=s : set stats monitoring ip (default: 0.0.0.0)-i, --stats-interval=n : set stats aggregation interval in msec (default: 30000 msec)-p, --pid-file=s : set pid file (default: off)-m, --mbuf-size=n : set size of mbuf chunk in bytes (default: 16384 bytes) 
4、修改配置文件
mkdir /etc/nutcrackercp ./conf/nutcracker.yml /etc/nutcracker/vi /etc/nutcracker/nutcracker.ymlmemcached:listen: 192.168.11.55:22121hash: fnvla_64distribution: ketamatimeout: 400backlog: 1024preconnect: trueauto_eject_hosts: trueserver_retry_timeout: 30000server_failure_limit: 3servers:- 192.168.11.51:11211:1- 192.168.11.51:11212:1- 192.168.11.52:11211:1- 192.168.11.52:11212:1参数解析:
listen: 启动twemproxy服务的ip和端口
hash: 指定具体的哈希函数
distribution: 指定具体的哈希算法
preconnect: 一个布尔值,如果该控件的nutcracker前端连接在这个池上的所有服务器进程启动。默认值为假
auto_eject_hosts: 是否在结点无法响应的时候临时摘除结点
server_retry_timeout: 重试的时间(毫秒)
server_failure_limit: 结点故障多少次就算摘除掉
servers: 下面表示所有的memcached节点(ip:端口号:权重)
5、配置以服务启动
cp ./scripts/nutcracker.init /etc/init.d/nutcrackerchmod 755 /etc/init.d/nutcrackervi /etc/init.d/nutcracker1. 新增定义daemo
daemon=/usr/local/twemproxy/sbin/nutcracker2. 替换所有
daemon --user ${user} ${prog} $options为
${daemo} $optionschkconfig --add nutcrackerchkconfig --level 35 nutcracker onchkconfig --list nutcrackervi /etc/profile在里面加入:
export path=$path:/usr/local/twemproxy/sbin. /etc/profileecho $path 
6、测试配置并启动服务
nutcracker -t -c /etc/nutcracker/nutcracker.ymlservice nutcracker start
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product