在Cisco ASA上部署 Cluster技术

Part 1 - ASA Cluster介绍

随着移动互联网,大数据,云计算和数据中心的发展,业务对网络的需求越来越大。对安全性的要求也越来越高,因防火墙上具备大量的安全防护业务,比如域间策略,包过滤,DPI,SSLVPN,安全策略等,那么单一的防火墙已经成为限制网络带宽增长的瓶颈,极大地制约了网络的实际应用。

通过前面几篇文章,大家对ASA Failover的学习,知道在ASA上做Failover Active-Active部署,这样可以提高网络的吞吐量,可是别忘了哦!Failover中最多只能绑定2个物理防火墙。如果满足不了转发性能的需求怎么办呢?本文将为大家介绍ASA Cluster技术,最多可以绑定16个物理设备。大大提高网络网络性能。

有朋友会问:到底什么是ASA Cluster呢?ASA CLuster就是将多台物理ASA虚拟成一台ASA(Cluster)对外提供服务,实现流量的冗余备份和负载分摊。

一.部署Cluster后ASA性能指标

1. 部署ASA Cluster后,Cluster总体性能比例如下:

  • Cluster吞吐量为所有物理成员ASA吞吐量的70%。

  • Cluster 支持Connection(状态化表项条目)为所有物理成员ASA的60%

  • Cluster每秒处理的Connection数量为所有物理成员ASA的50%。

例如,8台ASA 5585-X独立使用,每台设备吞吐量为10 Gbps,但是将8台设备加入到同一个Cluster中,则Cluster的最大吞吐量为10 Gbps x 8 x 70%=56 Gbps.

二.CLuster 成员介绍和角色选举

1. 端口角色介绍

  • Cluster中,有且只有一台物理ASA作为Master,其他ASA均为Slave.

  • Master角色选举根据优先级判定,优先级数值越小,优先级越高,手动配置,范围是1-100.

  • 其他ASA设备均为Slave.

  • 所有业务配置均在Master设备上执行,配置会自动同步到其他Slave设备.

2. Master选举过程

  • 将一台成员ASA加入到Cluster时,它每3秒发送一次选举请求,

  • 当有其他具备更高优先级的成员设备回复选举请求,则优先级高的成员为Master,自己为Slave.

  • 如果等待45秒,没有收到比自己更高优先级的成员设备回复选举请求,则自己成为Master.

  • 如果45秒后,收到跟高优先级的成员回复选举请求,则自己依然为Master,不发生角色抢占.

三.Cluster接口和链路介绍

1. Cluster interface介绍

  • Cluster内有多台ASA,为了充分利用设备资源,则进出Cluster的流量都需要做负载分摊

  • Cluster interface用在Cluster与网络设备(交换机或者路由器)互联传递负载均衡的流量.

  • Cluster interface提供了2种连接方式,Spanned EtherChannel(链路捆绑)和Individual interfaces(独立接口)

Spanned EtherChannel(Cisco推荐):

允许将同一个Cluster中的不同成员的一个或多个接口加入到同一个EtherChannel与一台网络设备(交换机或路由器)对接,EtherChannel则可以提供负载分摊.EtherChannel可配置在routed和transparent模式.routed模式中,为Ether Channel配置单一IP即可,transparent模式中,为BVI配置IP即可.

如图1所示,ASA1-ASA4组成一个Cluster,为了实现流量负载分摊,各自添加ten0/8到Spanned Port-channel 1中,添加ten0/9到Spanned port-channal 2中,分别与inside交换机和outside交换机互联,Ether Channel为进出Cluster的流量提供了负载分摊.

图1:Spanned EtherChannel互联

Individual interfaces:

独立接口,只能配置在Routed模式,所以与交换机互联的每个接口需要一个Local IP地址,用于运行路由协议时传递路由的下一跳地址,同时Master设备需要一个Main地址,用于Cluster管理使用,所有IP均在Master设备上配置,Master设备需要创建一个Pool,用于给Slave设备分配Local IP.流量负载均衡由路由协议提供.

