Route Health Injection(RHI)基础配置

本文涉及的产品
云数据库 Redis 版,社区版 2GB
推荐场景:
搭建游戏排行榜
简介:

RHI技术可以将虚拟IP(VIP)地址的主机路由信息发布到的ospf或BGP-4这样的标准动态路由中,将VIP和服务器运行健康状况与到互联网的动态路由相结合,通过路由选路实现多站点冗余的解决方案。

举例说明
例如某web服务通过负载均衡的VIP:10.4.1.1在站点site1对外提供服务,同时灾备中心站点site2的对外服务地址也是VIP:10.4.1.1,site1和site2都部署A10的应用交付设备AX,此时可以通过RHI技术实现故障期间的站点切换。AX负载均衡设备通过RHI将10.4.1.1/32的路由信息注入到动态协议中,site1与site2的发信息只有metric值不同,这里我们将site1的metric值设置为20,site2的metric值设置为30,此时查看核心路由器的路由表如下图显示,路由表中目的地址为10.4.1.1/32的下一跳为10.1.1.254。OSPF协议学习到了来自site1和site2的路由信息,由于site的路由信息拥有更小的metric值,所以site1发布的路由信息出现在路由表中。
 

当site1的应用出现故障时,10.4.1.1/32的下一跳为10.1.1.254的路由信息将会失效,而10.4.1.1/32的下一跳为10.2.1.254的路由信息将出现在路由表中。通过RHI实现完成主备站点的切换,此过程无需GGLB的智能DNS功能。应用交付设备的RHI优势在于,对于VIP的健康检测,可以做到针对7层应用的检测和基于脚本的定制化检测,应用层的故障能够及时被发现,并直接影响动态路由表的路由信息,实现业务系统的高可用。
 

配置实例:
上述案例中的配置可以在AX设备上通过网页管理和命令行管理两种方式完成,本文使用CLI进行配置。案例中使用动态路由协议为OSPF协议。
这里有一点值得注意:RHI要求动态路由协议能够接受主机路由,而很多运营商的启用BGP路由是不接收主机路由的。
 
将带有标记的VIP的主机路由信息注入OSPF中
AX2500(config)# router ospf
AX2500(config)# ospf router-id 10.1.1.254
AX2500(config)#  redistribute vip only-flagged metric 20
AX2500(config)# network 10.1.1.0 0.0.0.255 area 0
标记将注入到动态路由表中VIP地址
AX2500(config)# slb virtual-server VIP-1 10.4.1.1
AX2500(config)#  disable when-all-ports-down
AX2500(config)#  redistribution-flagged
AX2500(config)# port 80 tcp
AX2500(config)# source-nat pool SNAT-Pool1
AX2500(config)# service-group web
 
上图案例中两台AX配置如下:
AX2500-1 Configuration:
interface ve 2
ip address 10.1.1.254 255.255.255.0
ip ospf cost 1
!
ip route 0.0.0.0 /0 10.1.1.250
!
router ospf
ospf router-id 10.1.1.254
redistribute vip only-flagged metric 20
network 10.1.1.0 0.0.0.255 area 0
!
ip nat pool SNAT-Pool1 10.1.1.10 10.1.1.10 netmask /24
!
slb server real1 10.1.1.1
port 80 tcp
!
slb server real2 10.1.1.2
port 80 tcp
!
slb service-group web tcp
member real1:80
member real2:80
!
slb virtual-server VIP-1 10.4.1.1
disable when-all-ports-down
redistribution-flagged
port 80 tcp
source-nat pool SNAT-Pool1
service-group web
!
AX2500-2 Configuration:
interface ve 2
ip address 10.2.1.254 255.255.255.0
ip ospf cost 1
!
ip route 0.0.0.0 /0 10.2.1.250
!
router ospf
ospf router-id 10.2.1.254
redistribute vip only-flagged metric 30
network 10.2.1.0 0.0.0.255 area 0
!
ip nat pool SNAT-Pool1 10.2.1.10 10.2.1.10 netmask /24
!
slb server real1 10.2.1.1
port 80 tcp
!
slb server real2 10.2.1.2
port 80 tcp
!
slb service-group web tcp
member real1:80
member real2:80
!
slb virtual-server VIP-1 10.4.1.1
disable when-all-ports-down
redistribution-flagged
port 80 tcp
source-nat pool SNAT-Pool1
service-group web
!
 
通过上述配置可以实现主站点出现应用故障时,快递切换到备用站点,整体配置简单,但对主备站点的动态路由环境有一定要求。 
 
(ZWM)

本文转自 virtualadc 51CTO博客,原文链接:
http://blog.51cto.com/virtualadc/948878

相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
相关文章
|
6月前
|
负载均衡 Java Nacos
Nacos和GateWay路由转发NotFoundException: 503 SERVICE_UNAVAILABLE “Unable to find
Nacos和GateWay路由转发NotFoundException: 503 SERVICE_UNAVAILABLE “Unable to find
176 0
|
7月前
|
设计模式 测试技术
使用 Facade Service 暴露 commands
使用 Facade Service 暴露 commands
26 0
处理SAP gateway service使用过程中遇到的400 error - Malformed URI literal syntax
Created by Jerry Wang on Nov 18, 2014 通过Active Source找到抛error message的代码的具体位置:
349 0
处理SAP gateway service使用过程中遇到的400 error - Malformed URI literal syntax
SAP Cloud for Customer里的服务请求(Service Request)路由(Route)实现原理
SAP Cloud for Customer里的服务请求(Service Request)路由(Route)实现原理
SAP Cloud for Customer里的服务请求(Service Request)路由(Route)实现原理
directly test Gateway frontend service in AG3 SICF
Created by Wang, Jerry, last modified on Jan 17, 2015
106 0
directly test Gateway frontend service in AG3 SICF
如何处理SAP CRM Web Service错误 - Virtual Interface Method XXXX not supported
如何处理SAP CRM Web Service错误 - Virtual Interface Method XXXX not supported
157 0
如何处理SAP CRM Web Service错误 - Virtual Interface Method XXXX not supported
处理gateway service使用过程中遇到的400 error - Malformed URI literal syntax
Created by Jerry Wang on Nov 18, 2014 通过Active Source找到抛error message的代码的具体位置:
255 0
处理gateway service使用过程中遇到的400 error - Malformed URI literal syntax
|
存储 缓存 安全
Envoy源码分析之Stats Scope
# Scope 在上一篇文章中提到Envoy中通过`Scope`来创建`Metrics`,为什么要搞一个`Scope`的东西出来呢?`Scope`诞生的目的其实是为了更好的管理一组`stats`,比如关于集群的`stats`,这类`stats`的名称有个特点就是都是以`cluster.`作为前缀,那么可以以`cluster.`来创建一个`Scope`,这样就可以通过这个`Scope`来管理
1008 0