准备

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

  1. host1 192.168.56.103
  2. host2 192.168.56.104

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

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

安装keepalived

  在两台机器上分别安装keepalived

  1. sudo yum install -y keepalived

配置keepalived

host1上keepalived 配置

  1. $ cat /etc/keepalived/keepalived.conf
  2. vrrp_instance VI_1 {
  3. state MASTER
  4. interface eth2
  5. virtual_router_id
  6. priority
  7. advert_int
  8. authentication {
  9. auth_type PASS
  10. auth_pass
  11. }
  12. virtual_ipaddress {
  13. 192.168.56.105
  14. }
  15. }

host2上keepalived 配置

  1. $ cat /etc/keepalived/keepalived.conf
  2. vrrp_instance VI_1 {
  3. state MASTER
  4. interface eth2
  5. virtual_router_id
  6. priority
  7. advert_int
  8. authentication {
  9. auth_type PASS
  10. auth_pass
  11. }
  12. virtual_ipaddress {
  13. 192.168.56.105
  14. }
  15. }

启动keepalived 服务

  1. $ sudo service keepalived start
  2. $ sudo chkconfig keepalived on

测试

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

  1. http://192.168.56.105

查看IP地址信息

host1上IP地址信息

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

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

host2上IP地址信息

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

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

验证IP地址Failover

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

  1. $ sudo service keepalived stop

host1上IP地址信息

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

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

host2上IP地址信息

  1. $ ip addr show eth2
  2. : eth2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu qdisc pfifo_fast state UP qlen
  3. link/ether :::ec::7b brd ff:ff:ff:ff:ff:ff
  4. inet 192.168.56.104/ brd 192.168.56.255 scope global eth2
  5. inet 192.168.56.105/ scope global eth2
  6. inet6 fe80::a00:27ff:feec:907b/ scope link
  7. 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. C++ 标准库之 iomanip 、操作符 ios::fixed 以及 setprecision 使用的惨痛教训经验总结

    本菜鸡自从退役之后就再也没怎么敲过 C++ 代码,在 C++ 语言下,求解关于浮点数类型的问题时,之前有碰到类似的情况,但是似乎都没有卡这块的数据,基本上用一个 setprecision 函数保留几位 ...

  2. linux下开启、关闭、重启mysql服务命令

    一. 启动1.使用 service 启动:service mysql start2.使用 mysqld 脚本启动:/etc/inint.d/mysql start3.使用 safe_mysqld 启动 ...

  3. MySQL索引原理及慢查询优化(转自:美团tech)

    背景 MySQL凭借着出色的性能.低廉的成本.丰富的资源,已经成为绝大多数互联网公司的首选关系型数据库.虽然性能出色,但所谓“好马配好鞍”,如何能够更好的使用它,已经成为开发工程师的必修课,我们经常会 ...

  4. 利用Python中SocketServer 实现客户端与服务器间非阻塞通信

    利用SocketServer模块来实现网络客户端与服务器并发连接非阻塞通信 版权声明 本文转自:http://blog.csdn.net/cnmilan/article/details/9664823 ...

  5. LeetCode-876 链表的中间结点

    对于链表的中某个位置结点的定位一般都会用到两个链表结点指针,例如链表倒数第K个结点问题使用的是先后指针,该题中用到的快慢指针. 本题的具体解法就是快指针走两步.慢指针走一步知道遍历完结点,重点是分清题 ...

  6. BugKu 这是一张单纯的图片

    http://123.206.87.240:8002/misc/1.jpg FLAG在哪里?? 吐槽一下这图片一点也不单纯 用010 打开后发现最后附着一段意义不明的字符,file命令也识别不出来 题 ...

  7. 【题解】放球游戏B

    题目描述 校园里在上活动课,Red和Blue两位小朋友在玩一种游戏,他俩在一排N个格子里,自左到右地轮流放小球,每个格子只能放一个小球.第一个人只能放1个球,之后的人最多可以放前一个人的两倍数目的球, ...

  8. 第十八节、基于传统图像处理的目标检测与识别(HOG+SVM附代码)

    其实在深度学习中我们已经介绍了目标检测和目标识别的概念.为了照顾一些没有学过深度学习的童鞋,这里我重新说明一次:目标检测是用来确定图像上某个区域是否有我们要识别的对象,目标识别是用来判断图片上这个对象 ...

  9. Mock5 moco框架中post请求如何加入cookies

    接着Mock4中的json文件,再往里面添加一个post 请求. 前面写法不变,后面的请求数据用的是json关键字,返回的response也是json的格式 [ { "description ...

  10. null引用,有时候是实现了父类的方法,方法体没写任何实现

    null引用,有时候是实现了父类的方法,方法体没写任何实现 /* @Override public void attachView(MonthListContract.View view) { } * ...