SolidFire FC 集群的最佳实践是什么?
适用场景
- NetApp SolidFire 横向扩展存储系统
- NetApp Element软件
问题解答
以下是针对 SolidFire 光纤通道 (FC) 集群的主要建议列表:
启用 FC 按顺序传送 (IOD)
- 无序到达的帧会被“丢弃”,这会迫使启动器重新启动事务,从而消耗启动器、目标器以及可能的交换机资源(总的来说,这会增加网络结构延迟和 ESXi 路径故障发现 (PDL))。
- 最终,这会影响网络结构,启动器超时会过期,从而引发另一系列网络结构事件,即中止。
- 现有序列的中止会导致 NetApp SolidFire 目标器产生额外工作,从而消耗 FC 节点资源。这可能会导致额外的网络结构延迟和更多的中止序列。
有关 IOD 的更多信息,请参阅: 何时需要按顺序交付(IOD)以及如何设置?
禁用 ESXi smartd 轮询
- ESXi 主机会每隔一段时间向存储设备发送 0x85 SCSI 命令 (ATA PASS THROUGH(16)) 来查看模式页面 0x1c,从而向存储设备请求 SMART 数据。NetApp
- SolidFire 存储不支持此命令,并以 CHECK STATUS 和 Sense Key 5h(非法请求)作为响应。
- 在首次被拒绝后,ESXi 主机会继续发送该命令。处理此命令会中断数据传输流(读取和写入),并增加集群的“工作负载”(参见 IOD)。
- 此外,在某些情况下,ESXi 主机会认为设备处于永久设备丢失 (PDL) 状态。
请参阅VMware 文档以了解如何禁用 smartd。
区域推荐
- 对于 NetApp SolidFire 存储,区域应该包含两项:
- 一个发起方 WWPN
- 一个目标方 WWPN
- 上述建议将状态变更通知限制在区域内的发起方和目标方,它们无需处理结构的其他部分。状态变更通知被限制/最小化。
查看下面的“附加信息”部分以了解示例配置。
FC 节点不适合担任集群主节点
- FC 节点的主要任务是管理前端光纤通道接口和后端存储之间的数据传输。
- 当节点承担集群主节点活动时,会给节点带来额外的负载。在负载过重的系统中,这种争用可能会增加延迟。
- 短期内,为了恢复运营利润率,请与您的支持代表合作,将所有作为集群主节点的 FC 节点降级,或升级到 Element 软件 12.3 或更高版本。
如需更多建议,请联系NetApp 支持。
所有 Bond10G 接口均强制使用 LACP
- 如果在数据路径集群节点端口和相应的交换机端口上未配置 LACP,则可能没有足够的带宽来实现最佳集群运行。
- 在负载较重的系统中,此网络瓶颈可能会增加延迟。
- 所有 SolidFire FC 和存储节点的 Bond10G 接口(存储网络)和相应的交换机端口均需配置 LACP。
配置最大 I/O 大小
NetApp SolidFire FC 节点支持的最大 I/O 大小为 2MB;节点会在登录过程中将此要求通告给光纤通道启动器。在某些情况下,VMware 会忽略此限制,导致向 SolidFire 集群发送大于 2MB 的 I/O 请求的任务(例如备份作业)失败。有两种可能的解决方法:
- 根据 VMware 知识库文章 1003469 中的说明,将 VMware 高级设置 Disk.DiskMaxIOSize 设置为 2048。这会将 ESXi 主机上的所有工作负载限制为指定的 I/O 大小。
- 重新配置发出大 I/O 的应用程序,使其最大 I/O 大小为 2MB。
例如,要了解如何限制 Veeam 的最大 I/O 大小®备份和复制™软件关注:
如何限制 Veeam Backup Replication 软件的最大 IO 大小
追加信息
推荐区域配置示例:
四条存储路径 - 防止路径爆炸并保持较低的 IxL 数量
考虑具有双端口 HBA 和四节点 FC 集群的 ESXi 主机。
使用 ESXi 主机和 FC 节点 A HBA-1 端口 A 创建“区域 A”
使用 ESXi 主机和 FC 节点 B HBA-1 端口 A 创建“区域 B”
使用 ESXi 主机和 FC 节点 C HBA-1 端口 A 创建“区域 C”
使用 ESXi 主机和 FC 节点 D HBA-1 端口 A 创建“区域 D”
下一个主机与第一个主机类似 - 不是划分到 FC 节点 HBA-1 端口 A,而是划分到 HBA-2 端口 A(每个节点只需要两根光纤)
双节点 FC 集群的四条存储路径 - 防止路径爆炸并保持 IxL 数量较低。
考虑具有双端口 HBA 和双节点 FC 集群的 ESXi 主机。
使用 ESXi -1 主机和 FC 节点 A HBA-1 端口 A 创建“区域 A”
使用 ESXi -1 主机和 FC 节点 A HBA-2 端口 A 创建“区域 B”
使用 ESXi -1 主机和 FC 节点 B HBA-1 端口 A 创建“区域 C”
使用 ESXi -1 主机和 FC 节点 B HBA-2 端口 A 创建“区域 D”
对于下一台 ESXi 主机,使用 FC 节点 HBA 卡的 B 端口创建四个区域,以便分散负载。这样,我们就能有效地利用节点上的 FC 端口来平衡负载。
使用 ESXi-2 主机和 FC 节点 A HBA-1 端口 B 创建“区域 A”
使用 ESXi-2 主机和 FC 节点 A HBA-2 端口 B 创建“区域 B”
使用 ESXi-2 主机和 FC 节点 B HBA-1 端口 B 创建“区域 C”
使用 ESXi-2 主机和 FC 节点 B HBA-2 端口 B 创建“区域 D”
有关 iXL 数量和其他 FC 节点限制的更多信息,请参阅SolidFire FC 集群限制是什么?