防火墙高可用性(HA)

您所在的位置:网站首页 防火墙例外是什么意思呀 防火墙高可用性(HA)

防火墙高可用性(HA)

2024-03-01 12:54| 来源: 网络整理| 查看: 265

双机热备

防火墙高可用性也称双机热备,指基于两台设备的高可用性。双机热备的模式分为主备模式和主主模式。

主备模式

主-备方式即指的是一台设备处于某种业务的激活状态(即Active状态),另一台设备处于该业务的备用状态(即Standby状态)。

工作机和备用机通过心跳线连接,备用机实时监视工作机的情况,当工作机出现问题,备用机就接管工作。

在这个状态下,工作防火墙响应ARP请求,并且转发网络流量;备用防火墙不响应ARP请求,也不转发网络流量。主备之间同步状态信息和配置信息。

主主模式

而双主机方式即指两种不同业务分别在两台设备上互为主备状态(即Active-Standby和Standby-Active状态)。

主主模式下,两个防火墙并行工作,都响应ARP请求,并且都转发网络流量。主主模式可以提高数据包处理的吞吐量,平衡网络负载,优化网络性能。

双机热备原理

防火墙的双机热备功能实在虚拟路由冗余协议(VRRP)的基础上扩展而来。VRRP是一种容错协议,它保证当主机的下一条路由出现故障时,由备份路由器自动代替出现故障的路由器完成报文转发任务。

在这里插入图片描述 如上图所示,将局域网内的一组路由器划分为一个VRRP备份组,相当于一个虚拟路由器,这台虚拟路由器有自己的虚拟IP和虚拟MAC。局域网的主机可以将默认网关设置为虚拟IP地址,在主机看来是和虚拟路由器通信的。

在这里插入图片描述 VRRP备份组中的多个路由器会根据管理员制定的VRRP备份组优先级确定各自的状态。优先级高的路由器为Master,其余路由器为Backup。

Master 周期性向备份组内所有 Backup 发送 VRRP 通告报文,以公布其配置信息(优先级等)和工作状况。

Keepalived

Keepalived是基于vrrp协议的一款高可用软件。但是它一般不会单独出现,而是与其它负载均衡技术(如lvs、haproxy、nginx)一起工作来达到集群的高可用。

Keepalived + LVS

在这里插入图片描述

配置步骤:

安装软件

在LVS-1和LVS-2两台主机上安装ipvsadm和keepalived

yum install ipvsadm keepalived -y

配置Keepalived

keepalived底层有关于IPVS的功能模块,可以直接在其配置文件中实现LVS的配置,不需要通过ipvsadm命令再单独配置。

Master配置:/etc/keepalived/keepalived.conf

global_defs { router_id LVS        ## 不一定要与主机名相同,也不必与BACKUP的名字一致 } vrrp_instance VI_1 {       state MASTER        ## LVS-1配置了为主,另外一台LVS-2配置为BACKUP interface eth0       ## 注意匹配网卡名 virtual_router_id 51    ## 虚拟路由ID(0-255),在一个VRRP实例中主备服务器ID必须一样 priority 150        ## 优先级值设定:MASTER要比BACKUP的值大 advert_int 3        ## 通告时间间隔:单位秒,主备要一致 authentication {      ##认证机制 auth_type PASS     ## 默认PASS; 有两种:PASS或AH  auth_pass 1111     ## 默认1111; 可多位字符串,但仅前8位有效 } virtual_ipaddress { 138.138.82.222     ## 虚拟IP;可多个,写法为每行一个 } } virtual_server 138.138.82.222 80 { delay_loop 3       ## 设置健康状态检查时间 lb_algo rr        ## 调度算法,这里用了rr轮询算法,便于后面测试查看 lb_kind DR        ## 这里测试用了Direct Route 模式, # persistence_timeout 1  ## 持久连接超时时间,先注释掉,不然在单台上测试时,全部会被lvs调度到其中一台Real Server protocol TCP real_server 138.138.82.12 80 { weight 1 TCP_CHECK { connect_timeout 10    ##设置响应超时时间 nb_get_retry 3       ##设置超时重试次数 delay_before_retry 3   ##设置超时重试间隔时间 connect_port 80 } } real_server 138.138.82.13 80 { weight 1 TCP_CHECK { connect_timeout 10 nb_get_retry 3 delay_before_retry 3 connect_port 80 } } }

BACKUP配置:/etc/keepalived/keepalived.conf

global_defs { router_id LVS } vrrp_instance VI_1 { state BACKUP interface eth0 virtual_router_id 51 priority 120 advert_int 3 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 138.138.82.222 } } virtual_server 138.138.82.222 80 { delay_loop 3 lb_algo rr lb_kind DR # persistence_timeout 1 protocol TCP real_server 138.138.82.12 80 { weight 1 TCP_CHECK { connect_timeout 10 nb_get_retry 3 delay_before_retry 3 connect_port 80 } } real_server 138.138.82.13 80 { weight 1 TCP_CHECK { connect_timeout 10 nb_get_retry 3 delay_before_retry 3 connect_port 80 } } }

参考: Keepalived+Nginx+Apache主备及双活搭建测试



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3