在AWS Ningxia区域实践FortiGate Cross-AZ
基本架构图如下:
两台FortiGate可以部署在不同的AZ同时工作,如果其中一台出现故障可以自动切换路由表下一跳,实现自动切换。
自动切换通过两个逻辑触发Lambda脚本执行修改路由表
1. Cloud watch event 周期性执行Lambda脚本
2. FortiGate发现故障可以触发事件发送给API Gateway,执行Lambda脚本

宁夏区域部署Cloudformation脚本

填写VPC子网信息

填写instance类型及keypair等信息

使用默认的option配置

预览总体配置,部署Stack

通过Cloud formation查看部署过程
5-10分钟后,所有的服务都创建成功

两台FortiGate自动创建成功

通过EIP登录到两台FortiGate,默认用户名admin,密码instance id

登录后修改初始密码

由于BYOL的镜像,我们需要手动上传license,上传成功后,FortiGate会自动重启

启动后的FortiGate无需额外配置,基本的切换配置已经预配置在其中
FGA

FGB

路由表信息
AZ1路由表与FGT1网卡ID


AZ2路由表与FGT2网卡ID


切换测试
正常情况下Cloud watch log中会显示两个FortiGate的状态都为true状态

当FGA故障,可以看到FortiGate状态变为False,并有路由表切换的详细情况

当FortiGate恢复后,会自动回切路由表

由于Cloud watch event的监控间隔为1分钟,如处于健康检查监控间隙出现故障,就需要FortiGate发起故障切换请求

60秒定期检查间隔,防火墙主动触发路由表切换

在FortiGate上的debug信息显示链路检查失败,触发aws-lambda的动作

总结
Ningxia区域使用CFT部署还是需要修改一下我们原生的脚本,现在在中国的region中可以使用template快速在现有的VPC中部署FortiGate还是方便了不少。
FortiGate在同一个AZ中本来就可以实现HA ,Cross AZ的解决方案大大增加了FortiGate在AWS环境中的适应性。

浙公网安备 33010602011771号