memcache集群
admin
2023-05-21 14:42:32
0

四台电脑
memcache:192.168.1.201 192.168.1.202
magent: 192.168.1.100 192.168.1.101
实验:
1、安装libevent软件(四台)
[root@localhost ~]# tar -zxvf libevent-2.0.21-stable.tar.gz -C /usr/src/
[root@localhost ~]# cd /usr/src/libevent-2.0.21-stabl
[root@localhost libevent-2.0.21-stable]# ./configure --prefix=/usr/
[root@localhost libevent-2.0.21-stable]# make && make install
2、安装memcached软件(Memcached服务器 2台)
[root@localhost ~]# tar -zxvf memcached-1.4.31.tar.gz -C /usr/src/
[root@localhost ~]# cd /usr/src/memcached-1.4.31/
[root@localhost memcached-1.4.31]# ./configure --enable-memcache --with-libevent=/usr/
[root@localhost memcached-1.4.31]# make && make install
主缓存:
[root@localhost ~]# memcached -d -m 1024 -u root -l 192.168.1.201 -p 11211
备缓存:
[root@localhost ~]# memcached -d -m 1024 -u root -l 192.168.1.202 -p 11211
[root@localhost ~]# netstat -anpt | grep memcached
3、安装magent 软件(Magent 服务器 2台)
[root@localhost ~]# mkdir /usr/magent
[root@localhost ~]# tar -zxvf magent-0.6.tar.gz -C /usr/magent/
[root@localhost ~]# cd /usr/magent/
[root@localhost magent]# vim ketama.h
添加(头部添加):
#ifndef SSIZE_MAX
#define SSIZE_MAX 32767
#endif
[root@localhost magent]# ln -s /usr/lib64/libm.so /usr/lib64/libm.a
[root@localhost magent]# ln -s /usr/lib64/libevent-1.4.so.2 /usr/lib64/libevent.a
无法make的时候需要安装libevent-1.4.so.2
[root@localhost magent]# /sbin/ldconfig
[root@localhost magent]# sed -i "s#LIBS = -levent#LIBS = -levent -lm#g" Makefile
[root@localhost magent]# make
[root@localhost magent]# cp magent /usr/bin/
主缓存和备缓存一样的启动命令(-l 是漂移IP 还没有搭建Keepalived服务 暂时不要启动Magent服务)
[root@localhost ~]# magent -u root -n 51200 -l 192.168.1.10 -p 12000 -s 192.168.1.201:11211 -b 192.168.1.202:11211
[root@localhost ~]# magent -u root -n 51200 -l 192.168.1.10 -p 12000 -s 192.168.1.201:11211 -b 192.168.1.202:11211
-u:用户
-n:最大连接数
-l:magent 对外监听IP 地址
-p:magent 对外监听端口
-s:magent 主缓存IP 地址和端口
-b:magent 备缓存IP 地址和端口
[root@localhost ~]# ps -elf | grep magent
4、安装keepalived 软件(Magent 服务器 2台)
[root@localhost ~]# yum –y install openssl*
[root@localhost ~]# tar -zxvf keepalived-1.2.13.tar.gz -C /usr/src/
[root@localhost ~]# cd /usr/src/keepalived-1.2.13/
[root@localhost keepalived-1.2.13]# ./configure --prefix=/ --with-kernel-dir=/usr/src/kernels/2.6.32-431.el6.x86_64
[root@localhost keepalived-1.2.13]# make && make install
配置主缓存服务器
[root@localhost ~]# vim /etc/keepalived/keepalived.conf
修改:
global_defs {
router_id LVS_DEVEL_R1
}
vrrp_instance VI_1 {
state MASTER
interface eth0
virtual_router_id 51
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.1.10
}
}
[root@localhost ~]# service keepalived restart
[root@localhost ~]# ip add show dev eth0
配置备缓存服务器
[root@localhost ~]# vim /etc/keepalived/keepalived.conf
修改:
global_defs {
router_id LVS_DEVEL_R2
}
vrrp_instance VI_1 {
state BACKUP
priority 99
......
virtual_ipaddress {
192.168.1.10
}
---其他参数与主缓存服务器保持一致----
}
[root@localhost ~]# service keepalived restart
[root@localhost ~]# ip add show dev eth0
验证:
客户端ping 192.168.1.10 查看VIP的变化情况。
5、验证:
1)用主缓存节点连接上主缓存的1200端口插入数据
[root@localhost ~]# telnet 192.168.1.10 12000
Trying 192.168.1.10...
Connected to 192.168.1.10.
Escape character is '^]'.
set key 33 0 5
ggggg
STORED
quit
Connection closed by foreign host.
2)查看插入的数据
[root@localhost ~]# telnet 192.168.1.10 12000
Trying 192.168.1.10...
Connected to 192.168.1.10.
Escape character is '^]'.
get key
VALUE key 33 5
ggggg
END
quit
Connection closed by foreign host.
3)连接主缓存节点的11211端口进行查看
[root@localhost ~]# telnet 192.168.1.201 11211
Trying 192.168.1.100...
Connected to 192.168.1.100.
Escape character is '^]'.
get key
VALUE key 33 5
ggggg
END
quit
Connection closed by foreign host.
4)连接主缓存节点的11211端口进行查看
[root@localhost ~]# telnet 192.168.1.202 11211
Trying 192.168.1.200...
Connected to 192.168.1.200.
Escape character is '^]'.
get key
VALUE key 33 5
ggggg
END
quit
Connection closed by foreign host.
说明主缓存节点和备缓存节点都有数据。
宕掉主缓存节点。
1)停止memcached进程(或者断开主缓存节点的网卡),
2)客户端查看
[root@localhost ~]# telnet 192.168.1.10 12000
Trying 192.168.1.10...
Connected to 192.168.1.10.
Escape character is '^]'.
get key
VALUE key 33 5
ggggg
END

