Memcached+magent实现主从同步 +keepalived高可用群集
发表于:2024-11-26 作者:千家信息网编辑
千家信息网最后更新 2024年11月26日,Memcached+magent实现主从同步 +keepalived高可用群集简介Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和
千家信息网最后更新 2024年11月26日Memcached+magent实现主从同步 +keepalived高可用群集
Memcached+magent实现主从同步 +keepalived高可用群集
简介
Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度。Memcached基于一个存储键/值对的hashmap。其守护进程(daemon )是用C写的,但是客户端可以用任何语言来编写,并通过memcached协议与守护进程通信。
实验部署
主机名称 | IP地址 | 主要服务软件 |
---|---|---|
memcached主服务器 | 172.16.10.138 | memcached,libevent,magent,keepalived |
memcached从服务器 | 172.16.10.137 | memcached,libevent,keepalived |
客户端 | 172.16.10.134 | telnet测试 |
- 配置memcached主缓存节点服务器
tar xf libevent-2.1.8-stable.tar.gz -C /opttar xf memcached-1.5.6.tar.gz -C /opttar xf magent-0.5.tar.gz -C /optcd /opt/libevent-2.1.8./configure --prefix=/usr #指定安装路径make && make install #编译安装cd /opt/memcached-1.5.6./configure --with-libevent=/usr #指定安装路径make && make install #编译安装ln -s /usr/lib/libevent-2.1.so.6 /usr/lib64/libevent-2.1.so.6 #主服务器上magent服务需要这个模块
cd /opt/magent
vim ketama.h #ifndef SSIZE_MAX #修改#define SSIZE_MAX 32767 #修改 #endifvim MakefileLIBS = -levent -lm #修改,添加-lm make
cp mgent /usr/bin #把生成的mgent程序让系统识别
- 配置memcached从缓存节点服务器
tar xzvf memcached-1.5.6.tar.gz -C /opttar xzvf libevent-2.1.8-stable.tar.gz -C /optcd /opt/libevent-2.1.8./configure --prefix=/usrmake && make installcd /opt/memcached-1.5.6./configure --with-libevent=/usrmake && make i nstallln -s /usr/lib/libevent-2.1.so.6 /usr/lib64/libevent-2.1.so.6 #主服务器上magent服务需要这个模块
- 主服务器将magent文件复制到从服务器
yum install openssh-clients
scp magent root@172.16.10.137:/usr/bin/ //把产生的magent文件直接复制到从服务器。
- 主服务器安装keepalived服务,修改配置文件
yum -y install keepalived
vim /etc/keepalived/keepalived.conf
router_id MAGENT_HA #router_id主从不能相同,要修改vrrp_script magent { script "/opt/shell/magent.sh" interval 2 } #定义一个新函数,每2s自动执行这个脚本 vrrp_instance VI_1 {state MASTER #这边是主服务器,从服务器是BACKUP interface ens33 #网卡接口是ens33 virtual_router_id 51 priority 100 #优先级,从服务器小于主服务器 advert_int 1authentication { auth_type PASS auth_pass 1111 }track_script { magent #触发执行magent脚本 }virtual_ipaddress { 172.16.10.200 #虚拟IP(vip) } }将下面多余的配置全部删除
- 主服务器安装keepalived服务,修改配置文件
yum -y install keepalived
vim /etc/keepalived/keepalived.conf
router_id MAGENT_HB #router_id主从不相同 vrrp_script magent { script "/opt/shell/magent.sh" interval 2 } #定义一个新函数,每2s自动执行这个脚本 vrrp_instance VI_1 {state MASTER #这边是从服务器,是BACKUP interface ens33 #网卡接口是ens33virtual_router_id 51 priority 90 #优先级,从服务器小于主服务器 advert_int 1authentication {auth_type PASSauth_pass 1111 }track_script { magent #触发执行magent脚本 }virtual_ipaddress { 172.16.10.200 #虚拟IP(vip) } } 将下面多余的配置全部删除
- 主服务器编写magnet脚本
mkdir /opt/shell
vim /opt/shell/magent.sh #!/bin/bash K=`ps -ef | grep keepalived | grep -v grep | wc -l` if [ $K -gt 0 ]; then magent -u root -n 51200 -l 192.168.58.100 -p 12000 -s 192.168.58.135:11211 -b 192.168.58.132:11211 else pkill -9 magent fi -n 51200 #定义用户最大连接数 -l 192.168.58.100 #指定虚拟IP -p 12000 #指定端口号 -s #指定主缓存服务器 -b #指定从缓存服务器 #这个脚本意思就是一旦检测到系统进程中有keepalived进程,就执行magent这条命令,如果没有,则将magent进程杀死。总得来说就是,主服务器上没有keepslived进程,magent就会和从服务器连接。 chmod +x /opt/shell/magent.sh #给脚本添加执行权限
- 从服务器编写magent脚本
mkdir -p /opt/shell
vim /opt/shell/magent.sh#!/bin/bashK=`ip addr | grep 192.168.58.100 | grep -v grep | wc -l`if [ $K -gt 0 ]; thenmagent -u root -n 51200 -l 192.168.58.100 -p 12000 -s 192.168.58.135:11211 -b 192.168.58.132:11211elsepkill -9 magentfi #从服务器的脚本意思就是检测到虚拟ip漂移是否到自己身上,如果VIP进行漂移到从服务器之后,就会执行magent这条命令,目的就是在主服务器宕掉的时候,从服务器能够正常启动。
- 实验验证
首先使用客户机安装telnet,远程连接VIP节点,写入用户之后,主从缓存服务器会自动获取下载该用户。
服务
服务器
脚本
缓存
进程
配置
就是
数据
文件
主从
客户
数据库
用户
系统
节点
相同
优先级
内存
函数
动态
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
dns主服务器怎么设置
网络安全日海报元素
广西服务器售后
数据库开发技术pdf下载
网络安全心得体会范文4篇
闵行区工商金融网络技术服务
掌控计算机网络技术的基础概念
影响网络安全的评论
在数据库中如何设置边框样式
目前网络安全厂家
数据库中常常使用的布尔逻辑
网络安全之现状浅析
丫丫网络安全事件
如何设置网络安全
网络安全的应急演练可以跨地区吗
重生投资科技互联网的小说
城市设计数据库设计
民国地方志数据库
外国网络技术最牛的人员
网络安全达人完整视频
免费的服务器管理
河南浩瀚星云网络技术公司靠谱吗
1521是哪个数据库
全省网络安全工作责任
阿里云服务器价格对照表
软件开发的那些坑
病毒网络安全书籍
计算机如何运行在服务器上
数据库单元格移动
如何查看数据库的权限