准备

  准备两台机器,IP地址信息如下:

host1: 192.168.56.103
host2: 192.168.56.104

  为了测试需要,分别在两台机器上安装apache并启动httpd服务,使下面两个url均可访问:

  •   http://192.168.56.103
  •   http://192.168.56.104

安装keepalived

  在两台机器上分别安装keepalived

sudo yum install -y keepalived

配置keepalived

host1上keepalived 配置

$ cat /etc/keepalived/keepalived.conf
vrrp_instance VI_1 {
state MASTER
interface eth2
virtual_router_id
priority
advert_int
authentication {
auth_type PASS
auth_pass
}
virtual_ipaddress {
192.168.56.105
}
}

host2上keepalived 配置

$ cat /etc/keepalived/keepalived.conf
vrrp_instance VI_1 {
state MASTER
interface eth2
virtual_router_id
priority
advert_int
authentication {
auth_type PASS
auth_pass
}
virtual_ipaddress {
192.168.56.105
}
}

启动keepalived 服务

$ sudo service keepalived start
$ sudo chkconfig keepalived on

测试

  服务启动后,先访问下面的虚拟地址访问http服务器

http://192.168.56.105

查看IP地址信息

host1上IP地址信息

$ ip addr show eth2
: eth2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu qdisc pfifo_fast state UP qlen
link/ether ::::: brd ff:ff:ff:ff:ff:ff
inet 192.168.56.103/ brd 192.168.56.255 scope global eth2
inet 192.168.56.105/ scope global eth2
inet6 fe80::a00:27ff:fe32:/ scope link
valid_lft forever preferred_lft forever

  其中可以看到inet 192.168.56.105/32 scope global eth2,说明现在host1是作为虚拟IP的master来运行的。

host2上IP地址信息

$ ip addr show eth2
: eth2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu qdisc pfifo_fast state UP qlen
link/ether :::ec::7b brd ff:ff:ff:ff:ff:ff
inet 192.168.56.104/ brd 192.168.56.255 scope global eth2
inet6 fe80::a00:27ff:feec:907b/ scope link
valid_lft forever preferred_lft forever

  此时host2上ip地址信息中不包含虚拟IP"192.168.56.105"信息。

验证IP地址Failover

  现在手动停止host1上的keepalived服务

$ sudo service keepalived stop

host1上IP地址信息

$ ip addr show eth2
: eth2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu qdisc pfifo_fast state UP qlen
link/ether ::::: brd ff:ff:ff:ff:ff:ff
inet 192.168.56.103/ brd 192.168.56.255 scope global eth2
inet6 fe80::a00:27ff:fe32:/ scope link
valid_lft forever preferred_lft forever

  此时host1上ip地址信息中不再包含虚拟IP"192.168.56.105"信息。

host2上IP地址信息

$ ip addr show eth2
: eth2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu qdisc pfifo_fast state UP qlen
link/ether :::ec::7b brd ff:ff:ff:ff:ff:ff
inet 192.168.56.104/ brd 192.168.56.255 scope global eth2
inet 192.168.56.105/ scope global eth2
inet6 fe80::a00:27ff:feec:907b/ scope link
valid_lft forever preferred_lft forever

  现在可以看到host2上ip地址信息中已经包含虚拟IP"192.168.56.105"信息了。

  此时如果再把host1上的keepalived服务启动,会发现虚拟IP"192.168.56.105"又重新绑定到host1上了。

转载自《使用 keepalived 设置虚拟 IP 环境

  

