SES机箱管理技术在实际的应用中是随处可见的,现在的外置磁盘阵列柜,包括SATA/SAS/FC等接口的,大部分都采用SES技术来监控阵列柜中的各个元素,比如温度、风扇、电源等状态。一般的磁盘柜都设计了专门的总线环路来获许各种状态数据和传输SES规范中的命令,之后传输到阵列柜的“大脑”控制器中,再之后管理员就可以通过GUI或者CLI来得到相关信息。<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
另外一种常见的SES应用在服务器内部的RAID控制卡和磁盘热插拔背板之间,现在主流的RAID控制卡采用的芯片都支持I2C总线,而卡上也设计有I2C接口;一些热插拔背板也都嵌入了支持I2C总线的管理芯片,并且设计有专门的I2C接口,这样就可以用一根特殊的线缆连接卡和背板上的I2C接口,之后就可以实现SES机箱管理功能,也就是大部分人说的SES over I2C,其原理是在发送的时候把SES规范中的SCSI命令包裹到I2C中进行传递。这种管理方式由于采用单独的总线,和主机实际的I/O通道分开,也称作带外管理。
I2C是Inter-Integrated Circuit的简称,是Philips公司开发的基于两线式的串行总线,如今广泛的应用于服务器存储中进行对组件状态的监控管理。I2C总线的两条线是指数据线SDA和时钟线SCL,都是双向的,既可以发送又可以接受数据。I2C总线支持多主控模式(Multi-Master),当中的任何一个能发送和接受数据的设备都可以成为主总线(BUS Master),相应的另外的设备都作为附总线(BUS Slaves),所以总线中的所有设备都需要有唯一的地址,然后大家串在一块进行按照I2C的规范进行数据传递。
目前比较普及的用于磁盘背板管理的芯片包括AMI公司的MG9071和MG9072芯片,其中MG9071能管理4个磁盘而MG9072能管理8个磁盘,如果要管理更多磁盘的话,就需要使用更多的这种芯片集成到磁盘背板中。这种芯片从技术术语上来说是作为SEP(Storage Enclosure Processor),可以想象成背板上的“大脑”,对于磁盘的指示灯状态等可以进行控制,另外还可以获许到背板上的温度和风扇感应器的状态。这两个芯片支持两种方式的机箱管理,一个就是SES Over I2C,另一个是SGPIO(一种新型的带内管理方式)。下图就是通过SES Over I2C带外管理的拓扑图,用线缆连接HBA/RAID卡和背板上的I2C接口后,就可以实现基本的机箱管理了。例如最基本的功能,如果RAID5组中的一块磁盘物理损坏掉,RAID5也会自动变成降级状态,这个时候如果有了SES Over I2C,就可以把此硬盘的状态指示灯点成报警的红色,从而客户可以得到提示来检查磁盘的状态或者换盘。
转载于:https://blog.51cto.com/songchengyong/142550