开发者社区> 余二五> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

一波三折:交换机升级过程故障排除实例

简介:
+关注继续查看
这篇文章确实不错,完整仔细地记录了IOS升级碰到的几个问题,值得我学习,所以转载了下来。本文摘自:[url]http://net.yesky.com/94/2534594.shtml[/url]
      各公司的网络管理员在选购网络设备的时候都是精挑细选,在同等级别的不同厂商之间反复研究,多次比较后选出最佳性价比的产品来。不过有一点可能很多网络管理员都忽略了,那就是网络产品的未来,一个产品不可能一直使用肯定会有出问题的时候,出问题后厂家的服务就显得尤为重要了。同样网络技术是在不断发展前进的,网络产品也要有一定的可升级可扩展性。最近笔者就遇到升级核心设备的问题,现记录如下:
  一,升级环境:
  事情的原因是这样的,公司下属部门申请到一定的经费用于网络升级,因此该部门前几天新买了一台思科的Catalyst6509交换机,并且配备了WS-X6548-GE-TX这个思科在去年四月才新推出的10M、100M、1000M自适应的48口RJ-45交换模块。6509一共有9个插槽,所以可以插上9个模块,为核心设备升级添加模块是习以为常的事情了。不过由于思科的软件推出总是滞后于硬件,所以拿到手的Catalyst6509交换机标准配置的12.2(14)SX1版本的IOS并不能支持该模块。这就涉及到了升级问题,需要升级6509交换机的IOS。于是我和子部门网络管理员从CISCO官方网站找来支持WS-X6548-GE-TX模块的新版本的IOS准备升级。没有想到,这次简单的升级工作却弄得我们两个“准高手”麻烦连连,问题接二连三地出现。
  二,没有RJ-45接口
  对于本次采用的这个WS-X6548-GE-TX模块一共有48个RJ-45端口,然而6509交换机又没有配其他的带RJ-45接口的模块。这可怎么办呢?毕竟用思科的TFTP Server升级IOS就必须得将交换机和网络上的一台装有TFTP Server的PC相连。经过一番寻找,终于发现超级引擎720上面有一个RJ-45模样的接口,旁边写着Link的字样,结果拿来网线插上一试,发现指示灯都不亮。本来我们两个以为有了希望,然而指示灯不亮就说明该接口无法使用,不过因为这个接口是惟一的希望,否则只能用xmodem方式传输41MB的IOS,传输时间恐怕让我望而却步。
  小提示:
  使用XMODEM传输IOS速度上是非常让人头疼的,笔者曾经用XMODEM方式传过一个2950交换机的IOS,总容量也就2MB左右,足足用了两个钟头。按照这个速度来说41MB最快也得30几个小时。
  既然使用XMODEM方式传输IOS不太现实,那么还要从超级引擎720上面那个RJ-45模样的接口入手。从网上搜索到相关资料,原来超级引擎720上的port2 有两种模式:一种是RJ-45接口,还有一种是SFP(a small form-factor pluggable)接口。而默认的设置是SFP,要使用RJ-45接口就必须更改设置。输入以下命令进行修改——
  Router(config)#interface gigabitethemet 5/2
  //进入该接口进行设置
  Router(config-if)#media-type rj45
  //修改模式为RJ45,默认是SFP
  Router(config-if)#no shutdown
  //启用该接口
  执行命令后发现橘红色的指示灯终于变成了绿色,接下来就可以使用传统的TFTP方法将升级所需的IOS文件传到到交换机中。本来以为接下来的事情就应该很轻松,谁知道拦路虎并没有就此罢休。
三,TFTP传输协议不支持32兆
  接下来给接口配上管理地址,再把原来的IOS备份出来。在超级终端全局模式下输入命令:
  Router#copy sup-rootflash: s72033-pk9sv-mz.122-14.SX1.bin tftp://192.168.1.1
  TFTP Server 出现一连串#字号,开始传输数据,本来以为一切OK。谁知道眼看着就要传完的时候,系统提示:“timeout! Write error!”。
  根据系统提示的信息我查询了网线是否断了,磁盘空间是否不足,答案都是否定的。再次执行传输命令故障依旧。到6509上查看传输完毕的IOS大小为32MB,比完整的IOS32.1MB稍微小一点。为什么多出的0.1MB就无法传送呢?
  开始以为是TFTP的软件有问题,版本过低造成的。从网上下载了一个第三方的TFTP server一试,结果还是这样。又找来3Com的TFTP Server,这次效果更差,传到16MB的时候就断开了,系统提示还是超时和写入错误。仔细分析,终于发现了问题关键所在。两次传输,一次正好32MB,一次正好16MB,连字节数都不差,肯定不是传输线路问题。找来资料一查,原来TFTP(Trivial File Transfer Protocol)普通文件传输协议最大就支持传输32MB的文件。于是又找来思科文档,一番查询,找出了第2种解决方法,用FTP就行了。于是在PC上建好FTP服务,键入如下命令:
  Router# configure terminal
  //进入交换机配置模式
  Router(config)# ip ftp username username
  //设置FTP的访问用户名
  Router(config)# ip ftp password password
  //设置登录FTP的密码
  Touter(config)# end
  //结束,退出
  Router#copy sup-bootflash:s72033-pk9sv-mz.122-14.SX1.bin ftp:[//[username[:password]@]192.168.1.1]
  //执行FTP传输命令将原有bin文件上传到FTP,传输文件为s72033-pk9sv-mz.122-14.SX1.bin,FTP服务器地址为192.168.1.1。
  使用FTP传输更新IOS后文件复制非常正常,等待了几分钟,系统提示“successful!”。看来FTP比TFTP就是强大灵活,限制也少很多。