总结:
memcache的优点:可以做多主或者多从
memcache的缺点:当主缓存节点当掉又恢复,之前的缓存数据会丢失。

相关内容

热门资讯

抽水马桶水箱不进水的解决办法 步骤一、准备小刷子或是其他清洁工具;步骤二、打开水箱盖子;步骤三、将水箱的堵塞和污渍清理干净;步骤四...
马桶抽水后不停的流水怎么办 解决方法:水箱材质的问题,将马桶水箱拆分开来,一个一个逐一进行检查看是马桶水箱里面的零件是否完好,及...
马桶后面的抽水泵坏了怎么办 换一个新的。方法:先将坏的抽水泵拆卸下,把水箱下方的进水关闭,再通过扳手,一只手扶着水箱当中的进水阀...
冰箱生蛆冰箱还能要吗 可以要的,生蛆的原因是食物存放太久导致腐烂,以及冰箱温度调节有误;冰箱保鲜室的温度要控制在0~10度...
吕美拉门多少钱可以买到- 回复者:安徽富邦装饰工程设计有限公司 安徽富邦装饰为您解答 门的话看尺寸,看您选的材料,不同的材料价...
邯郸中院通报“女子信访遭执行局... 8月4日,河北邯郸市中级人民法院发布情况通报:针对网上反映丛台区人民法院执行局局长郭红波相关问题,我...
蓝凌星通完成数千万元股权融资,... 北京蓝凌星通科技有限公司(简称:蓝凌星通)是专注卫星通信硬科技研发的企业,以自主研发的"超低功耗终端...
嫦娥六号月壤新发现:月球正面、... 观点网讯:2026年7月,我国科研团队依托嫦娥六号带回的1935克月背土壤样本,给出了部分答案。 团...
AI接连推翻数学猜想,人类还能... “本届菲尔兹奖,将是人类最后一次拿下这项数学最高荣誉?”这个论断你相信吗?在王虹、邓煜历史性拿下菲尔...
全球AI大抛售,泡沫破了吗? 今年,“最好的夏天”无疑也是“最残酷的夏天”。 全球人工智能主题大抛售——在美股市场,科技股暴跌,“...