广告
返回顶部
首页 > 资讯 > 数据库 >Centos7 下实现 memcached + keepalived 高可用群集
  • 755
分享到

Centos7 下实现 memcached + keepalived 高可用群集

2024-04-02 19:04:59 755人浏览 独家记忆
摘要

memcached + keepalived 高可用群集 memcached介绍 Memcached是一套开源的高性能分布式内存对象缓存系统,它将所有的数据都存储在内存中,因为在内存中会统一维护一张巨大的H

memcached + keepalived 高可用群集

memcached介绍

Memcached是一套开源的高性能分布式内存对象缓存系统,它将所有的数据都存
储在内存中,因为在内存中会统一维护一张巨大的Hash表,所以支持任意存储类型的
数据。很多网站通过使用 Memcached提高网站的访问速度,尤其是对于大型的需要频
繁访问数据的网站。
Memcached是典型的C/S架构,因此需要安装 Memcached服务端与 Memcached
api客户端。 Memcached服务端是用C语言编写的,而 Memcached API客户端可以用
任何语言来编写,如PHPpython、Perl等,并通过 Memcached协议与 Memcached服
务端进行通信。

memcached主从复制+keepalived高可用框架介绍

Memcached服务器修改数据都会被同步到
另外一台,但是 Memcached API客户端是无法判断连接到哪一台 Memcached服务
器的,所以需要设置VP地址,提供给 Memcached Apl客户端进行连接。可以使用
keepalived产生的VP地址连接主 Memcached服务器,并且提供高可用架构。

因为 Memcached主从复制这种架构,在程序连接主服务
器,在前端加VP地址,实现高可用架构。这里用 Keepalived实现,因而
Keepalived的作用是用来检测 Memcached服务器的状态是否正常。
Keepalived不断检测 Memcached主服务器的11211端口,如果检测到 Memcached
服务发生宕机或者死机等情况,就会将VP从主服务器移至从服务器,从而实现
Memcached的高可用性。

实验准备

一台主服务器
需要安装 magent memcached libevent keepalived
一台从服务器
需要安装 memcached libevent keepalived

实验步骤

在主服务器和从服务器上安装memcached 和 libevent

tar xzvf memcached-1.5.6.tar.gz
tar xzvf libevent-2.1.8-stable.tar.gz

cd libevent-2.1.8
./configure --prefix=/usr    ##指定安装路径

make && make install   

cd 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服务需要这个模块

在主服务器上安装magent

mkdir /magent
tar xzvf magent-0.5.tar.gz

cd /magent
vim ketama.h
修改
#ifndef SSIZE_MAX
#define SSIZE_MAX 32767

vim Makefile
LIBS = -levent -lm

make

cp magent /usr/bin   ##方便系统识别命令

在主服务器上把magent 复制到从服务器上

yum install openssh-clients
scp magent root@192.168.x.x:/usr/bin

在主服务器上安装keepalived

vim /etc/keepalived/keepalived.conf
router—_id MAGENT_HA
删除
   vrrp_skip_check_adv_addr
   vrrp_strict
   vrrp_garp_interval 0
   vrrp_gna_interval 0

定义新函数
vrrp_script magent{
script"/opt/shell/magent.sh"
 interval 2       ##时间间隔
}

修改vrrp_instance下面
INTERFACE ens33
添加
track_script {
    magent
}        ## 使用新函数

定义一个虚拟IP
virtual_ipaddress {
    192.168.x.x
    }

下面多余的部分可以全部删除

在从服务器上安装keepalived

yum install keepalived 

从主服务器上把配置脚本复制到从服务器上
scp /etc/keepalived/keepalived.conf root@192.168.x.x.:/etc/keepalived/keepalived.conf

vim /etc/keepalived
router_id MAGENT_HB
state BACKUP     ##从服务器
virtual_router_id 52    ##ID不同
priortity 90     ##优先级

在主服务器上配置 magent脚本

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.x.x -p 12000 -s 192.168.x.x:11211 -b 192.168.x.x:11211
else
pkill -9 magent
fi

