zoukankan      html  css  js  c++  java
  • 使用 keepalived 设置虚拟 IP 环境(转载)

    使用 keepalived 设置虚拟 IP 环境

    原文地址:https://blog.csdn.net/kongxx/article/details/73173762

    使用 keepalived 设置虚拟 IP 环境
    准备
    准备两个机器,IP地址信息如下:

    host1: 192.168.56.103
    host2: 192.168.56.104
    1
    2
    为了测试需要,分别在两个机器上安装apache并启动httpd服务,使下面两个url均可访问
    - http://192.168.56.103
    - http://192.168.56.104

    安装 keepalived
    在两台机器上分别安装 keepalived

    $ sudo yum install -y keepalived
    1
    配置 keepalived
    host1 上 keepalived 配置
    $ cat /etc/keepalived/keepalived.conf
    vrrp_instance VI_1 {
    state MASTER
    interface eth2
    virtual_router_id 51
    priority 101
    advert_int 1
    authentication {
    auth_type PASS
    auth_pass 123456
    }
    virtual_ipaddress {
    192.168.56.105
    }
    }
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    host2 上 keepalived 配置
    $ cat /etc/keepalived/keepalived.conf
    vrrp_instance VI_1 {
    state MASTER
    interface eth2
    virtual_router_id 51
    priority 100
    advert_int 1
    authentication {
    auth_type PASS
    auth_pass 123456
    }
    virtual_ipaddress {
    192.168.56.105
    }
    }
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    启动 keepalived 服务
    $ sudo service keepalived start
    $ sudo chkconfig keepalived on
    1
    2
    测试
    服务启动后,先访问下面的虚拟地址访问http服务器

    http://192.168.56.105
    1
    查看IP地址信息
    host1 上 IP 地址信息

    $ ip addr show eth2
    3: eth2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 08:00:27:32:83:82 brd ff:ff:ff:ff:ff:ff
    inet 192.168.56.103/24 brd 192.168.56.255 scope global eth2
    inet 192.168.56.105/32 scope global eth2
    inet6 fe80::a00:27ff:fe32:8382/64 scope link
    valid_lft forever preferred_lft forever
    1
    2
    3
    4
    5
    6
    7
    其中可以看到 inet 192.168.56.105/32 scope global eth2,说明现在host1是作为虚拟IP的master来运行的。
    host2 上 IP 地址信息

    $ ip addr show eth2
    3: eth2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 08:00:27:ec:90:7b brd ff:ff:ff:ff:ff:ff
    inet 192.168.56.104/24 brd 192.168.56.255 scope global eth2
    inet6 fe80::a00:27ff:feec:907b/64 scope link
    valid_lft forever preferred_lft forever
    1
    2
    3
    4
    5
    6
    此时host2上ip地址信息中不包含虚拟IP “192.168.56.105” 信息。
    验证 IP 地址 Failover
    现在手动停止host1上的 keepalived 服务

    $ sudo service keepalived stop
    1
    host1 上 IP 地址信息

    $ ip addr show eth2
    3: eth2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 08:00:27:32:83:82 brd ff:ff:ff:ff:ff:ff
    inet 192.168.56.103/24 brd 192.168.56.255 scope global eth2
    inet6 fe80::a00:27ff:fe32:8382/64 scope link
    valid_lft forever preferred_lft forever
    1
    2
    3
    4
    5
    6
    此时 host1 上 ip 地址信息中不再包含虚拟IP “192.168.56.105” 信息。
    host2 上 IP 地址信息

    $ ip addr show eth2
    3: eth2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 08:00:27:ec:90:7b brd ff:ff:ff:ff:ff:ff
    inet 192.168.56.104/24 brd 192.168.56.255 scope global eth2
    inet 192.168.56.105/32 scope global eth2
    inet6 fe80::a00:27ff:feec:907b/64 scope link
    valid_lft forever preferred_lft forever
    1
    2
    3
    4
    5
    6
    7
    现在可以看到 host2 上 ip 地址信息中已经包含虚拟IP “192.168.56.105” 信息了。
    此时如果再把 host1 上的 keepalived 服务启动,会发现虚拟IP “192.168.56.105” 又重新绑定到 host1 上了。
    ---------------------
    作者:kongxx
    来源:CSDN
    原文:https://blog.csdn.net/kongxx/article/details/73173762
    版权声明:本文为博主原创文章,转载请附上博文链接!

  • 相关阅读:
    超文本传输协议 HTTP/1.0 Hyptertext Transfer Protocol
    VB.NET中使用代表对方法异步调用
    蚂蚁解道德经(1)[转载]
    vb.net 类的属性的设置和获取问题
    VB.net入门(6):类~构造函数,事件
    什么是Ajax技术
    千里之外
    一个asp.net2005的页面文件调用CSS样式的BUG
    一个.net发送HTTP数据实体的类
    利用ASP发送和接收XML数据的处理方法
  • 原文地址:https://www.cnblogs.com/mkl34367803/p/10014831.html
Copyright © 2011-2022 走看看