三层路由高可用指的是网络协议模型中网络层的路由高可用功能。基于虚拟IP来实现。对应的有四层传输层 LVS 是通过IP和端口实现。七层应用层F5可以通过URL实现。
场景:
3台Linux服务器,2台server部署了服务,剩余1台作为应用client
实现:
在3台Linux服务器上全部部署BGP服务,将3台机器规划到同一个BGP区域中,从而实现让client能够动态学习路由表。在2台server上,都配置一个10.100.1.1这个IP,Client通过10.100.1.1这个IP访问服务,平时A服务负责处理client的请求,client上路由表是将10.100.1.1的数据发送到A服务器上,当A服务器出现问题时,client就会动态更新自己的路由表,将路由表更新到B服务器上。从而实现高可用
服务器端A:192.168.1.3 /B:192.168.1.4皆手动设置虚拟回环IP为10.0.0.1,client端C通过bgp学习的时候,会生成路由表 根据最短路径算法 选取路径更优的服务端地址 假设A更优 新建路由表10.0.0.1 -- 192.168.1.3 。使用过程中 ,BGP网络内会不停的相互发送keeplive数据包 若C往A发送数据包结果为失败 即A宕机 ,则C会删除路由表 10.0.0.1 -- 192.168.1.3。并重新学习 新建路由表 10.0.0.1 -- 192.168.1.4 使得C在服务器A宕机的情况下选择热备的服务器B进行数据交互 ,避免A宕机引发的问题。