Memcached集群
发表于:2025-12-03 作者:千家信息网编辑
千家信息网最后更新 2025年12月03日,配置memcached主缓存节点和从缓存节点-----两台配置相同开启三台虚拟机:192.168.80.100 配置memcached主缓存节点 192.168.80.101 配置
千家信息网最后更新 2025年12月03日Memcached集群
配置memcached主缓存节点和从缓存节点-----两台配置相同开启三台虚拟机:192.168.80.100 配置memcached主缓存节点 192.168.80.101 配置memcached从缓存节点192.168.80.1021.关闭防火墙机及Selinux[重要](三台开始都要启动)systemctl stop firewalld //关闭防火墙setenforce 0 //关闭监控2.安装环境包yum install gcc gcc-c++ make -y
3.编译安装libevent(必须先安装)安装上传软件yum install lrz* -y
#解压tar xf libevent-2.1.8-stable.tar.gz -C /opttar xf memcached-1.5.6.tar.gz -C /opt/#切换到libevent目录cd /opt/libevent-2.1.8-stable/#配置./configure --prefix=/usr/local/libevent#编译及安装make && make install3.编译安装memcached#切换到memcachedcd /opt/memcached-1.5.6/#配置(指定libevent路径)./configure \--prefix=/usr/local/memcached \--with-libevent=/usr/local/libevent/#编译及安装make && make install4.优化启动(支持复制功能的Mencached需要安装后的libevent-2.1.so.6模块,不然启动服务会报错)ln -s /usr/local/libevent/lib/libevent-2.1.so.6.0.2 /usr/lib64/libevent-2.1.so.6 5.分别在两台服务器上启动memcached#主服务器cd /usr/local/memcached/bin/./memcached -d -m 32m -l 192.168.80.100 -p 11211 -u root#从服务器cd /usr/local/memcached/bin/./memcached -d -m 32m -l 192.168.80.101 -p 11211 -u root6.检查memcached是否启动netstat -anpt | grep memcached netstat -ntap | grep 11211magent在主服务器安装,从服务器不用安装编译安装magent1.创建magent目录mkdir /opt/magent2.解压tar xf magent-0.5.tar.gz -C /opt/magent3.切换到目录cd /opt/magent4.让动态链接库为系统所共享/sbin/ldconfig5.编辑ketama.h,添加文件头部信息 vi ketama.h #ifndef SSIZE_MAX #define SSIZE_MAX 327676.修改Makefilevi Makefile //libevent安装路径在/usr/local/libevent中使用以下内容:LIBS = -levent -lm -L /usr/local/libevent/libINCLUDE=-I /usr/local/libevent/includeMagent + Keepalived实现Memcached高可用群集7.编译(完成后会生成一个manage的可执行文件)make8.复制mgent命令到系统管理中,便于使用cp /opt/magent/magent /usr/bin/9.发送至从服务器scp /opt/magent/magent root@192.168.80.101:/usr/bin安装keepalivedyum -y install keepalived1.编辑keepalived配置文件 vi /etc/keepalived/keepalived.conf 把里面内容删除添加以下内容! Configuration File for keepalivedglobal_defs { router_id magent_H1 #指定router_id}vrrp_script magent { #定义函数 script "/root/shell/magent.sh" interval 2}vrrp_instance VI_1 { state MASTER interface ens32 #本地网卡名称 virtual_router_id 51 #id主从一致 priority 100 #主优先级大于从优先级 advert_int 1 authentication { auth_type PASS auth_pass 1111 }track_script { #调用函数 magent }virtual_ipaddress { #vip地址 192.168.80.188 }}2.建立shell目录mkdir /root/shell3.创建magent.sh脚本vi /root/shell/magent.sh#!/bin/bashKeepalived=`ps -ef | grep keepalived | grep -v grep | wc -l`if [ $Keepalived -gt 0 ]; then magent -u root -n 51200 -l 192.168.80.188 -p 12000 -s 192.168.80.100:11211 -b 192.168.80.101:11211else pkill -9 magentfi参数说明: -n 51200 #定义用户最大连接数 -l 192.168.175.188 #指定虚拟IP -p 12000 #指定端口号 -s #指定主缓存服务器 -b #指定从缓存服务器4.赋予脚本执行权限chmod +x /root/shell/magent.sh5.启动keepalived服务systemctl enable keepalivedsystemctl start keepalivednetstat -anpt | grep 120006.检查keepalived服务状态systemctl status keepalived7.检查vip地址ip addr show ens32netstat -anpt | grep 11211在从服务器上操作1.安装keepalivedyum -y install keepalived2.将主服务器上keepalived配置文件复制过来scp root@192.168.80.100:/etc/keepalived/keepalived.conf /etc/keepalived/keepalived.conf 3.编辑keepalived配置文件vi /etc/keepalived/keepalived.conf! Configuration File for keepalivedglobal_defs { router_id magent_H2 #指定router_id}vrrp_script magent { #定义函数 script "/root/shell/magent.sh" interval 2}vrrp_instance VI_1 { state BACKUP interface ens33 #本地网卡名称 virtual_router_id 51 #id主从一致 priority 90 #主优先级大于从优先级 advert_int 1 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { #vip地址 192.168.80.188 } track_script { #调用函数 magent }}4.新建shell目录mkdir /root/shell5.创建magent.sh脚本vi /root/shell/magent.sh#!/bin/bashKeepalived=`ip addr | grep 192.168.80.188 | grep -v grep | wc -l`if [ $Keepalived -gt 0 ]; then magent -u root -n 51200 -l 192.168.80.188 -p 12000 -s 192.168.80.100:11211 -b 192.168.80.101:11211else pkill -9 magentfi6.赋予脚本执行权限chmod +x /root/shell/magent.sh7.启动keepalived服务systemctl enable keepalivedsystemctl start keepalived8.检查keepalived服务状态systemctl status keepalived9.检查vip地址ip addr show ens32在客户端测试1.安装telnet客户端yum install telnet -y2.连接memcached测试复制功能//连接vip进行测试,插入user键值telnet 192.168.80.188 12000Trying 192.168.80.188...Connected to 192.168.80.188.Escape character is '^]'.set user 0(标签) 0(缓存时间永不过期) 5(缓存内容)12345STOREDget userVALUE user 0 512345ENDquitConnection closed by foreign host.//连接Memcached1,查询user键值,可以获取,成功!telnet 192.168.80.100 11211Trying 192.168.80.100...Connected to 192.168.80.100.Escape character is '^]'.get userVALUE user 0 512345ENDquitConnection closed by foreign host.//连接Memcached2,查询user键值,也可以获取,成功![root@centos7-1 ~]# telnet 192.168.80.101 11211Trying 192.168.80.101...Connected to 192.168.80.101.Escape character is '^]'.get userVALUE user 0 512345ENDquitConnection closed by foreign host.测试单点故障停止主服务器,去连接漂移地址,查看有木有出现内容
服务
服务器
配置
缓存
编译
内容
地址
文件
目录
检查
优先级
函数
脚本
节点
测试
切换
一致
成功
主从
功能
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
英语二网络安全专业考研
软件开发遂宁哪里有
如何用服务器管理器共享文件
宝山区安装网络技术欢迎咨询
网络安全答题答案公众号
软件开发必须要申请著作权
涉县企业万词霸屏需要服务器吗
服务器共享盘
冬奥会 网络安全形势
湖州银行软件开发考试题库
2019年世界网络技术峰会
上汽通用汽车邮箱服务器
服务器的php.ini
人间地狱服务器搭建
sql数据库怎么复制到u盘
数据库主码可不可以重复
贵阳大数据与网络安全
苹果mini服务器
数据库 作业
网络安全教育班会笔记
金山区网络技术转让咨询热线
一般哪些行业用到数据库
网络安全的手抄报简便
连接服务器后图标错误
附近软件开发交流群
多参数优化软件开发
feature软件开发
软件开发操作性人员
爬虫数据库是必学的吗
戴尔服务器r720系统安装教程