
简介面向现网环境中的IT网络运维人员这份PDF文档围绕H3C S6520-26Q-SI核心交换机的IRF2堆叠提供在不影响业务运行的前提下完成配置的实战经验。文档完整记录两台同型号、同软件版本设备的堆叠搭建过程涵盖堆叠前配置备份与业务中断预案、IRF成员编号及优先级规划、IRF-port逻辑端口与万兆物理口绑定、BFD分裂检测配置等关键环节并针对Master竞选失败方自动重启、双万兆口堆叠线缆选择等细节做了说明可帮助网络工程师规避常见配置风险实现近乎零影响的设备扩容。资源共1个PDF文件压缩包约395KB内容虽精炼但步骤完整其中包含具体的CLI命令序列、保存激活顺序及防止堆叠分裂的检测机制适合需要提升核心网络冗余与转发能力的网络管理员参考。目前已有1267人浏览学习具备一定实践参考价值。1. 现网给S6520做堆叠为什么“不断网配置”不是玄学而是一笔可计算的中断账两台在跑的H3C S6520交换机因为端口不够、上联带宽吃紧或者单纯想给核心链路做个冗余决定把它们做成IRF堆叠。刚把需求提出来第一反应是“把配置文件改一改把光纤插上不就得了”。等真正站在机房里对着正在过流量的设备才会意识到现网环境下的堆叠配置跟新装机调试完全不是一回事配置IRF会让成员设备重启、堆叠口上的业务配置被清空一不小心就是把整个接入层打掉。所谓“不断网配置堆叠”并不是靠某个神秘命令一敲就零中断而是通过方案设计和操作顺序把“全网瘫痪”压缩成“单台设备重启一下”再靠冗余设计把这个重启的代价降到最低。这篇笔记适合正在做现网改造、手里有S6520却不敢往下手的工程师我会把从规划到合并、从验证到避坑的完整路径讲清楚。2. 先在纸上把堆叠打完成员编号、IRF域和“不断网”的可实现条件2.1 一次看懂IRF的角色主设备、从设备、IRF物理口与IRF-Port1/2S6520的IRFIntelligent Resilient Framework智能弹性架构会把多台物理设备虚拟成一台逻辑设备。在这个架构里成员编号决定了每台设备的身份IRF域号用来防止不同堆叠之间误合并优先级决定了谁是主设备。两台S6520合并后从外部看只有一个管理地址、一套配置、一组接口编号比如原成员2上的接口显示为Ten-GigabitEthernet2/0/1控制平面由主设备统一管理数据平面则分布在所有成员设备上。设备之间通过IRF物理端口互联这些物理端口要绑定到逻辑的IRF-Port1和IRF-Port2上。哪台设备成为主设备取决于优先级和成员编号。默认情况下优先级越高越优优先级相同则成员编号小的优。现网操作时我一定会把现网运行稳定的那台设置成高优先级让它当主设备另一台作为从设备。这里有个容易被忽略的细节IRF-Port的编号连接是有讲究的通常要求本端设备的IRF-Port1与对端设备的IRF-Port2互联反过来也一样形成环形逻辑。如果只有一条堆叠链路那也要保证一侧为Port1另一侧为Port2否则合并时会报拓扑错误。2.2 堆叠链路怎么选用10GE还是40GE两根还是一捆S6520上常见的堆叠物理口是10GE口或40GE口。选择什么速率要看设备面板和现网线缆情况。我一般的原则是堆叠链路带宽必须大于上联/下联总流量否则堆叠口会成为瓶颈甚至出现丢包。比如上联是两块40GE口堆叠链路至少用两个40GE口或者用四根10GE口捆绑。不要拿一根10GE口去顶40GE的上联这会在日常负载下打出明显的丢包。在现网里堆叠链路的光模块和光纤最好用独立的一批不要跟业务链路混用。有些工程师觉得“随便插个SFP就行”结果光模块发光功率不匹配堆叠口虽然UP但错包持续增长查起来非常坑。所以预检时一定要用到S6520查光口光衰的命令比如在系统视图下进入接口用display transceiver diagnosis interface查看TX/RX光功率。堆叠口的光衰不应该高于阈值RX光功率不能长期处于负值区间底部否则堆叠合并后会出现间歇性丢包业务不中断也会让负载均衡变得异常。2.3 不断网的真正含义把断网从“全部设备”压缩到“单台重启”我必须先说一句让很多人清醒的话没有任何一条命令能在不断电、不重启、不清接口配置的情况下把两台现网交换机合并成IRF。至少在当前S6520这套Comware体系下成员编号变更和IRF端口生效都需要设备重新启动。所以“不断网”实现的关键不是追求零操作而是通过操作编排让唯一重启的那台设备上的业务已经被另一台设备接管或者事先把断网窗口压到业务侧可接受的范围。这里要分清两种情况。第一种现网本身就是双设备运行上联和下联都做了链路聚合重启一台时流量能全部通过另一台转发那就可以做到真正意义上的业务不断网。第二种现网是单机运行、下联就是网线直连服务器那任何堆叠操作都需要先在接入侧做临时冗余否则不可能不断网。我一般在项目启动前会画一张业务流量拓扑图标注出哪些链路具备替代路径哪些是单点。单点必须提前做切换方案这比堆叠配置本身更重要。3. 动手前先做三件事摸清现网、留好堆叠口、备好后悔药3.1 采集现网状态版本、端口占用、已有聚合口和光模块第一次碰现场设备我习惯先把设备底账摸透。在S6520上执行display version确认Comware版本不同版本的IRF命令细节有差异特别是IRF端口激活方式有些版本支持irf-port-configuration active热激活有些不支持。然后执行display interface brief看所有端口状态尤其关注哪些口已经被业务占用、哪些口是空口以及哪些口是聚合组成员。这一步还要看设备上已经配置的聚合口。如果现网已经有二层聚合Bridge-Aggregation或三层聚合Route-Aggregation就要记录聚合组的成员口和模式。等到堆叠合并后这些聚合组会面临一个重要问题同一个聚合组里的成员口能否分布在两台不同成员设备上。答案是可以但要在合并后重新调整端口而且调整时该聚合组下的流量会有一次重新收敛。如果不提前了解这些信息配置到一半发现某个口被ACL、策略路由、DHCP Snooping绑着清端口配置时就会把策略一起清掉事情就麻烦了。3.2 预留堆叠物理口选端口和光模块的标准选堆叠物理口我只看两个硬性条件第一该端口当前没有任何业务配置包括access/trunk、流策略、端口隔离等第二该端口和相邻成员设备之间能拉到一根干净的光纤路径不能经过其他交换机。很多事故就是图省事把正在接服务器的端口临时改成IRF口结果一配置物理口上的原有配置全部失效业务瞬间断开。S6520一般都留有几个高密度10GE口或者40GE口优先用这些空余口。如果面板上没有富余的高速率口那就需要规划一个低峰期窗口把一两个低利用率业务口提前切成堆叠口同时用临时跳线把业务挪到其他端口上去。注意把业务口切成堆叠口会清空原有接口配置所以操作前必须备份接口配置并在切换后把业务迁移到替代端口上。这是整个方案里最需要争取“窗口”的地方也是能体现现网工程师功力的一步。3.3 配置备份与回退方案把重启前的现场完整留下来我见过太多人配置堆叠前不做备份合并失败后连主备设备的配置都找不回来。S6520上最直接的备份方式是display current-configuration把配置刷到终端保存或者用TFTP/FTP把配置文件导出。我这里更推荐用save force再通过tftp上传两条命令搞定但要注意TFTP路径不能写错。除了配置文件备份还要把IRF相关的关键状态记录下来比如成员的序列号、MAC地址、当前优先级。用display device查看设备面板信息用display irf查看当前IRF状态。把这些内容放到一个变更工单里一旦操作失败我可以按原始状态逐步回退删除IRF端口配置、恢复成员编号、恢复原有业务口配置。这台设备如果配置里已经有VLAN接口和路由回退时要格外小心最稳妥的做法是把备份配置直接整体还原。下面是一组典型预检命令# 查看版本与启动文件 display version # 查看所有端口与状态注意端口是否被聚合口/业务占用 display interface brief # 查看当前IRF相关配置确认是否已有堆叠残留 display irf configuration # 查看设备序列号与成员状态 display device # 备份配置到终端保存到本地文件 display current-configuration这组命令里display irf configuration特别关键。如果这台设备之前被加过堆叠但没有清理干净IRF端口配置还在后面配置新堆叠时会干扰成员编号分配。遇到这种情况我会先执行undo irf-port相关的清空操作再开始新堆叠规划。备份配置时不要只背一份最好把配置复制到本地两份一份原始配置一份是在原始配置基础上预加IRF命令后的版本以此对比找问题。4. 现网不断网配置S6520 IRF堆叠从预配置到合并再到业务收敛4.1 影子设备预配置让新成员先成为一个单成员IRF最稳妥的现网方案是找一台新的S6520当作堆叠主设备先把所有IRF参数在它上面配好并重启让它作为一个单成员IRF独立运行。这样做的好处是现网上旧设备的成员编号、优先级这些需要重启才能生效的参数全部可以在这台新设备上完成旧设备只做增量配置。新设备开机后首先把成员编号确认好。假设现网旧设备是成员1新设备就是成员2。如果新设备默认是成员1先改掉# 在新设备上执行将默认成员1改成成员2 irf member 1 renumber 2 save force reboot重启后确认编号display irf configuration确认成员编号已经是2后在这台新设备上配置IRF域和优先级。注意这里有一个工程上的取舍新设备当主还是旧设备当主。我会把新设备配成高优先级让它当主设备原因是新设备没有现网业务包袱未来如果出现故障需要重启影响最小。旧设备配置优先级低一些重启后自动成为从设备。# 配置IRF域域编号两台设备必须一致 irf domain 10 # 新设备优先级调高作为主设备 irf priority 32 # 配置IRF物理端口新设备的成员编号为2 # 假设成员2的IRF-Port2连接成员1的IRF-Port1 irf-port 2/2 port group interface Ten-GigabitEthernet2/0/49 port group interface Ten-GigabitEthernet2/0/50 quit # IRF-Port1配置为连接对端IRF-Port2的链路 irf-port 2/1 port group interface Ten-GigabitEthernet2/0/51 port group interface Ten-GigabitEthernet2/0/52 quit save force这里irf-port 2/2中的“2”是成员编号后面“2”是IRF逻辑端口编号。每个IRF逻辑端口下可以绑定多个物理口我这里绑了两个物理口目的是万一一个物理口松动或光模块故障另一个还能维持IRF链路。光模块速率和光纤类型必须一致否则端口起不来。保存后重启一次让IRF端口配置生效。4.2 旧设备只做增量配置不重启也能把IRF参数备好旧设备作为成员1如果它本身出厂默认就是成员1那就省去renumber重启这一步。直接在系统视图下配置IRF域、优先级和IRF端口。优先级要低于新设备比如默认的1即可否则旧设备会抢主导致新设备反而变成从设备。# 旧设备上配置IRF域必须一致 irf domain 10 # 旧设备优先级调低确保它作为从设备加入 irf priority 1 # 配置IRF端口旧设备成员编号为1 # IRF-Port1连接新设备的IRF-Port2 irf-port 1/1 port group interface Ten-GigabitEthernet1/0/49 port group interface Ten-GigabitEthernet1/0/50 quit # IRF-Port2连接新设备的IRF-Port1 irf-port 1/2 port group interface Ten-GigabitEthernet1/0/51 port group interface Ten-GigabitEthernet1/0/52 quit save force这里要特别说明如果你用的S6520软件版本支持IRF端口热激活可以尝试执行irf-port-configuration active让IRF端口配置立即生效。但更多时候这条命令受版本限制不支持热激活的版本必须重启设备。所以这一步要分两种情况如果旧设备能够接受一次重启就把保存配置做扎实在低峰期重启一次如果旧设备上所有业务都是单点、完全没有冗余那就必须把这台设备的接管工作先做掉否则不要硬续。我的做法是先把新设备以主角色单独运行起来然后把旧设备的下联业务通过临时链路切换到新设备上让旧设备变成一个可以随时重启的空载设备。旧设备上只剩管理地址重启后加入IRF再恢复所有业务配置。这个切换动作如果脚本写得好中断能控制在秒级。4.3 连接堆叠物理链路并触发合并看设备如何自动排序号两台设备的IRF配置都完成后把堆叠光纤插好。建议先把所有物理口插入再统一检查端口状态。如果光模块和光纤没问题两台设备之间的堆叠口会显示为UP但IRF状态还没有合并。这时在从设备上执行reboot从设备启动后会自动发现主设备并把自己作为成员加入。合并过程中可以从主设备上连续观察状态# 在主设备上观察IRF成员数量变化 display irf正常结果里会列出两条成员记录成员编号1和2状态为Stable或者Running。用display irf topology可以看两台设备的连接拓扑确认IRF-Port1和IRF-Port2是否环形闭合。如果只显示一条成员记录说明从设备没加入成功需要从物理链路和光模块状态排查。从设备重启后它的原业务端口配置都还在但接口编号会变成成员编号前缀。例如原Ten-GigabitEthernet1/0/1在成员2上显示为Ten-GigabitEthernet2/0/1。这一变化会影响对端设备的配置引用比如下联的接入交换机配置的聚合端口对应物理端口号变了所以要在合并后同步检查所有对端链路。4.4 业务收敛用跨设备聚合和MAD把缺口补上堆叠合并只是第一步真正保证“以后不断网”的是跨设备聚合。以二层链路为例可以在IRF上创建一个Bridge-Aggregation组把成员1和成员2的上联口或下联口都加入同一个聚合组。这样一台成员设备重启或故障时流量自动通过聚合组里的另一台设备转发业务不中断。# 在IRF模式下创建二层聚合口 interface Bridge-Aggregation 10 port link-type trunk port trunk permit vlan all quit # 将成员1上的物理口加入聚合组 interface Ten-GigabitEthernet1/0/11 port link-aggregation group 10 quit # 将成员2上的物理口加入聚合组 interface Ten-GigabitEthernet2/0/11 port link-aggregation group 10 quit注意把物理口加入聚合组时该物理口原本的配置会被聚合口配置覆盖。如果这个口上有业务策略要先确认聚合口下的配置完全等价再执行加入。最好在低峰期操作并观察display link-aggregation verbose确认两个成员口都在Selected状态而不是只有一条在转发。最后必须做MAD检测防止堆叠分裂后出现“双主”问题。没有MAD的IRF一旦堆叠链路断开两台设备都认为自己是主设备同时转发相同网段的流量网络立刻会乱。S6520上我用BFD MAD比较多它需要单独一根物理链路连接两台成员设备用于检测彼此是否还活着。在IRF系统视图下配置MAD的VLAN和IP地址然后启用MAD能力。# 配置BFD MAD专用VLAN vlan 2000 quit # 创建MAD检测用的VLAN虚接口 interface Vlan-interface 2000 ip address 192.168.200.1 24 mad ip address 192.168.200.2 24 member 1 mad ip address 192.168.200.1 24 member 2 quit # 启用IRF MAD检测 irf mad enable这里mad ip address后面的member参数要和实际成员编号一一对应两根MAD链路必须互不依赖。MAD启用后当堆叠链路断开双方会通过这个专用VLAN的BFD报文检测到对方还在运行从设备会自动关闭自己的业务接口避免两个主同时转发。这一步如果省略等于堆叠只做了一半。5. 现网堆叠避坑指南从堆叠口被业务占用到设备死机不醒5.1 堆叠口上有业务配置一配IRF端口业务全断现象把原来的业务口配置成IRF物理口后对应VLAN下的终端全部掉线甚至上游路由也跟着断。 原因port group interface命令执行时IRF逻辑端口接管物理端口该物理端口原有access/trunk、流策略、ACL等配置会被自动清空。很多工程师忽略了这个动作以为只是加一个绑定关系。 解决配置IRF端口前必须先用display current-configuration interface检查该端口是否有任何业务配置。有配置先迁移到别的空口或者明确该片业务可以中断。如果是重要业务口先用跳线临时改接再执行IRF端口配置。这里最怕的就是刚登录上去看端口状态是UP就顺手把它做成堆叠口实际上这个口可能是某个服务器的双网卡另一根线一旦清配置服务器立刻失联。5.2 两台设备的IRF域号不一致合并后像两个黑匣子现象从设备重启后主设备display irf始终只看到一个成员从设备日志里出现“IRF domain mismatch”或者“No neighbor”之类的报错。 原因IRF域号用于区分不同堆叠域。两台设备域号不同就不会建立IRF邻居关系相当于两台设备都认为对方不属于自己的堆叠。 解决在任何成员编号和IRF端口配置之前先统一域号。最好在方案设计阶段就规定好域号写进变更单。配置完成后用display irf configuration分别查看两台设备的IRF domain字段是否一致。这个检查耗时十秒钟却能避免半小时的抓狂。5.3 堆叠线光模块光衰高链路明明UP却疯狂丢包现象堆叠合并成功业务接口也都是Selected状态但堆叠成员之间互通的流量时好时坏延迟抖动非常明显display irf显示状态正常可ping测试丢包率在5%到10%之间波动。 原因堆叠物理链路用的是旧光模块发光功率严重衰退链路虽然Link UP但收发质量不达标。IRF控制报文也会丢导致主从设备之间状态同步不稳定。 解决用S6520查光口光衰命令进入对应物理接口执行display transceiver diagnosis interface查看TX和RX功率是否在阈值范围内。如果RX功率低于接收灵敏度接近底值果断更换光模块和光纤。堆叠链路属于基础设施中的基础设施一定不要省钱用淘汰下来的光模块这是我的血泪经验。5.4 分裂后出现“双主”两台设备同时在转发现象堆叠链路被误拔或者一个堆叠物理口光模块松动两台设备分别在两个物理位置继续转发业务。外部网络看到两个MAC和两个管理地址全网路由震荡。 原因没有配置MAD检测或者MAD检测链路本身跟堆叠链路复用并同时断开。IRF不知道对方还活着于是都升级为主设备。 解决必须在IRF合并后立即配置MAD。用BFD MAD时MAD检测链路不能与业务链路共用同一根光纤最好独立走一个不同路径。配置完成后做一次模拟测试在低峰期拔掉一根堆叠链路观察MAD是否会正确把从设备业务口关闭。没有做这个测试前绝对不能说堆叠配置完成。5.5 忘记给新成员改编号主从角色乱掉现象新设备上电后IRF合并时自动成为主设备旧设备被迫重启业务发生两次中断。 原因新设备出厂成员编号默认为1旧设备也是1。优先级又忘记调整IRF在合并时按照成员编号取小优先规则导致角色分配不是你预期的那台。 解决新设备在单独运行时就先执行irf member 1 renumber 2并重启让设备以成员2身份接入。旧设备保持成员1并设置较高优先级或者反过来方案一致。合并前用display irf确认各自成员编号成员编号和优先级只允许有一台设备可写其他都必须是只读角色。5.6 设备重启后启动到一半卡住console口没反应现象从设备执行reboot后设备一直停留在启动过程console口无响应最后被强制断电。 原因IRF物理口对应的光模块有问题或者IRF端口配置里引用了不存在的接口导致设备启动时IRF初始化卡住。也有可能是配置文件里IRF端口配置与物理口实际速率不匹配系统反复尝试协商。 解决遇到这种情况不要犹豫接console口在启动阶段进入BootRom菜单选择跳过配置文件启动先把设备拉起来然后清理IRF相关配置。这也是我坚持每次操作前一定留好console线的原因没有console线在机房现场IRF设备翻车时你连后悔药都吃不到。6. 收尾验证的六个动作让S6520堆叠健康度看得见堆叠配置完成不是以“两台设备登录上去看到角色主备”为终点而是以验证结果全通过为准。我做堆叠交割前必做下面六件事第一执行display irf确认成员数量、本机角色、邻居成员状态为正常。如果看到IRF状态是Waiting或Recovery说明合并还没完全稳定不要下一步。第二执行display irf topology看拓扑是否成环IRF-Port1和IRF-Port2有没有配对完整。第三执行display device再看一遍成员序列号确认物理设备与配置中的成员编号一一对应。第四执行display mad查看MAD配置是否生效确认检测链路是独立线缆。第五用display transceiver diagnosis interface把堆叠口的光衰值打出来记录基线值以后巡检直接对比。第六做一次带内ping测试从管理地址分别ping两台成员设备的下联网关地址验证跨成员转发路径正常。我再补一个稳准狠的技巧用display irf确认角色后随手把主设备的管理口拔掉再插回去观察从设备是否会接手管理面的转发。IRF的管理地址在主设备故障时要能飘移到从设备上这测试不需要重启也不会中断业务但能反映出IRF的健康机制是否真正在运行。这套流程跑完我心里才踏实。现网堆叠这条路走过几次之后你会发现真正的难点从来不是命令记不住而是你有没有把所有“单点”都提前看到。每一台可能断网的设备、每一条没有冗余的上联都会在重启那一刻给你上一课。我现在的习惯是任何堆叠操作前先写一张变更单把“哪台设备会重启、重启时流量走哪里、如果走不了会中断多久”这三个问题写清楚写不清楚就不动手。希望帮到你。本文还有配套的精品资源点击获取