四,协议错误
  将IOS成功备份到FTP上后就轮到将新的用于升级的IOS进行上传了。进入6509配置模式使用如下命令进行操作:
  Router# configure terminal
  //进入配置模式
  Router(config)#ip ftp username username
  //设置登录FTP的用户名
  Router(config)#ip ftp password password
  //设置登录FTP的密码
  Router(config)#end
  //退出设置
  Router# copy ftp:[[//[username[:password]@192.168.1.1] / s72033-jk9o3sv-mz.122-17a.SX.bin] sup-bootflash:
  //复制s72033-jk9o3sv-mz.122-17a.SX.bin新版IOS到本交换机。
  本来以为轻轻松松完成的,结果系统这次提示“Protocol error!”。协议错误?重试一次,下载没有问题的,上传还是提示协议错误。经过笔者分析怀疑问题可能出在FTP Server上,我的FTP Server是用Server-U这个第三方软件做的,会不会是兼容性问题造成的呢?于是换成微软Windows2000自带IIS中的FTP组件建立FTP服务器。再次尝试下载与上传都没有任何问题了,不再提示协议错误。屏幕显示Loading…。几秒钟后又出现提示信息:“Flash空间不足”。
  五,Flash空间不足
  出现FLASH空间不足信息后我特别查询了6509核心设备的硬件配置,默认6509标准配置的Flash为64MB,标配IOS大小为32.1MB,要升级的12.2(17a)SX 版本IOS大小为40.6MB,这样看来空间不足再所难免。但是这个问题还是相对好解决的,将Flash里原来的IOS删除了然后再上传。于是输入命令:
  Router#delete sup-bootflash:s72033-pk9sv-mz.122-14.SX1.bin
  然后再传。提示信息还是空间不足!这个时候交换机的IOS已经被我删除了,要是不小心掉电或者重起的话,交换机就起不来了。在管理界面中用show命令看,IOS文件已经没有了,但是空间还是剩余30多兆,就是说flash没有被清空。这时候想起以前删除vlan.dat文件后要重启交换机才能生效,可是现在重启是万万不行的。怎么办?上思科网站查找有利用价值的信息,终于找到一条命令squeeze,该命令是将已经删除的文件彻底清空,就好比清空回收站一样。运行:
  Router#squeeze sup-bootflash:后再用SHOW命令查看,发现Flash已经被彻底清空,可用空间为64MB。这时候再用FTP上传,几分钟以后就会看见屏幕上提示的成功信息。Reload一下,用show flash命令看IOS版本已经变成了12 .2(17a)SX。插上新模块WS-X6548-GE-TX一试,一切OK,新模块可以正常运行了。
  经验总结:
  本来以为轻松完成的工作却是一波三折,看来高端产品升级也是非常复杂的,很多原来没有重视的环节都会出现这样或那样的问题。本次故障排除使我也明白了一个道理,技术没有尽头,遇到问题到官方网站查询是最好的办法。还有就是做事情之前一定要三思,如果删除FLASH后想当然的执行了RELOAD的话,交换机就无法启动了,那样的后果将会非常严重。操作前请停手思考30秒往往可以减少很多不必要的损失.









本文转自 chris_lee 51CTO博客,原文链接:http://blog.51cto.com/ipneter/92235,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
生产系统故障定位-多线程性能优化、数据库连接被关闭
错误使用spring申明式事务管理器带来的性能降低; 定位多线程中的性能瓶颈; jtds + sqlserver2008r2的一次数据库连接被持续关闭的故障定位
1729 0
DLL远程注入实例
一般情况下,每个进程都有自己的私有空间,理论上,别的进程是不允许对这个私人空间进行操作的,但是,我们可以利用一些方法进入这个空间并进行操作,将自己的代码写入正在运行的进程中,于是就有了远程注入了。 对dll后门的编写就不作过多的讨论了,现在来看实现注入功能的可执行文件的编写: 用到的函数有: O...
669 0
线程锁实例2---读写加锁实例
#include #include #include struct student { int a ; int b ; int c ; int d ; int e ; int f ; }; char stu[6] = {10,10,10,10,10,10}; /...
793 0
两个死锁的实例
关于数据库中的死锁。如果在应用中碰到都会毫不犹豫转交给DBA,但是从目前我接到的deadlock的问题来看,和Oracle官方的描述基本都是一致的。 The following deadlock is not an ORACLE error.
759 0
+关注
文章
问答
文章排行榜
最热
最新
相关电子书
更多
思科软件定义访问:实现基于业务意图的园区网络
立即下载
复杂网络架构下的网络故障智能处理
立即下载
运用新技术解决有状态应用的冷热迁移挑战 迁移策略+新容器运行时
立即下载