兄弟姐妹们:
之前有帖子讨论powerpath如何处理链路故障,超时机制,也有帖子问如何判断san环境的健康,我们来讨论下,如何预警并处理一个FC链路的故障。这种故障在实际中比比皆是:
一个SAN环境,在出线链路物理故障时,交换机和存储、主机都有感知。交换机能看到CRC,存储能看到FC loop闪断,主机也能看到链路不稳,但是由于发生和恢复极快,基本都是在秒级,所以在一些看起来都“正常”,只有“warning”,“online”,没有“critical”的情况下,应用(比如OLTP数据库)挂了!
如果物理链路在某一个时刻,突然坏了,不再恢复,那么各种故障处理机制会生效。但是就怕时好时坏,不稳定的情况出现,故障处理机制没有彻底进行,所有io持续压在这个链路上,应用层挂,是必然的。
我们虽然可以监控各种日志,主机,交换机,存储,但是能扑捉的信息,往往只是个“偶尔”,“可能”,这些信息,不能直接作为故障处理的依据,也就是说,即使扑捉,也就是产生一种“将要坏”的预期,而无法避免。
这可如何是好啊?