设为首页 收藏本站
查看: 1015|回复: 0

[经验分享] memcached高可用群集部署(keepalive+magent)

[复制链接]

尚未签到

发表于 2018-12-24 12:44:33 | 显示全部楼层 |阅读模式
  memcahced高可用群集
  

       memcached群集作用主要解决服务器单点故障。不做群集部署,服务器之间不会复制
  同步数据,一旦宕机数据就会丢失,无法有效的为后台web服务器等减轻并发连接压力。所以,
  我们采用群集服务去解决这个问题,使用多台memcached做群集部署,即时有一两台服务器宕机,
  也不会影响用户正常体验,同时也减少后台服务的并发连接压力。

  实验环境
  本文采用magent+keepalived实现memcached的群集部署
  
  
角色类型操作系统IP地址服务类型
主服务器Centos7192.168.60.144/24  libevent、memcached、
  magent、keepalived
从服务器Centos7192.168.60.143/24libevent、memcached、
keepalived
客户测试端Centos7192.168.60.140/24telnet
  

  软件包地址
  链接:https://pan.baidu.com/s/1tHnxoldZoX7U0aHnx6GlRg 密码:vl6l
  部署服务

  一、主从服务器安装memcached
  1、安装环境包
  yum install gcc gcc-c++ -y
  2、解压缩
  tar zxf libevent-2.1.8-stable.tar.gz -C /opt/    #解压libevent事件库包
  tar zxf memcached-1.5.6.tar.gz -C /opt/        #解压memcached包
  mkdir /opt/magent    #创建magent解压目录
  tar zxf magent-0.5.tar.gz -C /opt/magent     #解压magent包
  3、编译libevent和memcached
  cd /opt/libevent-2.1.8-stable       #编译libevent
  ./configure --prefix=/usr
  make && make install
  ln -s /usr/lib/libevent-2.1.so.6  /usr/lib64/libevent-2.1.so.6
  cd /opt/memcached-1.5.6/        #编译memcached
  ./configure  --with-libevent=/usr
  make && make intall
  二、主服务器上配置magent(从服务器无需配置magent)

  1、直接修改magent中的文件
  cd /opt/magent

  vim ketama.h          #修改开头两行
  #ifndef SSIZE_MAX
  #define SSIZE_MAX 32767
  vim Makefile          #修改第一行

  LIBS = -levent -lm
  make                      #生成magent脚本

  
  2、主服务器推送将生成从magent推送给从服务器
  yum install openssh-clients -y      #安装推送插件
  scp magent root@192.168.60.143:/usr/bin/        #推送到从服务器/usr/bin目录下
  三、主从服务器都安装keepalived,并修改配置文件
  1、安装keepalived
  yum install keepalived -y
  2、修改配置文件
  vim /etc/keepalived/keepalived.conf

  3、从服务器复制主服务器上的配置文件
  cd /etc/keepalived/
  mv keepalived.conf keepalived.conf.bk   #将原本的配置文件改名
  yum install openssh-clients -y   #安装推送插件
  scp root@192.168.60.144:/etc/keepalived/keepalived.conf /etc/keepalived/    #复制配置文件
  4、从服务器修改配置文件

   state BACKUP
  ●  virtual_router_id 52
   priority 100
  就以上三处需要修改,其他内容与主服务器相同。

  四、主从服务器写入keepalived配置文件加载的脚本

  1、创建目录
  mkdir /opt/shell
  2、写入如下脚本
  vim magent.sh
  #!/bin/bash
  k=`ps -ef | grep keepalived | grep -v grep | wc -l`
  if [ $k -ge 0 ];then
  magent -u root -n 51200 -l 192.168.60.180 -p 12000 -s 192.168.60.144:11211 -b 192.168.60.143:11211
  else
  pkill -9 magent
  fi
  3、主从都启动keepalived服务

  systemctl start keepalived.service     #启动keepalived
  netstat -ntap | grep 12000#查看端口号12000
  ip add     #查看虚拟ip

  cat /var/log/messages                      #查看日志,验证主从关系
  VRRP_Instance(VI_1) Transition to MASTER STATE

  

  五、主从服务器启动memcached,客户端验证
  1、启动memcached
  memcached -m 512k -u root -d -l 192.168.60.144 -p 11211
  memcached -m 512k -u root -d -l 192.168.60.143 -p 11211
  2、先本地自测,看能否登陆memcached
  yum install telnet -y
  telnet 192.168.60.144 11211
  telnet 192.168.60.143 11211
  3、客户端使用虚拟ip登陆memcached
  yum install telnet -y
  telnet 192.168.60.180 12000   #端口为12000
  4、在客户端写入数据,在主从上分别查看。



  5、关闭其中一台keepalived依旧不影响客户端操作
  完成以上测试magent+keepalived实现memcached高可用群集实验就算好了~




运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-655305-1-1.html 上篇帖子: memcached入门到理解--PDF文档 下篇帖子: 超简单的memcached集群搭建
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表