华为集群CSS技术解析

发表时间: 2021-12-28 17:37

一. CSS基本概念

CSS与iStack的区别在于,一般框式交换机堆叠称为CSS,盒式交换机堆叠称为iStack,都可以称为堆叠。两者只是叫法和实现有些差异,但是功能是一样的。

1. 优势 (1)高可靠性:集群系统两台成员交换机之间冗余备份,同时利用链路聚合功能实现跨设备的链路冗余备份。 (2)强大的网络扩展能力:通过组建集群增加交换机,从而轻松地扩展端口数、带宽和处理能力。 (3)简化配置和管理:集群建立后,两台物理设备虚拟成为一台设备,用户只需登录一台成员交换机即可对集群系统所有成员交换机进行统一配置和管理。

2. CSS交换机角色 不同于iStack可以多台设备堆叠,对于CSS集群,集群中只能有一主一备两台交换机。 (1)主交换机 负责管理整个集群。集群中只有一台主交换机。 (2)备交换机 主交换机的备份交换机。当主交换机故障时,备份交换机会接替原主交换机的所有业务。集群中只有一台交换机。

3.集群ID 即CSS ID,用来标识和管理成员交换机。集群中成员交换机的集群ID是唯一的。 整数形式,取值范围为1~2,默认为1。

4. 集群优先级 即Priority,是成员交换机的一个属性,主要用于角色选举过程中确定成员交换机的角色,优先级值越大表示优先级越高,优先级越高当选为主交换机的可能性越大。取值范围为1-255,默认为1。

二. 集群的建立

集群建立时,成员交换机间相互发送集群竞争报文,通过竞争,一台成为主交换机,负责管理整个集群系统,另一台则成为备份交换机。

1. 角色选举 (1)最先完成启动,并进入单框集群运行状态的交换机成为主交换机。 (2)当两台交换机同时启动时,集群优先级高的交换机成为主交换机。 (3)当两台交换机同时启动,且集群优先级又相同时,MAC地址小的交换机成为主交换机。 (4)当两台交换机同时启动,且集群优先级和MAC都相同时,集群ID小的交换机成为主交换机。

2. 版本同步 集群具有自动加载系统软件的功能,待组成集群的成员交换机不需要具有相同的软件版本,只需要版本间兼容即可。当主交换机选举结束后,如果备交换机与主交换机的软件版本号不一致时,备交换机会自动从主交换机下载系统软件,然后使用新的系统软件重启,并重新加入集群。

3. 配置同步 集群具有严格的配置文件同步机制,来保证集群中的多台交换机能够像一台设备一样在网络中工作。

4. 配置备份 交换机从非集群状态进入集群状态后,会自动将原有的非集群状态下的配置文件加上.bak的扩展名进行备份,以便去使能集群功能后,恢复原有配置。例如,原配置文件扩展名为.cfg,则备份配置文件扩展名为.cfg.bak。去使能交换机集群功能时,用户如果希望恢复交换机的原有配置,可以更改备份配置文件名并指定其为下一次启动的配置文件,然后重新启动交换机,恢复原有配置。

三. CSS集群连接方式

设备组建集群有两种连接方式,分别为集群卡集群和业务口集群。 1. 集群卡集群方式:集群成员交换机之间通过主控板上专用的集群卡及专用的集群线缆连接。

2. 业务口集群方式:集群成员交换机之间通过业务板上的普通业务口连接,不需要专用的集群卡。同iStack,业务口集群一样涉及两种端口的概念:物理成员端口和逻辑集群端口。

(1)物理成员端口 成员交换机之间用于集群连接的普通业务口。物理成员端口用于转发需要跨成员交换机的业务报文或成员交换机之间的集群协议报文。 (2)逻辑集群端口 逻辑集群端口是专用于集群的逻辑端口,需要和物理成员端口绑定。集群的每台成员交换机上支持两个逻辑集群端口。

四.集群成员加入与合并

使用了集群功能的单台交换机即为单框集群。

1. 集群成员加入 集群成员加入是指向稳定运行的单框集群系统中添加一台新的交换机。如图1所示,新交换机SwitchB将加入单框集群系统从而形成新的集群系统。原单框集群的交换机成为主交换机,新加入的交换机成为备用交换机。 集群加入通常在以下两种情形下出现: (1)在建立集群时,先将一台交换机使用集群功能后重启,重启后这台交换机将进入单框集群状态。然后再使用另外一台交换机的集群功能后重启,则后启动的交换机则按照集群成员加入的流程加入集群系统,成为备交换机。 (2)在稳定运行的两框集群场景中,将其中一台交换机重启,则这台交换机将以集群成员加入的流程重新加入集群系统,并成为备交换机。

2. 集群成员的合并 集群合并是指稳定运行的两个单框集群系统合并成一个新的集群系统。如图2所示,两个单框集群系统将自动选出一个更优的作为合并后集群系统的主交换机。被选为主交换机的配置不变,业务也不会受到影响,框内的备用主控板将重启。而备交换机将整框重启,以集群备份的角色加入新的集群系统,并将同步主交换机的配置,该交换机原有的业务也将中断。 集群合并通常在以下两种情形下出现: (1)将两台交换机分别使用集群功能后重启(重启后的两台交换机都属于单框集群),再使用集群线缆将两台交换机连接,之后会进入集群合并流程。 (2)集群链路或设备故障导致集群分裂。故障恢复后,分裂后的两个单框集群系统重新合并。

五. 集群的分裂

集群建立后,系统主用主控板和系统备用主控板定时发送心跳报文来维护集群系统的状态。集群线缆、集群卡、主控板等发生故障或者是其中一台交换机下电或重启将导致两台交换机之间失去通信。当两台交换机之间的心跳报文超时(超时时间为8秒)时,集群系统将分裂为两个单框集群系统,如图所示:

集群分裂后,由于成员交换机运行着相同的配置文件,就会产生两个具有相同IP和MAC的集群系统。为防止由此引起网络故障,必须进行IP地址和MAC地址的冲突检查。

六. 集群配置

1. 通过集群卡连接方式组建集群

[SwitchA] set css mode css-card \配置集群卡连接方式

[SwitchA] set css id 1 \配置成员交换机的集群ID

[SwitchA] set css priority 100 \配置设备的集群优先级

[SwitchA] css enable \使能交换机的集群功能

1234

2. 通过业务口连接方式组建集群

[SwitchA] set css mode lpu \配置业务口连接方式

[SwitchA] set css id 1 \配置成员交换机的集群ID

[SwitchA] set css priority 100 \配置设备的集群优先级

[SwitchA] interface css-port 1 \进入逻辑集群端口视图

[SwitchA-css-port1] port interface xgigabitethernet 1/0/1 to xgigabitethernet 1/0/2 enable

\配置业务口为物理成员端口,并将物理成员端口加入到逻辑集群端口中

[SwitchA] interface css-port 2

[SwitchA-css-port2] port interface xgigabitethernet 2/0/1 to xgigabitethernet 2/0/2 enable

[SwitchA] css enable \使能交换机的集群功能