双主机双实例主从互备模型搭建

一、准备内容

在本实例中,主要实现的是两台主机,各跑两个服务,其中服务A在lb01上为主模式,提供主要服务,在lb02上为从模式,当lb01出现故障时,自动由lb02接管;服务B在lb01服务器上为从模式,当lb02出现故障时,自动由lb01接管,服务B在lb02上为为主模式,提供主要服务。

需要为两台电脑各自分配相应的IP地址,由于IP地址在实验环境中存在差异,所以在以下的操作中,使用机器名称来确定操作的机器。

lb01:主服务器,IP地址为192.168.56.11

lb02:从服务器,IP地址为192.168.56.12

VIP1(非机器):用于在两台主机上实现浮动的IP,地址为192.168.56.10

VIP2(非机器):用于在两台主机上实现浮动的IP,地址为192.168.56.13

二、安装Keepalived

1)安装Keepalived

# yum install keepalived –y

2)启动Keepalived

# service keepalived start

三、配置Keepalived

1)lb01为主服务器,当前设置固定IP地址为192.168.56.11,IP设置方法请参考其他文档,在此不作说明,对其Keepalived的配置文件修改如下:

# vi /etc/keepalived/keepalived.conf

! Configuration File for keepalived

global_defs {

notification_email {

acassen@firewall.loc

failover@firewall.loc

sysadmin@firewall.loc

}

notification_email_from Alexandre.Cassen@firewall.loc

smtp_server 192.168.200.1

smtp_connect_timeout 30

router_id LVS_DEVEL

}

vrrp_instance VI_1 {


state MASTER

interface eth0

virtual_router_id 51


priority 100

advert_int 1

authentication {

auth_type PASS

auth_pass 1111

}

virtual_ipaddress {

192.168.56.10/24 dev eth0 label eth0:1

}

}

vrrp_instance VI_2 {


state BACKUP

interface eth0

virtual_router_id 52


priority 50

advert_int 1

authentication {

auth_type PASS

auth_pass 1111

}

virtual_ipaddress {

192.168.56.13/24 dev eth0 label eth0:1

}

}

需要重新启动keepalived服务。

# service keepalived restart

2)lb02为从服务器,当前设置固定IP地址为192.168.56.12,IP设置方法请参考其他文档,在此不作说明,对其Keepalived的配置文件修改如下:

# vi /etc/keepalived/keepalived.conf

! Configuration File for keepalived

global_defs {

notification_email {

acassen@firewall.loc

failover@firewall.loc

sysadmin@firewall.loc

}

notification_email_from Alexandre.Cassen@firewall.loc

smtp_server 192.168.200.1

smtp_connect_timeout 30

router_id LVS_DEVEL

}

vrrp_instance VI_1 {


state BACKUP

interface eth0

virtual_router_id 51


priority 50

advert_int 1

authentication {

auth_type PASS

auth_pass 1111

}

virtual_ipaddress {

192.168.56.10/24 dev eth0 label eth0:1

}

}

vrrp_instance VI_2 {


state MASTER

interface eth0

virtual_router_id 52


priority 100

advert_int 1

authentication {

auth_type PASS

auth_pass 1111

}

virtual_ipaddress {

192.168.56.13/24 dev eth0 label eth0:1

}

}

需要重新启动keepalived服务。

# service keepalived restart

3)lb01lb02服及务器Keepalived配置文件说明。

第1行:注释部分;

第3至13行:为报警邮件设置,如果需要此项功能进行设置;

第15行:实例1的名称;

第16行:实例1,主、从服务器状态设置,主为MASTER,从为BACKUP;

第17行:网卡接口名称,这个地方要根据实现的情况填写,本例为eth0;

第18行:实例1虚拟路由ID,配置文件中要唯一,主、从此ID要相同;

第19行:实例1优先级,数字越大优先级越高,主优先级要高于从优先级;

第20行:实例1同步时间间隔,以秒为单位;

第21至24行:实例1权限认证配置;

第25至28行:实例1设置虚拟IP,也就是我们所说的VIP,本例将192.168.56.10这个IP挂接到网卡eth0上,并设置标签名称为eth0:1。

第30行:实例2的名称;

第31行:实例2,主、从服务器状态设置,主为MASTER,从为BACKUP;

第32行:网卡接口名称,这个地方要根据实现的情况填写,本例为eth0;

第33行:实例2虚拟路由ID,配置文件中要唯一,主、从此ID要相同;

第34行:实例2优先级,数字越大优先级越高,主优先级要高于从优先级;

第35行:实例2同步时间间隔,以秒为单位;

第36至39行:实例2权限认证配置;

第40至42行:实例2设置虚拟IP,也就是我们所说的VIP,本例将192.168.56.13这个IP挂接到网卡eth0上,并设置标签名称为eth0:2。

四、测试Keepalived

# 在lb01服务器上查看当前的IP地址。

# ip addr

# 在lb02服务器上查看当前的IP地址。

# ip addr

我们可以看到,在lb01服务器上存在着两个IP,其中包括192.168.56.10及192.168.56.11。而在lb02服务器上同样也存在着两个IP,其中包括192.168.56.12及192.168.56.13。

192.168.56.10及192.168.56.13同样为VIP,各自浮动在自己的主服务器上。

接下来,我们将lb01的keepalived服务停止,看看他会不会自动将IP飘移到lb02上。

# 在lb01服务器上停止Keepalived服务,并查看当前的IP地址。

# service keepalived stop

# ip addr

# 在lb02服务器上查看当前的IP地址。

# ip addr

接下来,我们将lb02的keepalived服务启动,停止lb01的keepalived服务,看看他会不会自动将各自的IP飘移对应服务器上。

# 在lb01服务器上的操作。

# service keepalived start

# 在lb02服务器上的操作。

# service keepalived stop

接下来分别在各自的服务器上查看IP地址

# 在lb01服务器上的操作。

# ip addr

# 在lb02服务器上的操作。

# ip addr

通过这次测试,我们可以看到,两台主机,相互作为主、从,为对方提供备用服务。到此我们的双主机双实例主、从互备模型搭建就结束了。

转载请附上原文出处链接及本声明
李老师的博客 » 双主机双实例主从互备模型搭建

发表评论

提供最优质的文章集合

立即查看 了解详情