Memcached集群
发表于:2025-02-01 作者:千家信息网编辑
千家信息网最后更新 2025年02月01日,配置memcached主缓存节点和从缓存节点-----两台配置相同开启三台虚拟机:192.168.80.100 配置memcached主缓存节点 192.168.80.101 配置
千家信息网最后更新 2025年02月01日Memcached集群
配置memcached主缓存节点和从缓存节点-----两台配置相同开启三台虚拟机:192.168.80.100 配置memcached主缓存节点 192.168.80.101 配置memcached从缓存节点192.168.80.102
1.关闭防火墙机及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 install
3.编译安装memcached#切换到memcachedcd /opt/memcached-1.5.6/
#配置(指定libevent路径)./configure \--prefix=/usr/local/memcached \--with-libevent=/usr/local/libevent/
#编译及安装make && make install
4.优化启动(支持复制功能的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 11211
magent在主服务器安装,从服务器不用安装编译安装magent1.创建magent目录mkdir /opt/magent2.解压tar xf magent-0.5.tar.gz -C /opt/magent3.切换到目录cd /opt/magent4.让动态链接库为系统所共享/sbin/ldconfig
5.编辑ketama.h,添加文件头部信息 vi ketama.h #ifndef SSIZE_MAX #define SSIZE_MAX 32767
6.修改Makefilevi Makefile //libevent安装路径在/usr/local/libevent中使用以下内容:LIBS = -levent -lm -L /usr/local/libevent/libINCLUDE=-I /usr/local/libevent/include
Magent + Keepalived实现Memcached高可用群集7.编译(完成后会生成一个manage的可执行文件)make
8.复制mgent命令到系统管理中,便于使用cp /opt/magent/magent /usr/bin/9.发送至从服务器scp /opt/magent/magent root@192.168.80.101:/usr/bin
安装keepalivedyum -y install keepalived
1.编辑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 12000
6.检查keepalived服务状态systemctl status keepalived
7.检查vip地址ip addr show ens32
netstat -anpt | grep 11211
在从服务器上操作1.安装keepalivedyum -y install keepalived
2.将主服务器上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 magentfi
6.赋予脚本执行权限chmod +x /root/shell/magent.sh7.启动keepalived服务systemctl enable keepalivedsystemctl start keepalived
8.检查keepalived服务状态systemctl status keepalived
9.检查vip地址ip addr show ens32
在客户端测试1.安装telnet客户端yum install telnet -y
2.连接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安全错误
数据库的锁怎样保障安全
杭州雷龙网络技术是什么
服务器阵列系统安装
泰州专业的财务软件开发教程
杀手6服务器
监控服务器可以用什么代替
高新区一站式网络技术要多少钱
十月软件开发工作室
数据库运维形考任务4答案
excel车库管理数据库
网络安全学习的方法
数据库技术非空
中国数据库开放
商丘服务器机柜批发
幼儿园网络安全教育总结
网络安全青警说观后感
怎样用带外管理查服务器密码
苹果平板网络安全性
计算机网络安全开题报告和论文
工业仿真软件开发商
浙江金华软件开发公司电话
网络安全扫描拍立得滤镜
法院网络安全管理方案
福安餐饮软件开发
网络安全优秀作文900字
数据库ssms怎么改语言
李沧区软件开发哪家做的好
域控服务器维修
数据库为何打不开
内蒙古互赢网络技术有限公司
什么是mysql数据库