Вопрос или проблема
Я настроил Grafana для мониторинга S.M.A.R.T моих дисков в NAS с использованием prometheus. То, что привлекло мое внимание, это то, что некоторые диски показывают, что они считали более 5 ПБ (петабайта), что очень странно, потому что я купил их всего несколько месяцев назад, и нет никакой возможности, чтобы ZFS или я, используя их, мог нанести такой износ (для этого потребовалось бы 212 дней постоянной работы на скорости 220 МиБ/с, а я купил их 09.10.2024, они были во включенном состоянии 152 дня). Также я уверен, что они не использовались (знаменитая ситуация, когда жесткие диски Seagate показывают большое количество часов после первого включения).
Если я проверю данные S.M.A.R.T одного из них (ZRS19F7G
), данные сходятся, моя панель управления работает правильно:
root@nas:~# smartctl -v 1,hex48 -v 7,hex48 -A /dev/disk/by-id/ata-ST16000NM000J-2TW103_ZRS19F7G
smartctl 7.4 2023-08-01 r5530 [x86_64-linux-6.8.0-55-generic] (local build)
Copyright (C) 2002-23, Bruce Allen, Christian Franke, www.smartmontools.org
=== START OF READ SMART DATA SECTION ===
SMART Attributes Data Structure revision number: 10
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE
1 Raw_Read_Error_Rate 0x000f 100 064 044 Pre-fail Always - 0x0000000fc1e8
3 Spin_Up_Time 0x0003 093 093 000 Pre-fail Always - 0
4 Start_Stop_Count 0x0032 100 100 020 Old_age Always - 7
5 Reallocated_Sector_Ct 0x0033 100 100 010 Pre-fail Always - 0
7 Seek_Error_Rate 0x000f 084 060 045 Pre-fail Always - 0x00000e0ea19b
9 Power_On_Hours 0x0032 096 096 000 Old_age Always - 3657
10 Spin_Retry_Count 0x0013 100 100 097 Pre-fail Always - 0
12 Power_Cycle_Count 0x0032 100 100 020 Old_age Always - 7
18 Unknown_Attribute 0x000b 100 100 050 Pre-fail Always - 0
187 Reported_Uncorrect 0x0032 100 100 000 Old_age Always - 0
188 Command_Timeout 0x0032 100 100 000 Old_age Always - 0
190 Airflow_Temperature_Cel 0x0022 065 056 000 Old_age Always - 35 (Min/Max 32/44)
192 Power-Off_Retract_Count 0x0032 100 100 000 Old_age Always - 3
193 Load_Cycle_Count 0x0032 100 100 000 Old_age Always - 158
194 Temperature_Celsius 0x0022 035 044 000 Old_age Always - 35 (0 18 0 0 0)
197 Current_Pending_Sector 0x0012 100 100 000 Old_age Always - 0
198 Offline_Uncorrectable 0x0010 100 100 000 Old_age Offline - 0
199 UDMA_CRC_Error_Count 0x003e 200 200 000 Old_age Always - 0
200 Multi_Zone_Error_Rate 0x0023 100 100 001 Pre-fail Always - 0
240 Head_Flying_Hours 0x0000 100 253 000 Old_age Offline - 3655 (137 193 0)
241 Total_LBAs_Written 0x0000 100 253 000 Old_age Offline - 86121834404
242 Total_LBAs_Read 0x0000 100 253 000 Old_age Offline - 10040078775927
Total_LBAs_Read -> 10040078775927 -> 10040078775927 * 512 = 4.565699226 ПиБ ~ 5.140520333 ПБ
Это один из дисков, сообщающих о высоком значении Total_LBAs_Read. Это ST16000NM000J-2TW103 Exos X18 16TB, DOM 22.01.2024, FW SN02
, произведен в Таиланде.
Другие диски, которые, как я думаю, у меня дольше в системе, например WR608KWG
, также являются ST16000NM000J-2TW103 Exos X18 16TB, DOM 26.10.2023, FM SCA4
, произведены в Китае.
root@nas:~# smartctl -v 1,hex48 -v 7,hex48 -A /dev/disk/by-id/ata-ST16000NM000J-2TW103_WR608KWG
smartctl 7.4 2023-08-01 r5530 [x86_64-linux-6.8.0-55-generic] (local build)
Copyright (C) 2002-23, Bruce Allen, Christian Franke, www.smartmontools.org
=== START OF READ SMART DATA SECTION ===
SMART Attributes Data Structure revision number: 10
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE
1 Raw_Read_Error_Rate 0x000f 078 064 044 Pre-fail Always - 0x00000397ffd0
3 Spin_Up_Time 0x0003 091 091 000 Pre-fail Always - 0
4 Start_Stop_Count 0x0032 100 100 020 Old_age Always - 11
5 Reallocated_Sector_Ct 0x0033 100 100 010 Pre-fail Always - 0
7 Seek_Error_Rate 0x000f 086 060 045 Pre-fail Always - 0x0000194c67be
9 Power_On_Hours 0x0032 092 092 000 Old_age Always - 7419
10 Spin_Retry_Count 0x0013 100 100 097 Pre-fail Always - 0
12 Power_Cycle_Count 0x0032 100 100 020 Old_age Always - 11
18 Unknown_Attribute 0x000b 100 100 050 Pre-fail Always - 0
187 Reported_Uncorrect 0x0032 100 100 000 Old_age Always - 0
188 Command_Timeout 0x0032 100 100 000 Old_age Always - 0
190 Airflow_Temperature_Cel 0x0022 061 045 000 Old_age Always - 39 (Min/Max 37/50)
192 Power-Off_Retract_Count 0x0032 100 100 000 Old_age Always - 3
193 Load_Cycle_Count 0x0032 100 100 000 Old_age Always - 317
194 Temperature_Celsius 0x0022 039 055 000 Old_age Always - 39 (0 23 0 0 0)
197 Current_Pending_Sector 0x0012 100 100 000 Old_age Always - 0
198 Offline_Uncorrectable 0x0010 100 100 000 Old_age Offline - 0
199 UDMA_CRC_Error_Count 0x003e 200 200 000 Old_age Always - 0
200 Multi_Zone_Error_Rate 0x0023 100 100 001 Pre-fail Always - 0
240 Head_Flying_Hours 0x0000 100 100 000 Old_age Offline - 7418 (149 193 0)
241 Total_LBAs_Written 0x0000 100 253 000 Old_age Offline - 140849575702
242 Total_LBAs_Read 0x0000 100 253 000 Old_age Offline - 414588088555
Total_LBAs_Read -> 414588088555 -> 414588088555 * 512 = 193.057623019 TiB ~ 212.26910134 ТБ
Похоже, что версии из Таиланда имеют другую прошивку, но что вызывает у них отчет о неправильном значении Total_LBAs_Read?
Кстати, все диски в порядке, я просто хочу, чтобы значения S.M.A.R.T были корректными, чего нет для выпущенных в Таиланде.
«Эта проблема впервые появилась в январе, когда появились сообщения о том, что использованные жесткие диски корпоративного уровня Seagate Exos продавались как новые. Расследования выявили, что мошенники стерли журналы использования, изменили серийные номера и отредактировали этикетки, чтобы диски выглядели как неиспользованные.»
.
Ответ или решение
Ваша проблема с чрезмерным значением атрибута Total_LBAs_Read для дисков Seagate Exos X18, вероятно, связана с проблемами и несовершенствами прошивки. Давайте подробно рассмотрим эту ситуацию, рассматривая проблему с точки зрения теории, после чего перейдём к примерам и практическому приложению.
Теория
В основе проблемы лежит концепция S.M.A.R.T (Self-Monitoring, Analysis and Reporting Technology) — системы, предназначенной для мониторинга и анализа состояния жёстких дисков и предупреждения о потенциальных сбоях. За каждым атрибутом S.M.A.R.T закреплено конкретное значение, позволяющее системным администраторам и программам мониторинга оценивать текущее состояние накопителя.
Атрибуты Total_LBAs_Read и Total_LBAs_Written играют важную роль в оценке износа устройства. Они показывают количество логических блоков, которые были прочитаны и записаны на диск соответственно. Один логический блок обычно равен 512 байтам данных. Следовательно, высокое значение атрибута Total_LBAs_Read может указывать на избыточное использование накопителя, что не соответствует нормальному сценарию использования новых устройств.
Пример
В вашем случае наблюдается разночтение в данных S.M.A.R.T, откуда исходит подозрение, что диски, произведённые в Таиланде с прошивкой FW SN02, сообщают ненормально высокие значения для Total_LBAs_Read. Например, один из дисков показывает значение 10040078775927, что при пересчёте в ПБ (петабайты) составляет около 5.14 ПБ за 152 дня эксплуатации. Это невероятное значение требует почти постоянного чтения с максимальной скоростью диска (около 220MiB/c) на протяжении всего времени работы. Ваш сценарий использования, по всей видимости, не предполагает такой интенсивной нагрузки.
Сравнительно, другой диск, произведённый в Китае с прошивкой FW SCA4, демонстрирует гораздо более умеренные значения. Этот диск показывает Total_LBAs_Read равное 414588088555, что соответствует 212.27 ТБ (терабайт). Это значение более соответствует ожидаемому уровню использования для нового жёсткого диска.
Приложение
Теперь, когда у нас есть теоретическое понимание и конкретные примеры, давайте перейдём к возможным действиям по разрешению ситуации.
-
Проверка прошивки: Проблема может заключаться в программном обеспечении, управляющем дисками. Мы знаем, что у дисков с аномальными показателями стоит прошивка SN02. Возможно, Seagate выпустила обновления или исправления, устраняющие несовершенства этой версии. Проверьте сайт Seagate на наличие обновлений прошивки и примените их.
-
Комплексная проверка на мошенничество: Как упомянуто в статье на сайте tomshardware, были случаи перепродажи старых дисков с поддельными показателями, что может включать изменение значений S.M.A.R.T. Проверьте ваши диски на возможность подделки, рассматривая предыдущие физические использования и отличия в серийных номерах.
-
Сравнительный анализ: Если у вас есть возможность, проведите анализ с использованием других программ для мониторинга S.M.A.R.T данных. Это поможет подтвердить, что проблема не в используемом вами программном обеспечении (Grafana и prometheus) для сбора данных.
-
Поддержка производителя: Обратитесь в службу поддержки Seagate. Сообщите их о проблеме, предоставьте данные S.M.A.R.T и спросите о возможных решениях. Производитель может предложить замену или техническую помощь.
-
Мониторинг производительности: Ведите регулярный контроль использования дисков, чтобы зафиксировать все аномалии. Это может помочь понять, в какой момент произошло увеличение Total_LBAs_Read и позволяет собрать более точные данные для обращения в поддержку.
Ваша задача заключается в том, чтобы подтвердить природу проблемы и выяснить, является ли она системной или связанной с конкретной партией оборудования. Размер проблемы подчеркивает важность регулярного мониторинга и анализа данных S.M.A.R.T для предотвращения нежелательных последствий, таких как потеря данных и ухудшение производительности системы.