Memcached集群
发表于:2024-10-19 作者:千家信息网编辑
千家信息网最后更新 2024年10月19日,配置memcached主缓存节点和从缓存节点-----两台配置相同开启三台虚拟机:192.168.80.100 配置memcached主缓存节点 192.168.80.101 配置
千家信息网最后更新 2024年10月19日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安全错误
数据库的锁怎样保障安全
软件开发软件界面背景
怎么查数据库表
网络安全法15条
我换一个服务器英文
网络安全能力证书
营造网络安全人人有责
数据库有多个默认账号该怎么办
视频上传到服务器以后怎么播放
环控系统软件开发
服务器提示calltrace
网络安全员cism
我连互联网科技有限公司
新出的杜仲基因组数据库
数据库基础知识 ppt
以及网络安全的监督管理适用
农行软件开发中心一般加班吗
软件开发问题管理系统
戴尔服务器安装滑轨
南山网络安全运维联系方式
重庆远程教育系统开发软件开发
徐州医科大学附属医院自助服务器
意识形态和网络安全方面
gdb需要服务器吗
软件开发部门一套管理规范
无法连接安全连接到服务器
网络安全周公益晚会
中专计算机网络技术学几年
慢性格人适合软件开发吗
花式宣传让网络安全知识进万家
森州互联网科技