功能价值:本地核心交换机直接代答ARP请求,无需跨中心的ARP广播
两个数据中心的核心交换机之间,通过2根裸光纤相连,两根链路配置成聚合端口;
双中心通过VRRP实现中心间网关双活;
中心间进行ARP信息同步,当服务区有ARP请求的时候,由本中心代答。
一、VRRP双活:
为了实现双活数据中心,首先需要保证两中心间具有相同的网关信息,这样当虚机迁移的时候,可以不要进行对外IP地址的修改。
措施:1)网关不能向网关互连链路发送VRRP报文,不进行主备协商,两边都是主,到达双活网关主;
2)网关不能向网关互连链路发送携带虚拟IP地址的ARP报文,防止IP冲突。
实现效果:两个数据中心的网关具有不同的实IP地址和实MAC地址,具有相同的虚拟IP地址和虚拟MAC地址。在服务器上配置的网关IP地址是网关的虚拟IP地址,服务器就近选择处于同一个数据中心的网关提供转发服务。
二:ARP代答
1、VM1、VM2在DC1上线,VM3、VM4在DC2上线,本地学习到ARP信息后同步到对端中心的核心交换机中;
2、VM2需要和VM4通信,发出VM4
IP的ARP请求;
3、DC1的核心交换机收到ARP请求后,发现已有VM4的信息,直接进行回复;
4、VM2可以发送报文到VM4中;反向的通信流程与上述相同
三:路由设计
场景问题:
1、正常情况下,业务从本中心出口发布;
2、当业务发生迁移的时候,业务会出现绕行的现象,产生次优路径。例如:当VM1迁移到DC2时,由于VM1网段默认接入的数据中心是DC1,这样会出现数据绕行(DC1->DC2->VM1)。
处理方式:
1、初始情况通过网络路由代价来决定路由出口
初始情况下,在业务默认接入点配置网络路由,通过路由代价,保证业务优先从该中心出去。同时在业务非默认接入的数据中心的网关设备上预配置VM1的主机路由。
2、虚机迁移,通过主机路由优先级高于网络路由来决定路由出口
当VM1从DC1迁移到DC2时,VM1会发出ARP和RARP报文,DC2检测到VM1,则DC2网关设备将对VM1对应主机路由信息注入路由协议(OSPF/BGP/RIP等)中。
假设VM1主机路由为10.1.1.20/32, 在DC2网关设备上配置OSPF协议重分发静态子网路由,OSPF协议就会把主机路由10.1.1.20/32从DC2的中心出口链路发布到中心接入路由器,
用户通过中心接入路由器访问VM1的主机路由10.1.1.20/32时就会走DC2数据中心这一侧。
四:BFD Track
1问题原因:
当出现DC1和接入路由器的链路断开时,原本由DC1出去的业务需要走DC2。
因此当某个中心出口链路断开时,要把所有网关切换到另一个正常的中心去,由正常的中心来提供网关服务。
实现方式:
1、链路检测,双活网关切换
DC1网关使用BFD协议监视DC1中心出口链路的状态,当发现出口链路断开时,VRRP协议把网关切换成无效模式,
即网关从MASTER状态直接切换为INIT状态,然后DC2网关把VRRP从双活模式切换成单网关模式,由DC2网关做MASTER。
例如:假设GW1和GW2在两个中心都部署双活网关,在接入路由器命中10.1.1.0/24路由走的默认中心是DC1,
命中20.1.1.0/24路由走的默认中心是DC2,当DC1的出口链路断开后,就会在DC1把GW1和GW2的网关都置为无效,不再发布路由了。
2、路由撤销
由于DC1的所有网关被置为无效,GW1和GW2在DC1发布的所有路由都要撤销掉,即通告OSPF协议删除DC1网关通告的所有路由,
通告邻居删除路由,层层传递到接入路由器去删除DC1发布的所有路由。
之前命中10.1.1.0/24路由走的默认中心是DC1,由于DC1出口链路断开会撤销掉发布的所有路由,所以命中10.1.1.0/24路由只能走DC2发布的。
终端发往服务器的IP报文流被牵引到DC2侧,DC2网关转发给DC1网关,DC1网关二层交换到服务器。
3、故障恢复
当DC1出口链路恢复正常时,VRRP协议把网关切换成双活模式,状态从INIT切换成Master,恢复优先级,
然后通知DC2网关把VRRP协议从单网关模式切换成双活模式,这时DC1也可以再发布GW1和GW2的路由了,流量又恢复故障前的。