StorageGRID 报告 ILM 放置无法实现的警报

仅在指定的内容块内添加文本。单击此处 查看有关创建解决循环内容的更多信息。
适用于
NetApp StorageGRID
问题
StorageGRID 报告警报:
ILM placement unachievable
A placement instruction in an ILM rule cannot be achieved for certain objects.
原因
当可用节点不足/响应以满足 ILM 放置要求时,可触发此警报。并且可能是暂时的状况。
如果警报自行清除,则后续的 ILM 扫描(连续在后台运行)能够应用 ILM 放置要求。
可以触发此警报的原因有以下几种:
- 网络相关问题
- 一个或多个存储节点存在 LDR 服务或存储卷问题
- 升级后
- 电源维护
- 间歇性警报
- 仅有足够的节点用于 EC 架构或复制规则
基于 storagegrid_ilm_total_unachievable_placements 值递增的警报。
- 该值必须在 24 小时内为 0,警报的基本配置才能清除警报。
- 在瞬时事件期间,一旦有足够的节点可用于满足 ILM,ILM 队列将在几分钟内清除,这可能是由于工作负载活动的突发。
- 在这些事件期间,队列可以快速自动清除。 如果客户需要,可以更改这些值,以便在警报未增加的情况下提前 24 小时清除警报。
- 示例:如果需要,从 24 小时到 1 小时。
解决方案
| 主题 | 解决方案 |
| 如果进行了任何电源维护 | StorageGRID 报告在电源维护后无法实现 ILM 放置 |
| 如果执行了 StorageGRID 软件升级 | StorageGRID 报告升级后无法实现 ILM 放置 |
| 确认没有与网络相关的问题 | 由于网络问题,StorageGRID 报告无法实现 ILM 放置 |
| 确认没有对象存储 (rangedb's) 处于错误状态 | 由于对象存储卷处于错误状态,StorageGRID 报告无法实现 ILM 放置 |
| 如果使用扩展架扩展了 StorageGRID,但仍报告错误 | StorageGRID 报告即使在添加扩展架后也无法实现 ILM 放置 |
| 如果 StorageGRID 几乎填满了其可用对象数据空间 | StorageGRID 报告在没有可用空间时无法实现 ILM 放置 |
| 如果最近完成了 ILM 策略更改 | StorageGRID 报告在 ILM 策略更改后无法实现 ILM 放置 |
| 如果出现资源问题 | StorageGRID 报告由于资源问题无法实现 ILM 放置 |
| 如果 Cloud Storage Pools 存在连接问题 | StorageGRID 报告无法实现云存储池的 ILM 放置 |
| 如果我们使用 EC 架构、Erasure Coding 架构或复制规则的最少数量的节点 | StorageGRID 报告由于 ILM 的最少节点数量导致 ILM 放置无法实现 |
|
如果间歇性地报告警报 (请在处理这些 KB 之前验证上述内容) |
|
|
验证 NTP 服务器是否按照 NetApp 最佳实践进行配置 |
追加信息
- 11.5及更高版本
内部参考
具有 EC ILM 规则和平衡摄取功能的 StorageGRID 默认行为解释了在一个节点重新启动时触发警报的原因:
- 原则上,任何节点都可以在不同的站点上获取对数据的请求,因此它只会去那里查找或放置它
- 对于平衡摄取,如果无法实现放置(节点重新启动),则摄取的数据将回退到双重提交并由任何其他节点摄取
- 正在摄取数据的节点正在发送警报
ILM placement unachievable
如果任何存储节点的 LDR 服务处于错误或非联机状态,请进一步调查。 如果 LDR
- 对于任何 rangedb
- 停止服务:
service servermanager stop - 重新启动:
shutdown -r now
Health 报告错误,SSH 到节点并 cd 到 rangedb 目录并尝试 ls -l- 如果导致输入/输出错误,则可能无法正确挂载,并通过执行节点的正常重新启动来解决
- 这可以在网格 UI 或 SSH 中通过停止服务并执行节点重新启动来完成:
请务必检查 ASUP 和已清除的警报,以了解是否提及 Node Down 或 Storage Node not in desired state。
我们可以搜索报告 ILM 放置无法实现的每个节点的 bycast.log 文件,以确定无响应的节点。
- 示例:
NODE_NAME/2024-07-30_1403-1618/grid/bycast.log:Jul 30 14:40:12 NODE_NAME ADE: | NODE_ID_OF_ALERTING_NODE 1234567890 ECPU SQRT 2024-07-30T14:40:12.717803| NOTICE 0011 11a1111a1a11ada8 ECPU: NODE_ID_OF_UNREACHABLE_NODE unreachable, cannot delete 4 chunks for 1234567F-123E-12AB-1234-F1FF12345678.1722315650649309 in VCS 11A11A11-A1A1-1111-AA11-1AA111123456
- 您可以使用节点 ID 检查 Support -> Other -> NMS entities -> Show All Records -> 搜索该 ID 并查找该 ID 上方的节点名称。
- 或者,在 StorageGRID 11.7 及以上版本,您可以在主管理节点上针对该节点 ID 运行 nodeinfo 命令。 EXAMPLE:
root@PRIMARY-ADMIN-NODE-NAME: nodeinfo -s NODE_ID_OF_UNREACHABLE_NODENODE-NAME-OF-THE-ID
我们可以搜索无法完成 ILM 时的消息。
- 示例:
bycast.log:Jul 30 14:40:12 NODE_NAME ADE: |12345678 1234567890 ILMX CBPD 2024-07-30T14:40:12.870162| NOTICE 0379 ILMX: notified that '12345678-1234-1234-1234-AD1F123F9DEF/1234567890ABCDEF' cannot fulfill ILM replication -> skipping
我们可以查看 Prometheus 日志中与节点无响应时重合的以下值。
CPU usagestoragegrid_storage_state_currentstoragegrid_ilm_total_unachievable_placementscassandra_messagingservice_droppedmessagesstoragegrid_storage_state_current
该节点可能已从区块服务中被暂时标记为逻辑脱机。
- 如果节点当前在逻辑上被标记为离线 则区块服务每 30 分钟进行一次重新检查,如果通过,则节点再次可用于 ILM。
- 我们正在考虑对 StorageGRID 进行更改,以不像目前这样快速地将节点标记为离线。请参阅 PI49889 示例:
bycast.log Jul 30 14:40:12 NODE_NAME ADE: |12941126 0682479493 CHUN ^RDY 2025-02-25T10:40:42.927805| WARNING 1639 CSMM: Received unexpected response code from external chunk service: 0bycast.log Jul 30 14:40:12 NODE_NAME ADE: |12941126 0682479493 CHUN ^RDY 2025-02-25T10:40:42.948112| NOTICE 0488 CSMM: Changing external storage service state to 'OFLN'bycast.log Jul 30 14:40:12 NODE_NAME ADE: |12941126 0682490076 CHUN ^RDY 2025-02-25T10:41:12.949366| NOTICE 0488 CSMM: Changing external storage service state to 'ONLN'- 这些可以在对环境影响最小的情况下提高。但仅在 EE 批准的情况下。请先解决上述问题。
- ILMX 调试级别:I(这是字母 I 而不是数字 1)
- ECGQ 调试级别:3
- StorageGRID 如何启用或禁用调试级别日志记录