简介

keepalived 是linux下一个轻量级的高可用解决方案,它与HACMP实现功能类似,都可以实现服务或者网络的高可用,但是又有差别:hacmp是一个专业的、功能完善的高可用软件,它提供了HA软件所需的基本功能,比如心跳检测和资源接管,检测集群中的系统服务,在集群节点间转移共享ip地址所有者等,hacmp功能强大,但是部署和使用相对麻烦,同时也是商业化软件,与hacmp相比,keepalived主要是通过虚拟路由冗余来实现高可用功能,虽然他没有hacmp功能强大,但是keepalived部署使用相对简单,所有配置只需要一个配置文件即可完成.

实验  (marster与 backup 之间的高可用)

一、准备环境

#1,两台虚拟机,分别用作marst 与 backup

#2, Dserver 端 为 marster , PDserver 为 backup

#3,Dserver  ip : 192.168.206.3

PDserver  ip:192.168.206.4

二、 Start the experiment

1> 两端分别下载 keepalived

Dserver 端:

查看:

PDserver端:

查看:

2> 编辑配置文件

yum 安装的 的keepalived 的 配置文件默认  在  /etc/keepalived/keepalived.conf

keepalived的配置文件里面主要分三类

1,全局配置

2,VRRP配置

3,LVS配置

##先来配置Dserver端:

&1

&2,全局配置里的内容注释掉, lvs 配置 注释掉, 只留 VRRP 配置

&3> Dserver 端配置

PDserver 配置 相同,只是将 MASTER 改成 BACKUP  , (可以将优先级调低)

3> 测试

#1双端都启动keeplived

Dserver端:

PDserver端:

#2查看

Dserver端:

PDserver 端:

#接下来使 Dserver 端 宕掉

#查看 DPserver 端:

#因为Dserver 宕掉了, 所以 vip 发生了漂移, 漂移到了 DPserver 端。 实验成功!

补充: 上述实验存在着单点故障,Dserver 端 负载较大, 真实环境中,我们可以使 Dserver 端 与 Sserver 端 成为 互为主备,

当客户端访问域名的时候,可以是直接访问Dserver端,也可以是直接访问PDserver端,这样可以预防单点故障,减少Dserver 端的

负载,实际配置如下:

Dserver端:

#1

PDserver 端:

#2

#3 双端 重启 keepalived

#4 查看

Dserver 端:

PDserver端:

#测试 1 (假设 Dserver  端宕掉了 )

@1

@2查看Dserver端:

vip 漂移了

@3查看PDserver 端:

会发现Dserver 端的vip 漂移到了 PDserver端

# 测试2 ( PDserver 端宕掉了)

@1

@2查看PDserver 端:

@3 查看Dserver端:

PDserver 端 的 vip  漂移到了 Dserver 端

补充:

在宕掉Dserver 端后 ,vip 漂移到了PDserver 端, 然而这时 Dserver端 修好了会发生呢?vip 会回来么?

&1 测试

Dserver 端 (处于宕掉状态):

Dserver 端  (处于修好状态):

这时会发现,ip 又被抢回来了, 这是因为 默认设置的  抢占模式, 我们可以 在配置文件中修改成非抢占模式,这样’它‘的vip 就不会回来了

配置如下:

#

Dserver 端:

凭借  优先级去分辨 谁是主备   添加  noprempt

#重启下 keepalived 生效

#宕掉并查看

# 修复好  查看

vip 没有被抢回来。