如图2所示,ASA1-ASA4组成一个Cluster,各自将接口ten0/8和ten0/9分别与inside交换机,outside交换机互联.每个接口拥有独立IP地址,当运行动态路由协议是,负载均衡由路由协议提供(交换机从Cluster学习到的同一条路由将有4个下一跳).

图2:Individual interfaces互联

2. CLuster Control Link介绍

  • Cluster接口用于传递控制层面和某些特殊数据流量

控制层面流包括:

A.Master 选举的流量

B.Master到Slave配置同步的流量

C.健康监控的流量

数据流量包括:

A.状态化信息同步

B.状态化信息拥有着查询消息

  • 不能使用子接口,managerment接口,作为Cluster Control Link接口.推荐使用Ether Channel方式部署.

两台物理交换机使用VSS技术虚拟成为一台逻辑交换机,ASA1,ASA2,ASA3链路使用Ether Channel方式与逻辑交换机互联.

图3:ASA使用Cluster Control Link与交换机互联

3. ASA Cluster中状态化表项的管理问题

大家都知道,数据的访问是一去一回,Cisco ASA属于状态化防火墙,也就是管理员只需要放行数据流的出站,不需要管数据流的进站,因为当数据出站时,防火墙为数据流建立了状态化表项,当数据流回来时,查询到该表项及可放行。

  • Client发送SYN消息到ASA1,ASA1内部会创建状态化表项,对Client的访问做记录,然后将SYN消息转发到Server。第一次握手完成。

  • Server收到SYN消息,回复SYN/ACk消息(第二次握手),但是由于网络负载均衡的原因,流量未沿着原路ASA1返回,却发送到了ASA3,可ASA3无关于Client访问Server的状态化记录,所以SYN/ACK消息在ASA3上将被丢弃。TCP连接建立不成功

如图4所示,ASA1-ASA3部署一个Cluster对外提供服务,Client和Server间需要建立一个TCP连接,三次握手建连接。

图4:建立一个新的状态化表项

4. ASA Cluster中状态化表项的管理解决方案

基于以上数据流来回路径不一致,导致访问不成功的问题,ASA Cluster是怎么完成的呢?ASA Cluster为每一个数据连接分配如下几个角色。

A. Owner:通常是CLuster中受理流量的成员ASA,对于一个连接来说,只有一个owner,当owner故障,由Director指定新的Owner。

B. Backup owner:owner的备份,从owner备份TCP/UDP的状态化信息,当owner故障,状态化信息可以无缝切换到新的owner,实现流量不中断。

C. Director:响应forward对owner的查询请求,当owner接受到一个连接,它将根据源目地址和端口号通过HASH算法找到一台成员ASA为Director,每一股流量,都有唯一的一个Director,当回向流量被一台非owner成员收到,因本地无状态化表项,会向Director查询这个回向流量的owner,然后将流量发给owner成员。

D. Forwarder:负责将回向流量转发给owner。

如图5所示Client发送SYN到ASA1,所以ASA1成为这股流量的owner,owner将SYN消息转发给Server,Server回复SYN/ACK到ASA3,ASA3为Forwarder,此时ASA3上无状态化表项,向Director查询owner在哪,然后将回向流量SYN/ACK发送到ASA1处理。owner再向Director发送状态化信息更新。此时Director同时扮演Backup owner的角色。后续回向流量将直接从forwarder到owner,无需查询。

图5:数据流转发过程
四.ASA Cluster内部高可用性

1. 成员ASA状态监控

  • Master设备和Slave设备通过Cluster control link相互监控彼此的健康状态.

2. 接口状态监控

  • 所有的成员监控自己命名接口的状态,并把状态改变信息发送到Master.

3. 故障切换

  • 当一个Cluster 中成员设备故障,该成员设备的所有状态化信息将通过Control cluster link同步到Master.

  • 当一个Cluster中Master设备故障,则在剩余Slave设备中选择出最最高优先级的设备作为Master.

