ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

光纤交换机配置实战:从WWN到Zoning的完整流程

光纤交换机配置实战:从WWN到Zoning的完整流程 前阵子帮客户做机房迁移几十台服务器要接到新到的存储上光纤交换机也是从老机房拆过来的。结果服务器BIOS里HBA卡都认到了系统里存储盘却一块都看不到折腾了一下午最后发现罪魁祸首竟然是交换机重启后Zone配置压根没保存cfgshow一查空白一片。这种场景凡是配过SAN的人应该都不陌生。光纤交换机配置这件事说到底不是什么高深技术但它和配一台普通二层交换机完全是两个思路。我第一次接触的时候也被绕晕过——什么WWN、Zone、Domain ID、ISL全是新名词。这篇就把一套完整的光纤交换机配置流程从头捋一遍从拆箱上电开始到管理IP、Zoning、级联、配置备份最后是现场排查经验全给你串起来。注意本文主要以Brocade博科系命令行来演示如果你手上是H3C的OEM型号命令几乎一样如果是Cisco MDS命令名不同但配置思路完全通用。1. 先搞清楚SAN里的游戏规则再动手配光纤交换机1.1 光纤交换机和以太网交换机根本不是一回事很多刚入行的运维会惯性思维交换机嘛插上网线、配个VLAN、改改端口不就行了这套逻辑放到光纤交换机上会把你坑得很难受。普通以太网交换机转发以太网帧靠MAC地址学习和VLAN隔离广播域设备之间大多数情况下是连上就能通。光纤交换机工作在FC协议层它的核心任务不是转发数据包而是搭建一条经过许可的通信通道。服务器上的HBA卡、存储的前端端口、磁带库全部靠WWNWorld Wide Name互相识别每个设备要访问另一个设备都必须经过交换机上的Zone规则放行否则两边就算物理上连着线也完全看不见对方。我见过不止一个新手拿着光纤交换机当普通交换机用线插上就觉得应该通了吧结果主机侧死活扫不到盘最后查配置发现Zone压根没建。记住一句话在SAN里面物理连通只是前提逻辑允许才是真正决定通不通的东西。1.2 配置的本质管理、连通、隔离三件事把光纤交换机配置拆开看本质上就三个问题配置目标对应问题关键手段管理你怎么控制这台设备管理IP、账号权限、SSH/串口连通该通的端口和设备能不能登录端口Enable、级联ISL、Domain ID规划隔离不该通的设备绝对不能通Zoning设计、配置启用一台刚出厂的设备你首先要解决我能不能管理它接着是插上去的HBA和存储端口能不能正常登录最后是哪些HBA能访问哪些存储端口这一步就是Zoning也是SAN运维里最重要的安全边界。1.3 不同品牌命令不同但底层逻辑一致Brocade的命令行是alicreate、zonecreate、cfgcreate这一套Cisco MDS则是device-alias、zone、zone-setQLogic的命令风格又不一样。但不管哪个品牌它们最终都在做同一件事把一组WWN或者端口归到一个Zone里再把多个Zone打包成一个配置然后激活它。所以这篇文章讲的虽然是Brocade命令但只要你理解了别名→Zone→配置→激活这条链路换任何品牌都是二十分钟上手的事。后面所有概念我都会先讲清楚为什么再给命令这样才能真正内化成自己的经验而不是背一串指令。2. 首次上电用串口把管理IP配稳才有后续2.1 为什么开局一定要用串口光纤交换机出厂默认没有任何IP地址你想要通过SSH或者Web界面管理它就得先给它配上管理IP。那怎么配IP只能先通过串口直接登录。这个逻辑和绝大多数网络设备一样。你指望设备出厂带个192.168.x.x指望DHCP给你分地址不可以。有些运维图省事直接插上网线用扫描工具去扫大概率什么都扫不到。所以手边常备一根Console串口线是你玩转光纤交换机的基本功。Console线一般是蓝色扁平线接头是RJ-45转DB9或者直接USB转串口买设备的时候通常会附带。2.2 串口连接和登录9600 8N1 是硬规矩用SecureCRT、Xshell或者MobaXterm新建串口会话参数固定波特率9600数据位8校验位None停止位1流控None这套参数简写就是9600-8-N-1绝大多数Brocade交换机的Console口都是这个配置不需要改。连接好之后回车设备会提示登录。Brocade的老版本默认账号是admin密码是password新版固件第一次登录会强制要求设置管理员密码按提示走就行。注意刚接上串口时如果屏幕没有反应先敲几下回车。还有一定要确认电脑识别到了USB转串口设备驱动没装好会显示连接失败这是新手最容易卡住的地方。2.3 进设备后先做三件事看版本、看状态、配IP第一次登录成功别急着改配置先把设备基本情况摸清楚。第一件事看固件版本version第二件事看当前端口的整体状态switchshow这个命令会列出交换机的Domain ID、Switch ID、端口数量、每个端口的类型和当前状态。端口状态那一列里No_Module表示没有插光模块No_Light表示有模块但没收到光信号Online表示物理层正常后面可能跟着设备登录状态。第三件事配置管理IPipaddrset执行后会进入交互式配置依次让你输入IP地址、子网掩码、网关。例如规划管理地址为192.168.10.20掩码255.255.255.0网关192.168.10.1直接回车逐项填写即可。配置完成后可以通过另一台电脑ping一下这个地址验证。配置完管理IP我一般会立刻验证SSH能不能登录。如果SSH能通就说明设备已经具备远程管理能力后面所有操作都可以把串口线收起来了。这里还有一个长期经验尽量给管理IP规划一个独立的带外管理网段别和业务网络混在一个广播域里。SAN设备承担的是存储链路心跳管理网络抖动不应该影响它的业务。另外端口状态如果是Offline或者Disabled记得先用portenable把端口打开光链路这层没起来后面一切免谈。3. 配Zone之前先搞懂WWN和FCID3.1 WWN就是FC世界的网卡地址如果拿FC世界和TCP/IP世界做类比WWN就相当于以太网卡的MAC地址。每一块HBA卡、每一个存储前端端口出厂时都会烧录一个全球唯一的WWN。WWN由64位十六进制组成长得类似这样10:00:00:00:c9:2b:1a:3d注意WWN还分WWNNNode Name节点名和WWPNPort Name端口名。一块HBA卡一般只有一个WWNN但每个端口各有一个独立的WWPN后者才是我们在配置Zone时真正要用到的身份标识。与之相对的还有一个概念叫FCIDFibre Channel ID它有点类似TCP/IP网络里的IP地址。设备在登录交换机时交换机会动态给赋予一个FCID用于数据转发时的寻址。但FCID是动态分配的交换机的Fabric结构变化、设备重新登录FCID都可能变。所以划分Zone的时候绝对不能拿FCID当依据要用WWPN这种稳定不变的身份。3.2 从哪拿WWN标签、命令行、系统工具三种方式第一种最笨也最直观直接看硬件标签。HBA卡的金属挡板上、存储控制器的面板上很多厂家会把WWPN直接印出来一长串十几位的十六进制数抄的时候要特别小心容易抄错。第二种如果设备已经连接到交换机并且登录成功直接在交换机上用switchshow看。输出内容中端口号旁边带着一个N或者Online的条目后面就会显示WWPN。第三种在服务器操作系统里看。Linux上可以看/sys/class/fc_host/下的对应文件或者用systool -fc_host、lsscsi -H这类工具Windows上一般需要HBA厂商的管理工具比如Emulex的OneCommand Manager或者QLogic的QConvergeConsole。存储端的WWN则可以在存储管理界面里查到。实操建议配置前把所有涉及的主机HBA端口WWPN、存储控制器端口WWPN列一张Excel表表头写清楚设备用途、主机名、接口卡槽位、对应端口WWN、接入的交换机端口。别嫌麻烦这张表就是你SAN环境的地图没有规划的Zoning后期一定乱成一锅粥。3.3 为什么创建Zone优先用WWPN而不是物理端口这就必须说说Zone的两种划分方式WWPN Zone和端口Zone。端口Zone是把Zone绑到交换机的物理端口上比如端口1和端口3组成一个Zone。优点是配置简单看起来直观缺点是只要线缆位置一变比如从端口1挪到端口5规则立刻失效而且排错时必须对着物理端口找在机柜里翻线简直要命。WWPN Zone是把Zone绑到设备的身份上只要设备还是那台设备无论它插在交换机的哪个端口规则都保持不变。虚拟化环境下还有个特殊场景叫NPIV一台物理HBA卡上会虚拟出多个虚拟WWN如果你用物理端口划分Zone很难精确管理这些虚拟WWN的访问范围而WWPN Zone可以从容应对。所以我的习惯是生产环境一律用WWPN Zone物理端口Zone只用于临时测试或极小的非关键环境。4. Zoning配置实操从别名到配置生效一条龙4.1 没有Zone的SAN就是裸奔的通道打个比方整个Fabric里的所有设备都在同一个广播域里没有Zone隔离时每台主机都能看到存储上所有LUN。这个看似方便实际非常危险——多台主机同时读写同一个LUN轻则数据错乱重则直接把文件系统打崩。存储上的LUN Masking卷映射虽然也能挡一部分但那是存储端的防线SAN交换机上的Zoning是网络侧的隔离两者缺一不可。Zone的粒度可以做到一对一也可以做多对多。生产环境常用的是一台主机的两个HBA端口和它对应的存储前端两个控制器端口组成一个Zone里面只放这台主机和它该访问的存储端口。这样既保持了链路冗余又不会让主机看到不属于它的存储资源。4.2 单台交换机上的完整配置命令下面我用一个具体场景演示。假设有一台主机web01它的HBA1端口WWPN是10:00:00:00:c9:2b:1a:3d有一台存储ds4800它的控制器A端口WWPN是50:06:0e:80:12:34:56:78。我想让它们俩互通。完整命令顺序是这样的alicreate web01_hba1, 10:00:00:00:c9:2b:1a:3d alicreate ds4800_a1, 50:06:0e:80:12:34:56:78 zonecreate ZONE_WEB01_DS4800, web01_hba1; ds4800_a1 cfgcreate CFG_PRD, ZONE_WEB01_DS4800 cfgsave cfgenable CFG_PRD一步步解释alicreate是创建别名给那一长串WWN起一个人类可读的名字。以后看到web01_hba1就知道这是哪块卡不用整天对着十六进制串发呆。别名里如果包含多个WWN用逗号分隔。zonecreate是把两个或多个成员放同一个Zone里。注意成员之间用分号分隔成员可以是别名也可以直接写WWPN建议用别名便于维护。cfgcreate是要把多个Zone打包成一个配置Configuration。Brocade的机制是一个交换机同一时间只能有一个Zone配置生效所以你把所有要用的Zone都塞进同一个CFG里。一个Zone如果不在当前enable的CFG里就算存在也不生效。cfgsave是把刚才创建的别名、Zone、配置写入保存区不执行这一步重启后全部丢失。cfgenable CFG_PRD是激活配置执行完这条Zone规则立刻生效。4.3 验证Zone生效的几条路径配置完不能拍拍屁股就走验证环节很关键。先看配置是否真的存进去了cfgshow这个命令输出当前生效的CFG里面包含哪些Zone每个Zone里有哪些成员一目了然。再看交换机上有没有设备成功登录switchshow如果端口上显示类似N的登录状态并且带FCID说明该端口上的设备已经完成Fabric登录正在等待接收SCSI命令。最后一步到主机端重新扫描磁盘。Linux环境让HBA卡重新扫一遍或者直接重启主机等系统起来后再看fdisk -lWindows则可以在设备管理器里禁用再启用HBA卡或者用存储多路径工具重新扫描。如果能看到对应的存储LUN这一套配置就算彻底打通了。这里有个细节我必须提醒修改Zone时cfgenable新的CFG不会和旧的叠加而是直接整个替换。所以改配置之前一定先用cfgshow把现有内容看清楚把要保留的Zone全部放进新CFG再激活。很多人就是在这里吃过大亏——想加一个Zone结果新CFG里只放了一个新Zone一enable线上所有Zone全部失效所有主机和存储的连接瞬间全断。5. 多交换机级联ISL、Domain ID和跨交换机Zone5.1 级联能解决什么问题又会引入什么问题一台光纤交换机端口不够用了或者机房设备分散在两三个机柜不可能每个机柜都单独拉一套存储这时候就需要把多台交换机级联起来逻辑上组成一个更大的Fabric。交换机之间互连的链路叫ISLInter-Switch Link对应的端口类型是E_PortExpansion Port。设备和交换机之间的端口叫F_PortFabric Port。级联之后整个Fabric共享同一个Zone数据库在一台交换机上创建的Zone可以在其他交换机上同步看到主机和存储只要在同一个Zone里就算分别连在不同交换机上也能互通这正是跨交换机Zone的意义。但级联也引入了一个必须规划的东西——Domain ID。5.2 级联的配置步骤与关键命令第一步规划好每台交换机的Domain ID。Domain ID是每台交换机在Fabric里的唯一编号类似OSPF里的Router ID范围一般是1到239。Brocade默认可能是动态分配但动态有个隐患一旦Fabric拓扑变化Domain ID可能重新分配跨交换机的路径计算就会受影响。生产环境建议全部固定。查看当前的Domain IDswitchshow在输出最上面找Domain ID字段类似Domain ID: 5。修改Domain ID的交互命令是configure进入后需要一路回车跳过很多设置项一直找到Domain ID相关选项。修改时设备会提示连接中断因为Domain ID变化会引发Fabric重算线上业务有瞬断风险。稳妥的做法是先停业务或者选在变更窗口操作。有些型号还支持在线改命令是switchid但我不建议在生产上冒这个险。第二步接ISL线缆。用光纤把两台交换机空闲的光模块连起来。连接后交换机会自动协商端口类型为E_Port。用switchshow查看端口状态如果类型从F变成E说明级联成功如果一直卡在OLOnline然后反复掉线先查物理链路。第三步确认Fabric稳定fabricshow这条命令会列出当前Fabric里所有交换机的Domain ID、交换机名和状态。看到两台的Domain ID都列出来并且状态正常Fabric就算合体了。第四步跨交换机Zone。这个过程和单台完全一样只是在创建Zone时把连接在不同交换机上的设备WWN放进同一个Zone即可Fabric会自动同步。我建议统一在某台固定的交换机上创建和修改配置比如第一台作为管理主节点避免多台设备同时修改造成配置文件冲突。5.3 级联时最常见的翻车现场一个是Domain ID冲突。两台交换机以前各自是独立Fabric各自用着相同的Domain ID直接连ISL交换机会反复尝试合并又拆开线上业务跟着一会儿通一会儿断。排查方法就是fabricshow如果看到的交换机数量不稳定、一会儿一台一会儿两台十有八九是Domain ID冲突。再一个就是距离和光模块。级联通常要跑几米到几十米的光纤有人随手拿了多模模块和单模光纤混插光衰减一下上来表现为ISL端口UP起来又掉错误计数器狂涨。遇到这种情况用porterrshow看错误计数重点看CRC errors和Link Reset这两个数值异常就是物理层在报警。还有一条经验在有业务运行的Fabric上新增交换机做级联建议先把新交换机switchdisable接好ISL、确认配置同步正常后再switchenable把业务引入的冲击降到最低。6. 配置完成后的兜底工作保存、备份、安全6.1 cfgsave 和 configsave 别混着用很多人在配置完成后有个习惯命令敲完就觉得自己已经保存了。实际上Brocade有两套保存cfgsave保存和Zone相关的数据库包括别名、Zone、Configuration。凡是涉及Zoning的变更都要先执行它。configsave保存交换机的系统级配置包括管理IP、Domain ID、端口配置、服务开关等。所以我们做完全部配置后习惯性把两条都执行一遍这样无论设备重启还是掉电配置都不会丢。6.2 配置备份与监控配置是运维人员的劳动成果更是生产环境的生命线建议每次变更后做一次备份。Brocade支持把配置上传到FTP/TFTP服务器configupload按提示选择协议、输入服务器地址、文件名就能把当前配置完整导出来。这个备份文件最好放到独立的备份服务器上并且做好版本记录命名规范一点比如switch-a_config_2025.06.01。真到交换机硬件故障需要整机替换时用configdownload把备份灌回去二十分钟就能恢复一个跟原来一样的环境这比重新配半天强太多。监控方面至少要把SNMP开起来把交换机纳入现有监控系统。重点关注端口状态变化、链路错误率、电源和风扇状态。SAN链路一旦出问题业务影响是即时且严重的越早发现越好。6.3 安全加固上线前最后一道关口光纤交换机的安全加固常常被忽略但SAN是承载核心数据的基础设施一旦失守后果严重。首当其冲的是账号密码。默认账号必须改密码这一点我在前面已经提过但还得再强调一遍我见过太多设备上线一年了还用着默认密码。其次是访问方式管理口只对带外管理网段开放尽量不要暴露给普通业务网络。还有服务端口的问题。许多交换机会默认开启HTTP、Telnet这些明文协议建议在configure里把不需要的协议关掉保留SSH就够了。如果设备支持IP过滤可以配置ACL控制管理IP的访问源。SNMP社区串也建议改成强口令并设置只读权限别用默认的public。7. 现场最常遇到的几个配置问题和排查思路7.1 端口一直No_Light八成不是配置问题switchshow看端口状态发现No_Light这就是物理层没收到光。先查光模块两头是不是都插好了再查光纤是不是收发光纤接反了。FC光纤头子上一般有防尘帽没插到位也会有这个问题。如果物理连接看着没问题就用命令看看错误计数器porterrshow关注CRC errors、Link Reset、Signal Loss这几列数值在稳定增长说明链路质量有问题。解决方案一般是清洁光纤头、换一根跳线、替换SFP模块做对照测试。7.2 Zone配置明明存在却不生效最典型的情况是你创建了Zone但忘了把它加进CFG或者创建了一个新CFG把老CFG里的Zone全丢了导致线上设备全断。排查优先看当前生效的CFGcfgshow确认需要的Zone真的在当前激活的CFG里。另外还要注意有些设备的Zone数据库有容量上限Zone或者Alias太多cfgenable会报错提示数据库已满。这时候可以用cfgsize查看当前Zone数据库使用情况把没用的Zone用zonedelete清理掉再做cfgsave。7.3 主机侧能看到HBA卡但看不到存储映射这种情况问题不一定在交换机上Zoning只是其中一个环节存储LUN Masking同样会挡。检查思路按照从下往上的顺序来先看交换机上主机HBA端口和存储端口是否都已经登录switchshow确认两边都在线再看这两个WWN是否在同一个Zone里cfgshow确认如果以上都正常就去存储侧的管理界面看LUN Masking是否把LUN映射给了主机HBA的WWN最后再看主机多路径软件有没有把路径正确识别出来。按这个顺序排九成问题都能定位。我见过很多人在主机上反复折腾驱动最后才发现存储侧压根没映射那叫一个浪费时间。最后再分享一条个人习惯每次配置或变更结束后我都会顺手执行一次supportshow把整台设备的技术支持信息导出一份留底。这个文件在问题排查、找厂商开Case时非常有用能省下大量来回沟通的时间。SAN环境里稳字当头能多做一步准备的事哪怕麻烦一点也值得。
返回列表