第1章 概述
A10负载均衡和F5负载均衡大致的配置模块和配置思路基本一致,它们和AD的主要差异在链路负载的实现方式上,以及部分不常用模块或功能AD的不支持,本文主要讲述如何将A10的常见负载场景的功能配置转换为AD的配置。
第2章 配置导出
A10配置有两种保存方式,分为系统备份文件和技术支持文件,系统备份文件通常包含所有的配置和各类文件(如证书、aflex脚本、地址集等)以文件类型打包下载,而技术支持文件则为一个单独的文本文件,包括了所有配置和设备当前的状态信息(如配置、设备状态、日志、虚拟服务的健康状态等),但不会包括证书、地址集等外部文件。
建议两个都导出,证书等需要通过系统备份的方式才能导出,方便替换后的证书导入,但是备份系统配置只能备份已保存的启动配置,showtech可导出包含启动配置和当前运行配置,并且showtech方便替换后的虚拟服务等设备状态替换前后对比校验,也方便传输,可直接转给总部专家做配置确认。
两种文件类型导出后打开如下:
系统备份文件:
ShowTech文件:
注意:如果A10为多台,必须保存并同步配置后每台都单独取下配置,除非A10开启并配置了vcs自动同步(如开启,可从任意一台设备上获取一份配置即可),如下图:
2.1WEBUI导出
先登录设备(A10默认账号 admin / a10 )并保存配置后同步配置,配置同步完毕后,再如下导出:
系统备份文件导出:
System > > Maintenance > > Backup > > System 选择本地Local后点击Backup等待浏览器弹窗下载。
ShowTechsupport技术支持文件导出:
点击界面右上角的救生圈按钮,等待浏览器弹窗下载。
注意:先确认A10是否做了设备虚拟化创建了多个分区,配置导出一定要在默认的shared分区下导出才能获取整个设备的所有配置,建议使用WEBUI方式导出。
2.1.12.x版本
2.2CLI导出
1、通过SSH登录A10设备后台,账号密码和前台账号一致,默认为 admin / a10 ;
2、设置SSH软件记录CLI输出日志;
3、输入enable进入到特权模式下,password默认密码为空,直接回车即可;
4、输入write memory all-partitions保存所有配置(包括所有分区);
5、输入show techsupport后回车等待techsupport输出完毕;
或使用show [running-config | start-up config ] all-paritions命令获取所有配置(相当于不带证书、aflex等外部文件的系统备份文件,亦可相当于不带状态和日志的技术支持文件,不建议使用该方式备份);
6、取出之前保存的会话日志或直接复制整个输出信息保存到新建的TXT文本中。
如果不希望在会话窗口输出复制,亦可如下命令输出到A10可达的文件服务器上:
第3章网络部署
3.1网络接口
3.1.1A10配置
A10的IP通常均是配置在VLAN上,方便后期接口调整加入。在VLAN配置中,如果接口是Untagged,代表该接口相当于普通接口,不具备vlan标识(VLAN ID),VLAN相当于某公司设备上面的端口桥接配置,如有多个接口Untagged则使用桥接网口再对桥接网口配置链路IP,如只有一个接口则可以直接配置对应的接口链路IP。
示例配置文件如下:
!
vlan 11
untagged ethernet 7
router-interface ve 11
name "xxx_vlan"
!
vlan 500
untagged ethernet 4
router-interface ve 500
name "exam_vlan"
!
interface ve 500
ip address 10.x.x.x 255.255.255.252
name "exam_ve"
!
interface ve 11
ip address 192.x.x.x 255.255.255.0
ipv6 address 2001:x:x:x::1/64
ip allow-promiscuous-vip
name "xxx_ve"
如A10接口上有添加ip allow-promiscuous-vip配置,则代表该接口可以匹配0.0.0.0的虚拟服务IP流量,通常出现在出向链路负载需要做选路策略场景。转换至AD时,AD无需配置,所有接口默认匹配所有类型虚拟服务。
示例配置文件如下:
!
interface ve 11
ip address 192.x.x.x 255.255.255.0
ipv6 address 2001:x:x:x::1/64
ip allow-promiscuous-vip
name "xxx_ve"
!
A10的链路健康检查通常使用外部脚本的健康检查,如下则使用对应的ve接口作源IP 下一跳为对应的链路网关IP(220.x.x.x),用于检测链路是否正常,检查的目的地址等信息包含在对应的脚本内。转换至AD时,如无特殊需求可直接使用WAN口的链路健康检查实现,无需转换。
示例配置文件如下:
!
health moxxxor hc-cu interval 5 retry 3 timeout 5 up-retry 1
strictly-retry-on-server-error-response
method external program checkbyping arguments "1.1.1.1 1.1.1.2"
!
3.1.2配置解读
针对上述一个接口的配置进行说明
!
vlan 11#名称
untagged ethernet 7#物理的端口号,untagged表示数据包发送的时候不带tag标签
router-interface ve 11#桥接的虚拟接口名称
name "xxx_vlan"#名称
!
interface ve 11#表对应的接口vlan
ip address 192.x.x.x 255.255.255.0#IPV4地址掩码
ipv6 address 2001:x:x:x::1/64 #IPV6地址掩码
ip allow-promiscuous-vip#混杂模式接口
name "xxx_ve" #接口名称
!
3.1.3注意事项
【1】·我们AD的链路健康检查,是会匹配接口上SNAT地址,此时需要保证SNAT地址池里的地址,均能正常ping通对端运营商网关,否则健康检查起步不来;或者通过ARP检测方式来做健康检查
【2】WAN接口需要注意是非打标签的广域网接口,我们可以通过配置路由口,或者VLAN接口,两种方式均可。
【3】LAN接口的健康检查,AD实现方式为PING,需要注意AD-核心交换机之间的安全设备,拒绝外网方向过来的报文,导致监测失败;
3.2NAT配置
A10的NAT配置和思科等路由交换的NAT配置一样,分为静态NAT配置和动态NAT(PAT)配置,都需要结合接口的 ip nat inside/outside 来定义和使用,A10的静态NAT支持1对1做NAT和多对多的范围静态NAT。
3.2.1A10配置
ip nat pool p-ct-tcp x.x.x.x x.x.x.x.x netmask /26
ip nat pool p-ct-udp x.x.x.x x.x.x.x.x netmask /26
ip nat pool p-ct-dns x.x.x.x x.x.x.x.x netmask /26
以上配置表示:各自运营商线路地址池的地址,通过不同地址进行SNAT出去。
3.2.2配置解读
ip nat pool p-ct-tcp x.x.x.x x.x.x.x netmask /26 #配置匹配TCP协议动态地址池
ip nat pool p-ct-udp x.x.x.x x.x.x.x netmask /26 #配置匹配UDP协议动态地址池
ip nat pool p-ct-dns x.x.x.x x.x.x.x netmask /26 #配置匹配DNS协议动态地址池
3.2.3注意事项
【1】由于原本A10工程师配置上,选择不同协议使用不同源地址,我们通常在项目交付过程中,不会区分地址池,此处替换保留配置平移,我们保留TCP服务使用单独的地址池,其他协议使用一个地址池;为了TCP连接占用端口可能会比UDP更多,故不选择保留UDP协议;
【2】DNS单独转换可以去掉,注意不要只保留TCP、UDP策略,还有ICMP策略,最好建立一条any匹配所有协议。
3.3路由配置
3.3.1A10配置
出口部署时配置的默认路由仅用于设备自身的上网,如外网管理和测试外网等需求,A10上网的转发流量通常使用0.0.0.0/0的虚拟服务实现,具体见出向链路负载转换介绍。
ip route 10.x.0.0 /16 192.x.x.x
指向XX学校内网的路由
3.3.2配置解读
路由正常按照字面意思进行配置即可。
3.3.3注意事项
【1】全零路由在我们AD上通常不需要配置,避免影响健康检查;
【2】注意WAN口链路是专线或者存在WAN-LAN的流量,不匹配DNAT或者虚拟服务,需要开启WAN入站转发;
第4章出向链路负载
4.1概述
A10的链路负载采用的思路和服务器负载的整体思路是一样的,通过采用特定的调度算法分别把流量分别调度到不同的链路节点上做负载。当访问的流量匹配到了负载均衡的虚拟服务之后通过调度算法和链路健康检查调度到了节点池中的某个节点同时实现链路备份,同理链路负载的实现思路也是一样的,通过定义一个节点池(运营商网关地址),分别把去往运营商的流量调度到节点池(运营商网关地址)的不同节点实现链路的冗余和备份。
与此同时AD在7.0开始支持三层虚拟服务,三层虚拟服务支持配置全0网段配置(0.0.0.0)和特定网段配置(192.168.1.0/24),通过配置三层虚拟服务同时关闭DNAT,这样通过虚拟服务也可以解决这种需场景,如果要实现特定的源IP网段走特定的线路,通过配置前置调度策略即可,特定的目的IP网段起对应网段的虚拟服务即可。由于我们的前置策略不支持过滤目的地址匹配ISP地址集,此策略只能通过iPro实现,建议将友商的链路负载改用AD的智能路由方式实现客户的出向链路负载的场景需求(我们的智能路由配置更简单)。
4.2ACL流量匹配
4.2.1A10配置
A10的ACL主要用于策略匹配,此处用于对链路负载流量区分以用作不同策略。
access-list 108 permit ip any x.x.x.x 0.0.0.255
4.2.2配置解读
access-list 109 permit ip any host x.x.x #此处意思源any,去往该目的地址流量
4.2.3注意事项
【1】在整理时,类似通过策略路由的形式,保证源路由指定出口线路,我们可以通过智能路由方式配置,更简化方便。需要注意智能路由选路的特点,从上到下匹配顺序;其他是指向内网的access-list,可以通过静态路由,直接朝内网核心交换机指,不需要特别关注;
4.3节点池
4.3.1A10配置
定义同样地址集下的选路和备份策略
slb service-group sg-ct tcp
member link-ct:0 template t-ct-tcp priority 10
member link-cu:0 template t-cu-tcp priority 5
member link-cmcc:0 template t-cmcc-tcp priority 2
4.3.2配置解读
如此前所述,A10的链路负载是把运营商网关作为节点,此处定义选路策略的优先级,如sg-ct节点池中t-ct-tcp优先级有10,而t-cu-tcp用作备份,最后选择t-cmcc-tcp;
4.3.3注意事项
A10在这一块配置上面看起来会较为复杂,但转换为AD配置会简单的多,只需注意A10具体在哪些链路上开启负载均衡策略。
4.4出向负载策略绑定
4.4.1A10配置
A10的出向链路负载和服务器负载类似,都是先创建节点(链路负载为网关节点),再定义相关策略,最后再通过虚拟服务进行绑定发布。A10的链路负载识别方法主要是查看有无0.0.0.0的虚拟服务,再根据对应的0.0.0.0的虚拟服务反向查找绑定的配置分析对应的选路策略。
slb virtual-server llb-acl123 0.0.0.0 acl 123
port 0 tcp
service-group sg-edu
use-rcv-hop-for-resp
template tcp t1
no-dest-nat
port 0 udp
service-group sg-edu-udp
use-rcv-hop-for-resp
template udp u1
no-dest-nat
port 0 others
service-group sg-edu
use-rcv-hop-for-resp
template tcp t1
no-dest-nat
4.4.2配置解读
以上配置表示:acl 123匹配的流量会使用此负载策略,tcp和udp以及others需要分开配置,对应的选路策略为llb-tcp和llb-udp,使用了目的IP会话保持,禁用了目的地址转换,使用严格的NAT地址转换(超时时间内同一源IP访问固定线路都使用相同的NAT地址),设置了源进源出保证流量对称返回。转换至AD时,创建对应的智能路由策略,匹配acl 123的源目IP做多链路的选路和备份,如有其它acl则再对其它acl匹配的创建多条智能路由策略做选路和备份,按照AD的配置思路转换即可。
4.4.3注意事项
4.5地址库选路策略模板
4.5.1A10配置
定义不同ISP选择不同的选路策略
slb template policy llb
bw-list name chinaall
bw-list id 1 service-group sg-ct
bw-list id 2 service-group sg-cu
bw-list id 3 service-group sg-cmcc
bw-list id 4 service-group sg-cu
bw-list id 5 service-group sg-cmcc
bw-list id 6 service-group sg-edu
bw-list use-destination-ip
!
4.5.2配置解读
以上配置表示:定义选路策略,使用的地址集为chinaall,设置地址集的IP作为目的IP进行匹配,目的地址属于id 2、4的地址则使用联通去访问,其它线路作备份,属于id 1的则使用电信线路去访问,其它线路作备份等等。地址库中1-7涉及的所有IP均未匹配的则会匹配虚拟服务的默认节点池。
4.5.3注意事项
【1】排除掉精细的ACL做的选路,大的选路策略,也就是根据目的运营商地址进行转发,AD上不需要建立自定义ID,直接调用AD里ISP运营商地址库,且AD运营商地址库会周期更新,确保地址实时同步;
【2】智能路由建议搭配DNS代理进行,根据加权最小流量匹配
|