ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

博科光纤交换机运维手册:SAN zone配置、级联与排障全解析

博科光纤交换机运维手册:SAN zone配置、级联与排障全解析 简介面向数据中心存储网络运维人员的博科Brocade交换机培训文档系统讲解光纤交换机日常操作与配置方法涵盖FC交换机与以太网区别、FC与TCP/IP协议差异、常见接口类型以及交换机基本配置、ZONE/VSAN通道业务配置等核心知识点。文档以实操为主线逐步演示连接设备、修改管理地址、设置会话超时与时间服务器、创建并激活Zone、配置Port Channel等步骤并配有完整案例演示。FAQ部分整理日常巡检命令与排障日志收集方法可直接用于SAN环境日常运维与故障排查。包体内含1个PDF文件总大小3.28MB结构紧凑便于查阅已有1892人学习下载适合希望快速上手博科交换机或规范运维流程的存储工程师参考。1. 博科Brocade Fabric交换机这份操作手册覆盖运维最常用的三块硬功夫数据中心存储网里博科Brocade光纤交换机几乎是 SAN 的默认选择。我刚接手数据中心时面对的就是一台还没划分 zone 的博科交换机主机能看到存储端口但链路不通排障半天才发现是 zone 配置根本没生效。这份培训文档从博科交换机 OS 功能模块讲起依次覆盖交换机基本管理配置、FC 通道业务配置zone/别名/cfg、交换机级联案例、日常巡检与日志收集 FAQ正好对应日常运维最常用的三块动作改配置、划 zone、排故障。适合刚接触 SAN 的存储工程师、DBA以及需要做博科交换机批量变更和交接的运维同学。跟着手册的命令走一遍比翻 FOS 命令参考要快得多。2. 先懂 FC 再碰配置OS 功能模块、协议差别与基础设置2.1 博科交换机 OS 功能模块七个服务各管什么博科交换机启动后跑的是 Fabric OSFOS它把功能拆成一个个服务模块。手册 3.1 节列出的七项按实际排障经验翻译一下登录服务负责与其他交换机节点或服务交换数据的接口级联时两台交换机之间建立会话就靠它。目录服务也叫名称服务器节点注册、查询、发现其他设备都走这里。主机 HBA 卡注册 WWN、存储端口被识别靠的就是它。光纤控制器服务负责节点状态变更通知链路断开、端口 down 时整个 fabric 里其他设备要尽快感知。时间服务保持时间同步日志时间戳对不对就看它所以后面会强调 tsclockserver 一定要配。管理服务用户能配置管理的唯一一项服务交换机基本配置和通道业务配置都在这层。别名服务通过管理服务管理提供节点名称注册和分组也就是 alias 机制的地基。广播服务发到广播地址的帧会扩散出去类似以太网的广播域概念。理解这七项不用死记只需要记住一条主线FC 网络里的设备是靠 WWN 注册和发现的交换机 OS 里的目录服务、别名服务、光纤控制器服务都在围绕 WWN 做文章。后面配置 zone 时用的 alias 和 WWN底层就是这些服务在支撑。2.2 FC 与 TCP/IP 的差别为什么存储网络更依赖硬件卸载很多从以太网转过来的同事一开始会拿博科交换机当普通交换机用这是最容易走偏的地方。手册里对比了 FC 交换机与以太网的区别传输介质上 FC 通常走光纤以太网可以双绞线也可以光纤协议栈上 FC 是专为存储设计的协议TCP/IP 是通用通信协议应用场景上 FC 交换机主要构建 SAN支撑大规模存储和备份以太网则覆盖局域网和广域网通信。更关键的是 FC 协议与 TCP/IP 协议在实现路径上的差别。TCP/IP 协议栈跑在主机内核里以太网卡把每个帧送到主机协议栈IP 地址分析、TCP 分段定界、校验、重传检测、包拼接全部要消耗主机 CPU中间还有多次内存拷贝时延自然高。而 FC/SAS 的下面四层在控制器硬件电路或固件里就完成了送到主机内存的数据直接就是上层 Payload。HBAHost Bus Adapter卡把脏活干完CPU 占用小、时延低这也是高性能存储场景宁愿用 FC SAN 而不是以太网 iSCSI 的原因之一。2.3 基础配置实操登录、改密、管理地址、超时与时间同步连接博科交换机有三种常见方式。串口连 console 口最稳适合设备还没配 IP 的时候配置好管理口之后可以用 SSH管理口默认地址是 10.77.77.77默认账号 admin、密码 password新设备上线第一件事就是改掉它。Web 方式走 https注意对版本有要求手册里特别提到 Brocade G6510 需要 Java 7G620 需要 Java 8版本不对登录页面会直接白屏。以下命令我每次开局都会按顺序过一遍passwd passwd admin ipaddrset timeout 30 tsclockserver 10.31.255.254 switchname SAN-SW01passwd 不带参数是改当前用户密码带用户名是管理员改指定用户密码新装设备默认密码必须改。ipaddrset 设置管理地址确认后立即生效不需要重启但别在 SSH 连接状态下乱改当前会话地址否则断连接。timeout 单位是分钟0 表示永不过期生产环境不建议设 0一般设 30 分钟兼顾安全和不打断操作。tsclockserver 指定 NTP 时间服务器地址引号不能省时间不同步会导致日志时间戳错乱排障时非常被动。switchname 改交换机名称改完用 switchshow 就能看见级联时建议把交换机名按机房位置规划好别用默认的 Switch。交换机启停和端口上下电也是高频操作switchdisable 和 switchenable 是整机禁用/启用做大规模变更前习惯先 disable 再操作portdisable 和 portenable 控制单个端口整机关机用 sysshutdown 而不是直接拔电命令会走正常下电流程。2.4 一条命令看全局日常查询命令速查手册 3.2.8 节列了一长串 show 命令按使用频率整理成速查表命令作用使用场景switchshow查看交换机状态和端口状态第一件事看端口是否 online、是否为 E-Portipaddrshow查看管理地址确认 IP 配置fabricshow查看级联交换机成员看 fabric 里有哪些交换机zoneshow查看已生效 zone配合 cfgactvshow 使用cfgactvshow查看已生效的配置文件确认当前生效的 cfgalishow查看设备别名信息看别名和 WWN 对应关系portshow查看端口状态和配置比 portcfgshow 多连接状态portcfgshow查看端口配置排查端口参数porterrshow查看端口传输错误链路质量排查sfpshow 端口号查看光模块光功率光衰排查portperfshow查看端口吞吐量带宽确认supportshow收集完整排障信息报障前必跑chassisShow查看主板信息硬件信息memshow查看内存使用资源排查fanshow查看风扇状态硬件巡检uptime查看系统运行时间看是否重启过3. zone 配置全流程从 cfg 到 alias 再到 zone 的三层命令链3.1 三层结构为什么要分开cfg、alias、zone 各自职责SAN 里的 zone 决定哪些端口/WWN 可以互相通信相当于以太网 VLAN 在 FC 世界的对应物。博科的 zone 体系分三层手册里建议的顺序是先创建 cfg 配置文件、再创建 alias 别名、最后创建 zone把成员往里加。cfg配置文件一组 zone 的集合同一时刻只能有一个配置文件生效。zone区域由一组成员组成的通信白名单成员可以是 Domain,Port、WWN 或 alias。alias别名给 WWN 或一组 WWN 起个人类可读的名字比如把某台主机 HBA 的 WWN 命名为 HyLocal_ESXi112222_p1。为什么非要搞三层因为 WWN 一串十六进制字符根本记不住alias 相当于给 WWN 做了 DNS 解析zone 用 alias 做成员后续换 HBA 卡改 WWN 时只需要改 alias不用动 zone 和 cfg。这就是手册里“重命名别名后相应的 zone 信息会不会跟着变更会”这句话的底层逻辑。3.2 创建与生效一条链路走到底新建 zone 业务的标准流程拆成六步以手册里的案例为准cfgCreate xxxxxxj_idc aliCreate HyLocal_ESXi112222_p1, 51:40:2E:c0:15:54:F5:14 zonecreate testzonename, HyLocal_ESXi112222_p1;H3C_C650_1 cfgAdd xxxxxxj_idc, testzonename cfgsave cfgEnable xxxxxxj_idccfgCreate 的第一个参数是 cfg 名称第二个参数可写可不写不写就是建一个空 cfg写上 zone 名就是建 cfg 的同时把 zone 加进去。我习惯先建空 cfg再逐步加 zone方便维护。aliCreate 的第一个参数是别名第二个参数是 WWN 或成员列表多个成员用分号分隔。zonecreate 的第一个参数是 zone 名第二个是 zone 成员可以是 Domain,Port、WWN 或 alias。最实用的写法是直接引用 alias后续换 WWN 不用动 zone。cfgAdd 把新建的 zone 挂到 cfg 下注意命令名是 cfgAdd。cfgsave 是把当前配置写入非易失存储这一步不做重启交换机配置全部丢失相当于没存盘。cfgEnable 让配置文件生效同时只能有一个 cfg 生效。新 enable 的 cfg 会替换掉之前生效的那个所以变更前一定要看清当前 cfgactvshow 显示的是哪个。手册里有一句提醒“是否成功要看最后能否生效此条也适用于别名”意思是配置命令本身不报错不代表能通信最终以生效后的实际链路状态为准。3.3 变更与删除rename、add、remove、replace、delete 全命令日常运维里创建 zone 只是一部分更多是给已有 zone 加成员、减成员、换 WWN。这一组命令直接列出来全部是手册原版命令zoneObjectRename testzonename, newzonename aliadd aliName, member zoneadd zoneName, member aliremove aliName, member zoneremove zoneName, member zoneobjectreplace oldZonemember, newZonemember alidelete aliname zonedelete zonename cfgdelete cfgnamezoneObjectRename 既可以重命名 zone 也可以重命名 alias重命名后必须 cfgsave 和 cfgEnable否则不生效。aliadd 和 zoneadd 是加成员aliremove 和 zoneremove 是减成员。成员格式与创建时一致WWN、Domain,Port、alias 都支持。zoneobjectreplace 是替换成员适合改 WWN 的场景主机换 HBA 卡时用它把旧 WWN 替换成新 WWN比删了重建省事。alidelete、zonedelete、cfgdelete 对应三层删除分别删别名、删 zone、删配置文件。这里有个容易误解的点必须提醒删除是全局删除不是只从当前配置文件里删。也就是说 zonedelete 删掉的是这个 zone 定义本身所有引用它的 cfg 里都会没有它。手册里原话是“全局但大多时候一个 zone 只存在于一个配置文件里”所以执行删除前先确认这个 zone 没有被其他 cfg 引用。3.4 注意zone 操作里的三个边界结合手册和实际操作有三个边界值得反复提醒同时只能有一个配置文件生效。如果你有两个 cfg比如一个给数据库用、一个给备份用记住 cfgEnable A 之后 B 就失效了。常见做法是把所有 zone 放一个 cfg 里统一管理或者按业务场景切不同的 cfg。所有修改都要 cfgsave 后再 cfgEnable。只执行 aliadd/zoneadd 而不做这两步配置只是临时生效设备重启就回滚这是“zone 配置没生效”类工单最常见的根因。修改生效后建议马上用 cfgactvshow 复核。配置者经常只看命令行返回的 done 就完事但生效状态要以 cfgactvshow 输出为准它显示的才是当前真正跑在交换机上的 zone 集合。4. 交换机级联domain ID、license 与长距离参数一次讲清4.1 级联前置条件License、domain ID、端口模式数据中心存储扩容时经常会遇到交换机端口不够用把两台博科交换机级联成一个大 fabric 是标准做法。但级联不是插根线就完事手册里的案例演示把前置条件说得很清楚。首先两台交换机连接前必须确认级联授权。手册原话“级联 License无论距离长短两台交换机进行连接都需要购买级联授权。”添加用 licenseadd后面跟授权码查看用 licenseshow 和 switchshow。没有 license 的交换机级联端口根本起不来。另外还有一张 Extended FabricEFLicense那是远距离连接授权超过 10 公里就需要别和级联 License 搞混。其次修改 domain ID。光纤交换机默认 domain ID 都是 1两台都是 1 的设备直接级联会冲突必须把其中一台改成别的值。修改方式走 configure 交互命令switchdisable configure # Fabric parameters (yes, y, no, n) : [no] y # Domain ID 输入唯一域 ID取值范围 1-239 switchEnable修改 domain ID 前先 switchdisable把交换机禁用避免在业务运行状态下改 fabric 参数导致链路抖动。configure 进入交互配置在 Fabric parameters 提示后输入 y 进入 fabric 参数配置指定新的 domain ID。其他参数直接按 Ctrl-D 接受默认值退出。改完用 switchEnable 重新启用交换机domain ID 生效。4.2 Trunk 与长距离参数portcfgtrunkport 和 portcfglongdistance级联链路带宽不够或者距离较长时就要用到 trunk 和长距离参数。Trunk 口配置用 portcfgtrunkport 加端口号把多个物理端口聚合成一条逻辑 ISL 链路。配置 trunk 之前先跑 portbuffershow 看端口 buffer 资源buffer 不足会影响长距离传输表现。长距离配置是最容易抄错的部分手册给了两条命令模式portcfglongdistance 47 LS 1 -distance 63 portcfglongdistance 47 LD 1 -distance 1047 是端口号。LS 是手动指定长距离模式后面的 1 是 buffer 池编号-distance 63 表示按 63 公里的距离分配 buffer。距离填多少就按多少预留 buffer如果实际距离超过配置值端口会出现 buffer 欠载表现为链路不稳、错包上涨。LD 是自动远距离连接模式交换机会根据连接的速率和距离自动分配 buffer 值。LD 模式支持最大 500 公里 1Gbps这种场景一般用于跨城容灾。我一般短距离级联10 公里以内用默认配置不做长距离设置超过 10 公里先试 LDLD 起不来再手动 LS。手动 LS 的好处是可预测坏处是距离参数要填准填错反而坏事。4.3 FEC 与端口持久化级联端口有时候还要处理 FEC前向纠错的开关问题。手册给的是portcfgfec --disable -FEC 47 portcfgpersistentenable 47portcfgfec --disable -FEC 47 表示关闭 47 号端口的 FEC 功能启用时把 disable 换成 enable 即可。某些老光模块和交换机对 FEC 兼容性不好开启状态下端口反复 up/down关掉就稳定这类玄学问题遇到再处理。portcfgpersistentenable 让端口在交换机重启后自动启用避免重启后端口起不来还要手动干预级联端口和重要业务端口建议都配上。4.4 级联验证E-Port、Upstream 和 downstream 的判断级联配置完成后验证命令是固定的三件套ISLshow fabricshow switchshowISLshow 查看交换机间链路状态fabricshow 查看级联成员switchshow 看端口类型。级联成功的标志是端口状态从普通端口变成 E-PortE 指 expansion 扩展端口主交换机后面会标出 (UPstream)下级交换机会显示 (downstream)。看到这两个标记说明主备关系已经确立fabric 收敛完成此时才能继续做上层的 zone 配置。5. 常见问题与排障巡检命令、日志收集与四个高频坑5.1 日常巡检看什么switchshow、porterrshow、sfpshow、portperfshow博科交换机巡检的核心是端口健康度。日常巡检四步先 switchshow 看端口协议状态再 porterrshow 看错误计数然后 sfpshow 看光功率最后 portperfshow 看吞吐量有没有打满。这套组合在手册里都有但指标怎么看有讲究。porterrshow 是链路质量的核心依据常见错误字段包括 Enc_Out编码错误输出和 Crc_ErrCRC 校验错误。手册给了一条判断经验如果 Enc_Out 单独上涨大概率是光纤线问题如果 Enc_Out 和 Crc_Err 同时上涨很可能是 GBIC/SFP 光模块问题。这条经验验证过很多次换光纤线还是报错就往光模块上查基本没跑偏。sfpshow 看光功率手册给的经验值是 398uw 为正常。实际操作时看 Rx 和 Tx 光功率读数低于阈值说明光衰减严重检查光纤接头是否脏污、弯曲半径是否过大、对端光模块是否老化。5.2 收集排障日志supportshow 不只是“看一眼”报障前必做的一件事是收集完整的排障信息。手册里明确标了 supportshow 是“查看用于故障排除的详细信息”这条命令的输出体量非常大包含交换机配置、端口状态、错误日志、固件版本、级联拓扑等一次执行相当于把交换机体检报告全打印出来。习惯是把输出重定向到文件再打包发给厂商或组内分析避免刷屏遗漏supportshow support_$(date %Y%m%d_%H%M).txt这条命令把 supportshow 输出写入带时间戳的文件文件名里带上日期方便归档。遇到交换机间歇性故障时光靠现场那几分钟往往不够supportshow 里的历史错误计数和日志才能还原现场。另外收集完 supportshow 后建议再补一份 switchshow 和 porterrshow因为工单里最常被追问的就是这两份附加材料。5.3 四个高频坑与排查记录坑一zone 建了、cfg 也 enable 了主机还是看不到存储。 现象zonecreate 和 cfgAdd 都返回成功cfgEnable 也没报错但主机端多路径软件扫不到存储 LUN。 原因最常见是只 cfgsave 没 cfgEnable或者 cfgEnable 后又执行了其他 cfg 的 cfgEnable 把当前配置顶掉了。另一个可能是 zone 成员写成了物理端口 Domain,Port但存储端实际映射的是 WWN。 解决先跑 cfgactvshow 看当前生效的到底是不是你建的那个 cfg再用 zoneshow 确认 zone 成员是否完整最后用 fcping 验证两端 WWN 可达性。坑二porterrshow 里 Enc_Out 和 Crc_Err 同时上涨链路还偶发断连。 现象错误计数持续增长端口状态在 online 和 offline 之间抖动。 原因手册的判断标准在这里很灵验Enc_Out 和 Crc_Err 同时涨指向光模块SFP/GBIC问题不是光纤线本身。 解决拔插并清洁光模块条件允许时换一个同型号光模块观察计数是否停涨。如果只是 Enc_Out 单独涨优先换光纤跳线。坑三级联后对面端口状态不是 E-Portfabricshow 看不到对方交换机。 现象ISL 物理链路已经 up但端口类型一直停留在其他状态fabric 里看不到新加入的交换机。 原因最常见是两台交换机 domain ID 都为 1 没改其次是级联 license 未添加端口被拒绝进入 fabric。 解决先 licenseshow 确认授权在位再用两台交换机的 switchshow 看 domain ID有冲突就按 4.1 节步骤把其中一台改成其他值再重新 enable。坑四sfpshow 查到的光功率明显低于正常值主机端 I/O 性能下降。 现象链路没断但吞吐量上不去sfpshow 读数比阈值低很多。 原因光模块老化、接头脏污或尾纤弯曲半径过小。 解决先清洁光纤接头两端再检查跳线走线有没有死弯最后更换光模块和跳线。更换时注意模块型号要与交换机端口速率匹配。5.4 常用故障验证手段fcping 与 checkrclink手册案例里给了两个验证工具fcping 用于验证 FC 通信checkrclink 用于测试传输带宽。多路径环境里也可以用 fcping 做基础链路健康检查。fcping 51:40:2E:c0:15:54:F5:14 fcping --number 5000 51:40:2E:c0:15:54:F5:14fcping 不带参数默认 ping 指定 WWN--number 指定发送包数5000 包可以更充分暴露丢包和时延抖动。在级联链路调优后习惯跑一轮 5000 包的 fcping 做回归确认无误后再切业务。checkrclink 分为服务端和客户端两步checkrclink serverstart 2:4:1 checkrclink startclient 3:4:1 fe80::2341:2:ac02:6523 60serverstart 在源端启动服务startclient 在目的端发起带宽测试参数分别是本端端口地址、对端地址和测试时长秒。测出来的吞吐量可以直接看出长距离参数配置是否合理、带宽是否打满。这个工具需要交换机支持并开启相关功能现场不支持时可以用 portperfshow 间接看实时吞吐。6. 批量生成 zone 命令从 Excel 到 CLI 的十分钟操作6.1 先整理 WWN、alias、zone 对应表做一次大的 zone 规划时手敲几十条命令很容易出错。我的做法是先整理一张映射表把业务、主机、HBA 卡 WWN、存储端口 WWN、alias 名、zone 名对应起来。手册 3.4.2 节提到的“拟定和整理别名、zone 信息”就是这个思路。表头至少包含 alias、WWN、归属 zone 三列每个 zone 遵循一个命名规范比如用“业务_机房_用途”的格式后续在交换机上看到 zone 名就能直接定位业务。6.2 用脚本把表变成命令整理完表之后剩下的交给文本处理。常见做法是用 awk 按行生成命令我一般这样拼awk -F, NR1 { print alicreate \$1\, \$2\ } aliases.csv-F, 指定逗号作为分隔符对应 CSV 表结构。NR1 跳过表头行避免把表头也拼成命令。每条记录生成一条 alicreate 命令$1 取 alias 名$2 取 WWN。生成命令后先不要直接执行把输出保存成脚本文件检查一遍 alias 名有没有空格、WWN 有没有大小写混乱。WWN 大小写不敏感但建议统一比如全部小写方便后续 grep 检索。zone 创建和 cfgAdd 也可以用同样方式批量生成生成规则就是第 3.2 节那条命令链。6.3 执行与复核批量脚本执行时我习惯分成三段跑第一段建 alias第二段建 zone 和 cfgAdd第三段 cfgsave 和 cfgEnable。每段执行完用 alishow、zoneshow、cfgactvshow 分别核对数量确认无误后再执行下一段。这样即使中间某条命令拼错影响范围也能控制在当前段落内不至于把整个 cfg 搞坏。从那以后我每次做 zone 变更都强制走一遍先整理映射表再批量生成命令执行后立刻用 cfgactvshow 复核生效状态。特别是涉及级联和长距离链路的时候命令执行顺序和参数边界直接决定业务通不通。这套流程看着多花十分钟但能省掉后面至少半天的排障时间希望帮到你。本文还有配套的精品资源点击获取
返回列表