-n 51200 //定义用户最大连接数
-l 192.168.x.x //指定虚拟IP
-p 12000  //指定端口号
-s //指定主缓存服务器
-b //指定从缓存服务器

chmod +x magent.sh

在从服务器上配置 magent脚本

mkdir /opt/shell
 vim /opt/shell/magent.sh
 #!/bin/bash
 K=`ip addr | grep 192.168.x.x(虚拟IP) | grep -v grep | wc -l`
if [ $K -gt 0 ]; then
        magent -u root -n 51200 -l 192.168.x.x -p 12000 -s 192.168.x.x:11211 -b 192.168.x.x:11211
else
pkill -9 magent
fi  

chmod +x magent.sh

主从服务器开启keepalived服务

systemctl start keepalived.service

netstat -ntap |grep 12000

如果有12000端口表示服务开启成功

登录memcached服务器

memcached -m 512k -u root -d -l 192.168.xx 主 -p  11211
memcached -m 512k -u root -d -l 192.168.x.x 从 -p  11211

netstat -ntap |grep 11211

有11211端口表示服务开启成功

测试

在第三台服务器上安装 telnet
yum install telnet -y

telnet 192.168.x.x(虚拟IP) 12000
add username 0 0 7
1234567
Stored 
quit
## 通过虚拟IP登录 并创建一个用户

telnet 192.168.x.x(主/从服务器) 11211
get username
VALUE username 0 7
1234567
END
quit
##  在主从服务器上都能得到这个数据

在主服务器上关掉 memcached
pkill -9 memcached

192.168.x.x(虚拟IP) 12000
add username 0 0 7
1234567
Stored 
quit
## 通过虚拟IP 写入数据

telnet 192.168.x.x(从服务器) 11211
get username
VALUE username 0 7
1234567
END
quit
## 从服务器依然能读取到

至此 memcached+keepalived 高可用群集完成

您可能感兴趣的文档:

--结束END--

本文标题: Centos7 下实现 memcached + keepalived 高可用群集