Part 2 - ASA Cluster部署要求

一. License许可

关于不同型号设备对License要求如下表所示:

设备型号 License要求 支持成员设备数量
ASA 5585-X Cluster License 16
ASA 5516-X Base License 2
ASA 5512-X Security Plus license 2
ASA 5515-X,ASA 5525-X,ASA 5545-X,ASA 5555-X Base License 2
其他 不支持 _
二 .ASA Cluster部署需求
  1. 所有成员设备必须满足如下条件,才可部署Cluster:
  2. 相同模块有相同DRAM(动态随机存取存储器)
  3. 完全一样的系统版本
  4. 安全模式必须一致,single或者multiple.
  5. 当安全模式为single时,Firewall模式必须同时为routed或者transparent
  6. 当新成员加入时,必须和Master使用相同SSL加密算法从Cluster Control Link 同步配置信息
三.Cluster 不支持的特性

1. 如下特性Cluster 不支持,命令被拒绝。

• Unified Communication features that rely on TLS Proxy

• Remote access VPN (SSL VPN and IPsec VPN)

• The following application inspections:

 CTIQBE

 H323, H225, and RAS

 IPsec passthrough

 MGCP

 MMP

 RTSP

 SCCP (Skinny)

 WAAS

 WCCP

• Botnet Traffic Filter

• Auto Update Server

• DHCP client, server, and proxy. DHCP relay is supported.

• VPN load balancing

• Failover

• ASA CX module

Part 3 - ASA Cluster实验案例

一.实验拓扑
二.实验需求

如上图所示,完成如下需求:

1.配置一个Cluste,成员为ASA1-ASA3。

  • ASA1-ASA3的ten0/6和ten0/7配置为Cluster Control Link与SW1以EtherChannel互联。

  • ASA1-ASA3的ten0/9与SW2以Spanned EtherChannel方式互联,作为outside网络

  • ASA1-ASA3的ten0/8与SW1以Spanned EtherChannel方式互联,作为inside网络。

2.配置完成后检查CLuster状态。

三.设备和IP地址说明

1. 交换机VLAN规划

交换机 VLAN 作用 接口
SW1 10 Cluster Control Link ten0/6,ten0/7,ten1/6,ten1/7,ten2/6,ten2/7
SW1 20 Management ten0/10,ten0/11,ten0/12
SW1 30 Inside ten0/8,ten1/8,ten2/8
SW2 40 Outside ten0/9,ten1/9,ten2/9

2. 设备IP地址分配

设备 接口 IP地址
ASA1 Cluster Control Link 192.168.1.1/24
ASA2 Cluster Control Link 192.168.1.2/24
ASA3 Cluster Control Link 192.168.1.3/24
ASA1 Mangement 10.1.1.1/24
ASA2/ASA3 Mangement 10.1.1.2-3/24(随机分配)
Cluster Inside 10.10.10.5/24
Cluster Outside 209.165.201.1/27
四.实验配置

1.按照交换机的vlan规划,将接口加入到相应VLAN中,并且在SW1配置Port-ch4与Cluster 的Inside接口互联,SW2配置port-ch1与Cluster的Outside互联。

  • SW1配置
VLAN 10
name CCL

VLAN 20
MGMT

VLAN 30
Inside

interface range tengigabitethernet 0/6 -7 
switchport mode access
switchport access vlan 10
channel-group 1 mode on

interface range tengigabitethernet 1/6 -7
switchport mode access
switchport access vlan 10
channel-group 2 mode on

interface range tengigabitethernet 2/6 -7
switchport mode access
switchport access vlan 10
channel-group 3 mode on 

interface range tengigabitethernet 0/10 -12
switchport mode access
switchport access vlan 20

interface range tengigabitethernet 0/8,tengigabitethernet 1/8,tengigabitethernet 2/8
switchport mode access
switchport access vlan 30
channel-group 4 mode on
  • SW2配置