【转】使用keepalived设置虚拟IP示例的更多相关文章

  1. 使用 keepalived 设置虚拟 IP 环境(转载)

    使用 keepalived 设置虚拟 IP 环境 原文地址:https://blog.csdn.net/kongxx/article/details/73173762 使用 keepalived 设置 ...

  2. keepalived配虚拟ip(vip)的作用

    keepalived是以VRRP协议为实现基础的,VRRP全称Virtual Router Redundancy Protocol,即虚拟路由冗余协议. 虚拟路由冗余协议,可以认为是实现路由器高可用的 ...

  3. keepalvied虚拟ip安装设置

    keepalvied 虚拟ip 第一步:主服务器上设置虚拟ip (也可以不设置虚拟ip,keepalived启动的时候会自动设置) ifconfig ens33:1 192.168.136.131 n ...

  4. 虚拟IP原理及使用

    一.前言 高可用性 HA(High Availability)指的是通过尽量缩短因日常维护操作(计划)和突发的系统崩溃(非计划)所导致的停机时间,以提高系统和应用的可用性.HA 系统是目前企业防止核心 ...

  5. 微服务管理平台nacos虚拟ip负载均衡集群模式搭建

    一.Nacos简介 Nacos是用于微服务管理的平台,其核心功能是服务注册与发现.服务配置管理. Nacos作为服务注册发现组件,可以替换Spring Cloud应用中传统的服务注册于发现组件,如:E ...

  6. LoadRunner 使用虚拟IP测试流程

    LoadRunner 使用虚拟IP测试流程 LoadRunner 使用IP欺骗的原因 . 当某个IP的访问过于频繁,或者访问量过大是,服务器会拒绝访问请求,这时候通过IP欺骗可以增加访问频率和访问量, ...

  7. Center os6.5设置静态ip

    DEVICE="eth0"BOOTPROTO=staticHWADDR="00:0C:29:95:89:35"IPV6INIT="yes"N ...

  8. Keepalived虚拟ip

    linux下如何设置vip(虚拟ip) 在做HA的时候需要为服务器设计虚拟IP,也就是一个主机对应多个IP地址?刚听起来好神奇,原来这样也是可能的看了下面的这个链接 自己配了一下http://hi.b ...

  9. linux下如何设置vip(虚拟ip)

    在做HA的时候需要为服务器设计虚拟IP,也就是一个主机对应多个IP地址?刚听起来好神奇,原来这样也是可能的看了下面的这个链接 自己配了一下http://hi.baidu.com/pbottle/ite ...

随机推荐

  1. EF Core 多对多配置

    1.配置2个数据表 T_Authors ,T_Books 2.新建控制台项目,安装EF驱动 PM> Install-Package Pomelo.EntityFrameworkCore.Mysq ...

  2. Java面试准备之多线程

    什么叫线程安全?举例说明 多个线程访问某个类时,不管运行时环境采用何种调度方式或者这些线程将如何交替执行,并且在主调代码中不需要任何额外的同步或者协同,这个类都能表现出正确的行为,那么就称这个类是线程 ...

  3. Entity Framework Core系列之实战(ASP.NET Core MVC应用程序)

    本示例演示在ASP.NET 应用程序中使用EF CORE创建数据库并对其做基本的增删改查操作.当然我们默认你的机器上已经安装了.NET CORE SDK以及合适的IDE.本例使用的是Visual St ...

  4. AtomicInteger学习

    面试时被问到了,补下 import java.util.concurrent.atomic.AtomicInteger; /** * Created by tzq on 2018/7/15. */ p ...

  5. SPOJ-LCS Longest Common Substring 【后缀自动机】

    题目分析: 用没出现过的字符搞拼接.搞出right树,找right集合的最小和最大.如果最小和最大分居两侧可以更新答案. 代码: #include<bits/stdc++.h> using ...

  6. vuetify | vue | 文件上传组件 | file | upload | form input[type="file"]

    今天无聊地写vuecli3听歌的时候,遇到了上传文件到Django的自我需求,然后就到vuetify的表单组件里找upload btn,发现居然没有!!! 顿时惊了个呆,要知道之前用element做操 ...

  7. 转:centos 7 安装音频视频解码器

    (原文:https://blog.csdn.net/zhou1519/article/details/39035233/) 1.安装额外的软件源epel和nux-dextop rpm -Uvh htt ...

  8. Kubernetes之Deployment控制器

    Deployment 简介 deployment 是用来管理无状态应用的,面向的集群的管理,而不是面向的是一个不可变的个体,举例:有一群鸭子,要吃掉一个,只需要再放一个新的鸭仔就好了,不会影响什么,而 ...

  9. Tomcat设计模式

    omcat 系统架构与设计模式,第 2 部分 设计模式分析 系列内容: 此内容是该系列 2 部分中的第 2 部分: Tomcat 系统架构与设计模式 门面设计模式 门面设计模式在 Tomcat 中有多 ...

  10. EF CodeFirst系列(3)---EF中的继承策略(暂存)

    我们初始化数据库一节已经知道:EF为每一个具体的类生成了数据库的表.现在有了一个问题:我们在设计领域类时经常用到继承,这能让我们的代码更简洁且容易管理,在面向对象中有“has  a”和“is a”关系 ...