认识和使用热插拔的正确姿势

热插拔功能是PCIe SSD的一项重要功能, 能大大简化设备更换和调试步骤。特别是在服务器厂商推出支持 U.2 接口的产品后,对热插拔的需求更加广泛。热插拔在 PBlaze5 PCIe SSD应用非常成熟。这篇文章旨在为使用 PBlaze5为代表的U.2接口的PCIe SSD进行热插拔操作提供参考。

热插拔(Hot-plug)功能是允许用户在不关闭系统,不切断电源的情况下取出和更换设备,从而提高了系统对灾难的及时恢复能力、增强扩展性和灵活性等。支持热插拔的平台能够保证在热插入(Hot Insertion)的时候,自动检测到设备并将其注册到相应驱动,在热拔出的时候,能够自动检测到设备丢失并从驱动移除,整个过程不需要系统重启。 并且在热插拔操作之后,系统和设备能够正常工作。

热插拔操作看似简单,但是根据设备是否带电、操作系统是否提前得到通知等因素,热插拔有多重操作场景。根据场景的不同,热插拔可以分为以下四类具体的操作:

热插拔类型 场景描述 PBlaze5 支持情况
热添加 / 热插入
(Hot Add/Hot Insertion)
将 PCIe SSD 插入带电、OS 正在运行的系统中,或者同时有上层 软件(RAID)正在管理使用 SSD。 通常该操作是为了扩容或者替换失效的设备。 支持
正常热移除

(Orderly Hot Removal)

通知操作系统,提前禁用设备的情况下进行拔出动作。 已知设备失效,停止和设备的通信,或从上层软件中移除。 支持
热交换
(Hot Swap)
热拔出动作后又进行了热添加动作。 通常是进行失效设备的替换。 支持
意外热移除
(Surprise Hot Removal )
当系统还在使用 PCIe SSD 时,设备被突然拔出,这时可能还有 IO的通信,这种操作不推荐使用。 通常是操作失误导致,例如移除了错误的设备。PBlaze5 提供定 位功能,通过发送 locate 指令,可以点亮 LED 对需要移除的 SSD 进行定位。 支持 (不建议用户使用意外热移除操作,下文将进行具体解释

成熟的热插拔技术首先需要保障操作系统不会崩溃或者死机;其次,PCIe SSD 对于已经确认接收的 I/O 数据不会因为热插拔而导致数据丢失;最后在进行热插拔实验后,PCIe SSD设备能够正常工作。

需要指出的是,热插拔操作涉及环节众多,用户需要依照正确的流程进行操作才可以最大限度的避免各类风险,保障业务连续和数据完整性。下面就从热插拔的原理入手介绍这一技术以及相关的注意事项。

热插拔基本原理

从硬件层面讲,卡槽的 PCIe 引脚 PRSNT2#能够随着外接设备的接入和拔出得到不同的电平,从而触发热插拔事件, 如下图。PCIe3.0 协议规定了多个热插拔事件和热插拔支持功能,如 Attention Button,电源控制(Power Control) 等,各类服务器对热插拔的支持也不相同。最基础的,热插拔卡槽需要具备产生 Presence Status Change 事件的能力。

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2018年1月26日
下一篇 2018年1月26日

相关推荐