VLAN 40
name Outside

interface range tengigabitethernet 0/9,tengigabitethernet 1/9,tengigabitethernet 2/9
switchport mode access
switchport access vlan 40
channel-group 1 mode on 

2.ASA 1 Master 初始化配置

  • 配置Cluster Control Link使用Spanned Ether Channel方式与SW1互联。

  • 将ASA1加入到Cluster并指定Cluster Control Link,并且配置Cluster Control Link的IP地址。

cluster interface-mode spanned force

interface tengigabitethernet 0/6
channel-group 1 mode on
no shutdown

interface tengigabitethernet 0/7
channel-group 1 mode on
no shutdown

interface port-channel 1
description CCL

cluster group cluster1
local-unit asa1
cluster-interface port-channel1 ip 192.168.1.1 255.255.255.0
priority 1
enable

3.ASA2 Slave 初始化配置

  • 配置需求同ASA1一致
interface tengigabitethernet 0/6
channel-group 1 mode on
no shutdown

interface tengigabitethernet 0/7
channel-group 1 mode on
no shutdown

interface port-channel 1
description CCL

cluster group cluster1
local-unit asa2
cluster-interface port-channel1 ip 192.168.1.2 255.255.255.0
priority 2
enable 

4.ASA3 Slave初始化配置

  • 配置需求同ASA1一致
interface tengigabitethernet 0/6
channel-group 1 mode on
no shutdown

interface tengigabitethernet 0/7
channel-group 1 mode on
no shutdown

interface port-channel 1
description CCL

cluster group cluster1
local-unit asa3
cluster-interface port-channel1 ip 192.168.1.3 255.255.255.0
priority 3
enable

5.ASA1 Master 接口配置

如下配置会自动同步到其它Slave设备。

  • 为Matser设备指定Management接口IP地址,并为其他Slave设备指定地址池

  • 将Cluster 中Inside方向接口以Spanned Ether Channel方式与SW1互联。并指定IP地址。

  • 将Cluster 中Outside方向接口以Spanned Ether Channel方式与SW2互联。并指定IP地址

ip local pool mgmt 10.1.1.2-10.1.1.9

interface management 0/0
nameif management
ip address 10.1.1.1 255.255.255.0 cluster-pool mgmt
security-level 100
management-only
no shutdown

interface tengigabitethernet 0/8
channel-group 2 mode active
no shutdown

interface port-channel 2
port-channel span-cluster
nameif inside
ip address 10.10.10.5 255.255.255.0

interface tengigabitethernet 0/9
channel-group 3 mode active
no shutdown

interface port-channel 3
port-channel span-cluster
nameif outside
ip address 209.165.201.1 255.255.255.224

6.查看CLuster状态,Cluster状态正常。

ciscoasa#show cluster info
ASA1# sh cluster info
Cluster Cluster1: On
Interface mode: spanned
This is “ASA1” in state MASTER
ID        : 0
Version   : 9.1(4)
Serial No.: FCH170XXXX
CCL IP    : 192.168.1.1
CCL MAC   : 0006.f6e6.4432
Last join : 11:56:49 UTC Jan 9 2019
Last leave: N/A
Other members in the cluster:
  Unit “asa2” in state SLAVE
  Unit “asa3” in state SLAVE
ID        : 1
Version   : 9.1(4)
Serial No.: FCH170XXXX
CCL IP    : 192.168.1.2
CCL MAC   : 0006.f6e6.4426
Last join : 12:33:33 UTC Jan 9 2019
Last leave: N/A
ID        : 2
Version   : 9.1(4)
Serial No.: FCH170XXXX
CCL IP    : 192.168.1.3
CCL MAC   : 0007.f6c6.5434
Last join : 12:33:33 UTC Jan 9 2019
Last leave: N/A

你可能感兴趣的:(在Cisco ASA上部署 Cluster技术)