本文链接: https://www.lsjlt.com/news/41257.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Centos7 下实现 memcached + keepalived 高可用群集
    memcached + keepalived 高可用群集 memcached介绍 Memcached是一套开源的高性能分布式内存对象缓存系统,它将所有的数据都存储在内存中,因为在内存中会统一维护一张巨大的H...
    99+
    2022-10-18
  • Memcached+magent实现主从同步 +keepalived高可用群集
    Memcached+magent实现主从同步 +keepalived高可用群集 简介 Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对...
    99+
    2022-10-18
  • Keepalived+HAProxy高可用集群K8S实现
    本文采用Keepalived+HAProxy的方式构建高可用集群。当你如果你有硬件负载均衡设备当然更好了。 准备环境: 主机ipk8s-master01192.168.10.4k8s...
    99+
    2022-11-13
  • Centos7 下 mysql5.7-mmm 高可用群集
    Centos7 下 mysql5.7-mmm 高可用群集 MMM介绍 MMM( Master- Master replication manager for MYSQL, MYSQL主主复制管理器)是一套支...
    99+
    2022-10-18
  • 怎么用Keepalived+HAProxy高可用集群K8S实现
    今天小编给大家分享一下怎么用Keepalived+HAProxy高可用集群K8S实现的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一...
    99+
    2023-06-29
  • Nginx实现高可用集群构建(Keepalived+Haproxy+Nginx)
    1、组件及实现的功能 Keepalived:实现对Haproxy服务的高可用,并采用双主模型配置; Haproxy:实现对Nginx的负载均衡和读写分离; Nginx:实现对HTTP...
    99+
    2022-11-12
  • HaProxy+Keepalived+Mycat高可用群集配置
    概述  本章节主要介绍配置HaProxy+Keepalived高可用群集,Mycat的配置就不在这里做介绍,可以参考我前面写的几篇关于Mycat的文章。 部署图: 配...
    99+
    2022-10-18
  • Centenos7.4下搭建mysql集群--mysql主主互备,keepalived高可用
    mysql + keepalived环境搭建 1.环境准备 系统:Centenos7.4 mysql版本 mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz keepal...
    99+
    2022-10-18
  • keepalived+MHA应该如何实现mysql主从高可用集群
    下文给大家带来关于keepalived+MHA应该如何实现mysql主从高可用集群,感兴趣的话就一起来看看这篇文章吧,相信看完keepalived+MHA应该如何实现mysql主从高可用集群对大家多少有点帮...
    99+
    2022-10-18
  • CentOS7怎么搭建高可用集群
    这篇文章主要讲解了“CentOS7怎么搭建高可用集群”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“CentOS7怎么搭建高可用集群”吧!一、安装集群软件必须软件pcs,pacemaker,c...
    99+
    2023-06-28
  • 教你用Magent实现Memcached集群
    Magent 是一款开源的 Memcached 代理服务器软件,使用它可以搭建高可用性的集群应用的 Memcached 服务 ,备份 Memcached 数据尽管 Memcached 服务挂掉,前端也能获取到数据,客户端先连到 Magent...
    99+
    2023-06-05
  • MM(主主数据库)+keepalived主备高可用集群
    博客分享的第一篇技术文章; 项目主要搭建:主主数据库高可用集群搭建。 数据库互为主备,应用技术:MM+keepalived 使用的是虚拟机搭建的实验向大家展示: 数据库1:192.168.4.7 数据库2...
    99+
    2022-10-18
  • MySQL项目之基于ProxySQL+keepalived的MGR高可用集群
    文章目录 项目名称项目描述项目架构图读写请求转发流程图项目环境项目步骤详细步骤一、配置好ip地址,修改主机名,在三台DBS上添加host别名映射二、配置ansible1.安装mysql2.安装...
    99+
    2023-09-05
    mysql linux 数据库 运维
  • keepalived实现mysql高可用
    说明:需要3个节点,主节点(202.207.178.6)、从节点(202.207.178.7)、测试节点(202.207.178.8),虚拟地址:202.207.178.4。配置实现mysql数据库主从复制...
    99+
    2022-10-18
  • MySQL主主复制+Keepalived打造高可用MySQL集群的步骤
    这篇文章主要介绍“MySQL主主复制+Keepalived打造高可用MySQL集群的步骤”,在日常操作中,相信很多人在MySQL主主复制+Keepalived打造高可用MySQL集群的步骤问题上存在疑惑,小...
    99+
    2022-10-18
  • 详解mycat+haproxy+keepalived搭建高可用负载均衡mysql集群
    主要思路: 简单说,实现mysql主备复制-->利用mycat实现负载均衡。 比较了常用的读写分离方式,推荐mycat,社区活跃,性能稳定。 以下基于centos7操作系统进行演示。 架构图 以下是这次搭建的架构图。 ...
    99+
    2022-04-13
    详解mycat+haproxy+keepalived搭建高可用负载均衡mysql集群
  • 企业中MySQL高可用集群架构三部曲之MM+keepalived
    各位老铁们,老张与大家又见面了。看到各位在博客里面给我的留言和访问量的情况,我很是欣慰,也谢谢大家对我的认可。我写这些博客,就是想把自己对于MySQL数据库的一些看法和自己平时的实战经验分享出来,我们可以一...
    99+
    2022-10-18
  • MySQL集群搭建实现高可用
    MySQL集群搭建实现高可用 MySQL集群概述和安装环境 MySQL Cluster是MySQL适合于分布式计算环境的高实用、高冗余版本。Cluster的汉语是"集群...
    99+
    2022-10-18
  • Keepalived如何实现Nginx高可用
    目录Keepalived实现Nginx高可用Master上的keepalived.confBackup上的keepalived.confNginx检测脚本check_nginx.sh...
    99+
    2022-11-13
    Keepalived Nginx Nginx高可用 Keepalived Nginx高可用
  • Mysql - 配置Mysql主从复制-keepalived高可用-读写分离集群
    目录 高可用: 为什么需要高可用呢? 高可用的主要作用: keepalived是什么?它用在哪里? 什么是VRRP协议,它的作用是什么? 搭建一个基于keepalived的高可用Mysql主从复制读写分离集群 一、项目中的IP地址配置表:...
    99+
    2023-09-18
    数据库
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作