keepalived + lvs marster 与 backup 之间的 高可用的更多相关文章

  1. MySQL + KeepAlived + LVS 单点写入主主同步高可用架构实验

    分类: MySQL 架构设计 2013-05-08 01:40 5361人阅读 评论(8) 收藏 举报 mysql 高可用 keepalive ㈠ 实战环境 服务器名· IP OS MySQL odd ...

  2. 使用Keepalived配置主从热备实现Nginx高可用(HA)

    Keepalived 简要介绍 Keepalived 是一种高性能的服务器高可用或热备解决方案,Keepalived 可以用来防止服务器单点故障的发生,通过配合 Nginx 可以实现 web 前端服务 ...

  3. [转帖]【MySQL+keepalived】用keepalived实现MySQL主主模式的高可用

    [MySQL+keepalived]用keepalived实现MySQL主主模式的高可用 https://www.jianshu.com/p/8694d07595bc 一.实验说明 MySQL主主模式 ...

  4. 通过keepalived搭建MySQL双主模式的高可用集群系统

    1. 配置MySQL双主模式 1.修改my.cnf配置文件 默认情况下,MySQL的配置文件是/etc/my.cnf,在配置文件的[mysqld]段添加如下内容: server-id=1 log-bi ...

  5. 使用Keepalived实现Nginx的双机主备高可用

    1.概述 前面我们聊过使用 Nginx 为 后端Tomcat 做负载均衡.高可用,但是这时Nginx又成了单点,如果Nginx不幸挂掉,整个网站便无法访问. 此时我们就会用到另一个软件 -- Keep ...

  6. MySQL集群架构:MHA+MySQL-PROXY+LVS实现MySQL集群架构高可用/高性能-技术流ken

    MHA简介 MHA可以自动化实现主服务器故障转移,这样就可以快速将从服务器晋级为主服务器(通常在10-30s),而不影响复制的一致性,不需要花钱买更多的新服务器,不会有性能损耗,容易安装,不必更改现有 ...

  7. docker swarm使用keepalived+haproxy搭建基于percona-xtradb-cluster方案的高可用mysql集群

    一.部署环境 序号 hostname ip 备注 1 manager107 10.0.3.107 centos7;3.10.0-957.1.3.el7.x86_64 2 worker68 10.0.3 ...

  8. haproxy + keepalived 实现web 双主模型的高可用负载均衡

    参考文章 http://xz159065974.blog.51cto.com/8618592/1405812 http://blog.chinaunix.net/uid-25266990-id-398 ...

  9. [原创]用python检测LVS real server状态实现HTTP高可用

    import httplib import os import time def check_http(i): try: conn=httplib.HTTPConnection(i, 80, time ...

随机推荐

  1. badblocks - 查询设备的坏区块

    语法(SYNPSIS) badblocks [ -svwnf ] [ -b block-size ] [ -c blocks_at_once ] [ -i input_file ] [ -o outp ...

  2. console.log()与console.dir()

    console.log()可以取代alert()或document.write(),在网页脚本中使用console.log()时,会在浏览器控制台打印出信息. console.dir()可以显示一个对 ...

  3. VirtualBox中的Linux读取Windows共享目录

    1.安装VirtualBox的增强功能.菜单 -> 设备 -> 安装增强功能此时在Linux中会载入安装包,用管理员权限运行安装即可. 2.在VirtualBox设置共享目录.设置 -&g ...

  4. NET VBCSCompiler.exe占用100%,造成项目卡顿的的解决方法

    1)服务器环境 最低配 的window server 2008 r2, 配置低容易发现问题‘ 2)事件描述 :项目打开缓慢,查询列表卡顿 3)问题分析:排除代码问题, ->打开服务器任务管理器 ...

  5. Android获取屏幕的大小与密度的代码

    Android项目开发中很多时候需要获取手机屏幕的宽高以及屏幕密度来进行动态布局,这里总结了三种获取屏幕大小和屏幕密度的方法 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ...

  6. 自动下载相对应的jar包

    一.去到需要的 maven下载地址 http://mvnrepository.com/artifact/org.apache.struts/struts2-core/2.5.13 二.然后去到 pom ...

  7. 零基础入门学习Python(13)--元组:戴上了枷锁的列表

    前言 这节课我们讨论主题是元祖:我们有个小标题戴上了枷锁的列表 我们都知道早在300多年前,孟德斯鸠在变法的时候说过,一切拥有权力的人都容易被滥用权力,这是万古不变的一条经验.但是呢,凡是拥有大权利的 ...

  8. linux ping-测试主机之间网络的连通性

    博主推荐:更多网络测试相关命令关注 网络测试  收藏linux命令大全 ping命令用来测试主机之间网络的连通性.执行ping指令会使用ICMP传输协议,发出要求回应的信息,若远端主机的网络功能没有问 ...

  9. Mysql:sql语句

    练习的表可以在博客的文件中下载 基础知识: 1.数据库的连接 mysql -u -p -h -u 用户名 -p 密码 -h host主机 2:库级知识 2.1 显示数据库: show database ...

  10. 细说php第八章笔记(初稿)

    8.1 函数的定义      函数是被命名的:      函数是独立的:      函数执行特定的任务:      函数可以用将一个返回值返回给调用他的程序 函数的优越性      提高程序的重用性 ...