Ssd wear indicator что это
Наверное самый популярный вопрос в нашей техподдержке - “почему здоровье моего диска - 80%”? Или иначе говоря - как вы считаете здоровье диска?
И второй по популярности - откуда берется дата срока службы диска? “Почему у меня пишет что она “еще не определена”? Здесь вы найдете ответы на все эти вопросы.
Итого
- Количество записи на диск, которую создает Redis+RDB зависит не от количества модификаций в базе, а от размера базы + интервала дампов (и вообще, это наибольший уровень write amplification в известных мне хранилищах данных)
- Активно используемый swap на ssd — плохо, но если вам нужно внести jitter в износ ssd (для надежности raid-1), то может сойти за вариант:)
- Помимо WAL и datafiles базы данных могут ещё писать на диск всякие временные данные
Мы в okmeter.io считаем, что для того, чтобы докопаться до причины проблемы инженеру нужно много метрик про все слои инфраструктуры. Мы изо всех сил в этом помогаем:)
В прошлых частях цикла мы рассказывали про историю накопителей, о применяемых интерфейсах и форм-факторах, а также про организацию на физическом уровне. Пятая же часть посвящена «мозгу» современного твердотельного накопителя.
Контроллер современного накопителя — маленький компьютер, который принимает стандартизированные команды и выполняет соответствующие действия с подконтрольным ему хранилищем. При этом внутреннее устройство контроллера может быть любым.
У Intel есть накопитель P4618 6.4 TB, который представляется системе как два накопителя по 3.2 TB. Аналогичное встречается и среди жестких дисков. Накопители Seagate с технологией MACH.2 — это два диска, «заключенные» в одном корпусе и объединенные единым контроллером.
Контроллер — достаточно сложное устройство, которое в зависимости от предназначения диска выполняет различные задачи по управлению данными. Например, базы данных часто требуют от накопителя запись непосредственно в энергонезависимую память, минуя кэш, и в этом случае серверный SATA SSD будет быстрее, чем пользовательский NVMe. Из-за большой вариативности контроллеров не будем вдаваться в детали конкретных устройств, а поговорим об общих принципах работы современного твердотельного накопителя.
Почему дата резко меняется?
В некоторых случаях срок службы может резко изменяться - происходит это в случае если был резко увеличен объём записи на диск. Например, вы установили какую-нибудь большую игрушку. Но волноваться не стоит - буквально через несколько дней SSD Life поймёт, что это был временный всплеск, диск вернулся к прежним обычным объемам записи, и скорректирует дату окончания срока службы.
SSD Wear Indicator — что это значит?
Вообще данная фраза переводится как индикатор износа SSD. По факту — указывается насколько изношен SSD, скажу сразу, что по статистике домашнего использования, износ часто небольшой. Да, это размытое понятие, потому что каждая прога показывает его значение по своему.
- Проверенную прогу — SSDLife. Это обычная маленькая утилита, которая всегда работает четко и стабильно. Показывает реальное состояние диска в процентах.
- Фирменную прогу, например Kingston SSD Manager, она также точно и корректно покажет. Просто эта прога создана спецом для устройств Kingston, поэтому в теории, возможно чуть лучше чем SSDLife.
Внешний вид SSDLife:
Как видим — зеленая полоска информативно обо всем говорит.
В фирменной проге Кингстон процент износа указан здесь (там где зеленые полоски):
Вторая стрелочка (голубая полоска) — температура, желательно чтобы она не была выше 45 градусов.
В фирменной проге мы видим два показателя:
- SSD Wear Indicator — собственно уровень износа.
- SSD Spare Blocks — сколько осталось запасных блоков.
Почему нельзя подсчитать дату сразу?
Это простая математическая причина - для того чтобы подсчитать сразу, нам надо знать хотя бы дату, когда произошла первая запись на диск - но, к сожалению, он не предоставляет такой информации. Поэтому нам и необходимо после первого запуска SSDLife какое-то время мониторить интенсивность использования SSD диска, чтобы определить его среднюю загрузку. Разумеется, в зависимости от изменения активности использования диска будет и меняться эта дата.
Купить
Купить за 450 руб.!
(цена указана без НДС)
Приветствую друзья! Каждое устройство имеет свой срок службы. Иногда это зависит от температуры и условий эксплуатации. Но иногда — от того, сколько уже проработало устройство.
Износ SSD и PostgreSQL
На самом деле я хотел посмотреть скорость износа ssd при различных нагрузках на запись в Postgres, но как правило на нагруженных базах ssd используются очень аккуратно и массивная запись идет на HDD. Пока искал подходящий кейс, наткнулся на один очень интересный сервер:
Износ двух ssd в raid-1 за 3 месяца составил 4%, но судя по скорости записи WAL данный постгрес пишет меньше 100 Kb/s:
Оказалось, что постгрес активно использует временные файлы, работа с которыми и создает постоянный поток записи на диск:
Так как в postgresql с диагностикой достаточно неплохо, мы можем с точностью до запроса узнать, что именно нам нужно чинить:
Как вы видите тут, это какой-то конкретный SELECT порождает кучу временных файлов. А вообще в постгресе SELECT'ы иногда порождают запись и без всяких временных файлов — вот тут мы уже про это рассказывали.
Заключение
- SSD Wear Indicator — показывает процент износа в фирменной проге для дисков Кингстон.
- Для оценки здоровья SSD лучше использовать фирменную прогу либо SSDLife.
На заметку: современные SSD диски работают стабильно, а их ресурс работы на самом деле велик. Нет смысла отключать некоторые функции в виндовсе, использовать твикеры, переносить файл подкачки, профили браузеров на другой диск и прочее.. это все не стоит того, поверьте.
Год назад мы добавили в наш агент сбор метрик из S.M.A.R.T. атрибутов дисков на серверах клиентов. В тот момент мы не стали добавлять их в интерфейс и показывать клиентам. Дело в том, что метрики мы снимаем не через через smartctl, а дергаем ioctl прямо из кода, чтобы этот функционал работал без установки smartmontools на серверы клиентов.
Агент снимает не все доступные атрибуты, а только самые значимые на наш взгляд и наименее вендор-специфичные (иначе пришлось бы поддерживать базу дисков, аналогичную smartmontools).
Сейчас наконец дошли руки до того, чтобы проверить, что мы там наснимали. А начать было решено с атрибута "media wearout indicator", который показывает в процентах оставшийся ресурс записи SSD. Под катом несколько историй в картинках о том, как расходуется этот ресурс в реальной жизни на серверах.
Как быстро убиваются SSD?
Так как сбор метрик мы начали год назад, а метрики мы не удаляем, есть возможность посмотреть на эту метрику во времени. К сожалению сервер с наибольшей скоростью расхода подключен к okmeter только 2 месяца назад.
На этом графике мы видим, как за 2 месяца сожгли 8% ресурса записи. То есть при таком же профиле записи, этих ssd хватит на 100/(8/2) = 25 месяцев. Много это или мало не знаю, но давайте посмотрим, что за нагрузка там такая?
Видим, что с диском работает только ceph, но мы же понимаем, что ceph это только прослойка. В данном случае у клиента ceph на нескольких нодах выступает хранилищем для кластера kubernetes, посмотрим, что внутри k8s генерирует больше всего записи на диск:
Абсолютные значения не совпадают скорее всего из-за того, что ceph работает в кластере и запись от redis приумножается из-за репликации данных. Но профиль нагрузки позволяет уверенно говорить, что запись иницирует именно redis. Давайте смотреть, что там в редисе происходит:
тут видно, что в среднем выполняется меньше 100 запросов в секунду, которые могут изменять данные. Вспоминаем, что у redis есть 2 способа записывать данные на диск:
- RDB — периодические снэпшоты всей баз на диск, при старте redis читаем последний дамп в память, а данные между дампами мы теряем
- AOF — пишем лог всех изменений, при старте redis проигрывает этот лог и в памяти оказываются все данные, теряем только данные между fsync этого лога
Существуют ли убитые SSD?
Бытует мнение, что новые более производительные ssd выходят чаще, чем старые успевают убиться. Поэтому первым делом было интересно посмотреть на самый убитый с точки зрения ресурса записи диск. Минимальное значение по всем ssd всех клиентов — 1%.
Мы сразу же написали клиенту об этом, это оказался дедик в hetzner. Поддержка хостера сразу же заменила ssd:
Очень интересно было бы посмотреть, как выглядит с точки зрения операционной системы ситуация, когда ssd перестает обслуживать запись (мы сейчас ищем возможность провести умышленное издевательство над ssd, чтобы посмотреть на метрики этого сценария:)
Подробнее о SSD Spare Blocks
Запасные блоки памяти хранятся обычно в резервном пространстве, которое именуется Over-Provisioned (OP), эта область считается служебной и для пользователя недоступна.
Зачем нужны запасные блоки? Когда в блоке памяти будет слишком много ошибок — он будет заменен на новый из резервной области. Блок с ошибками будет помечен как Bad Block и будет аннулирован. Итог — ССД работает хорошо, блок заменен, данные не пострадали за счет ECC (Error-Correcting Code — как бы корректировка ошибок данных). Резервная область очень важна и присутствует в каждом диске SSD, просто где-то ее больше, где-то меньше.
По поводу коррекции ошибок и резервных блоков рекомендую посетить офф сайт Кингстон.
Заключение
Контроллеры накопителей — сложные устройства, которые управляют не менее сложными процессами, которые проходят внутри твердотельных накопителей. Мы рассмотрели только самые интересные процессы в общих чертах.
Если вам хочется больше погрузиться в особенности работы с NVMe, рекомендуем статью про пространства имен NVMe.
Всем привет, дорогие друзья! В данной статье, хотелось бы с вами поделиться одним годом эксплуатации бюджетного SSD Kingston A400 на 120 ГБ. Почему 120 ГБ, а не 240 ГБ либо 480 ГБ? Была поставлена задача: потратив минимум финансовых средств, приобрести дешевый, но желательно надежный SSD известной фирмы. Компьютер, на котором был установлен данный твердотельный накопитель, был предназначен для серфинга в интернете, просмотра фильмов и работы с текстовым редактором Microsoft Office Word. Поэтому, объема памяти в 120 ГБ было вполне достаточно.
Покупался данный SSD на Aliexpress, по ссылке ниже.
Технические характеристики Kingston A400
120 ГБ – до 500 МБ/с для чтения и 320 МБ/с для записи
240 ГБ – до 500 МБ/с для чтения и 350 МБ/с для записи
480 ГБ – до 500 МБ/с для чтения и 450 МБ/с для записи
960 ГБ – до 500 МБ/с для чтения и 450 МБ/с для записи
Упаковка
Kingston A400 поставляется в простой блистерной упаковке. Сверху на картоне написаны название бренда и наименование модели. Отдельно в ярко-красных блоках выделены объем накопителя и надпись “10xFASTER”, что подразумевает более высокую скорость последовательной записи и чтения (в десять раз), по сравнению с обычным HDD на 7200 об/мин.
Внешний вид SSD
Корпус накопителя выполнен из металла и окрашен в темно-серый цвет. На лицевой поверхности корпуса имеется логотип и название производителя Kingston, а также четыре крепежных винта. На одном из крепежных винтов наклеена защитная пломба. При нарушении целостности пломбы покупатель лишается официальной гарантии от Kingston.
На задней панели имеется наклейка с различной информацией, такой как: место производства, объем накопителя, QR-код, серийный номер и другие данные.
Данный SSD подключается к материнской плате компьютера через стандартный разъем SATA. Для максимальной продуктивности накопителя необходима поддержка SATA III (6Гбит/с). Поддерживается и обратная совместимость с SATA II, естественно с пониженными значениями скорости записи и чтения на диск.
К сожалению, в наличии не было специализированной отвертки для откручивания шестигранных сервисных винтов. Поэтому фотографий “внутренностей” диска сделать не смог.
В корпусе компьютера не было специального отсека для установки SSD, поэтому был куплен фрейм-переходник для 2.5" HDD/SSD в 3.5" отсек.
Далее был произведен монтаж накопителя на переходник, и после, вся конструкция была установлена в компьютер.
Сведения о накопителе в операционной системе
Перед началом тестирования запускаю фирменную утилиту от Kingston, это Kingston SSD Manager. Здесь нас интересуют два важных значения: SSD Wear Indicator и Power On Hours. SSD Wear Indicator (показатель износа носителя) показывает нам, что за один год работы износ составил 6%, при Power On Hours (количество часов, в течение которых SSD был включён) равным 2726 часов.
Из этого можно сделать вывод, что за 2726 часов ресурс накопителя сократился на 6%.
В процессе работы, средняя температура нагрева SSD держалась в пределах 31-35 0 C, в пиковые нагрузки температура нагрева поднималась до 42 0 C. Следует отметить, что на передней панели корпуса ПК для охлаждения данного SSD и HDD был установлен 120-мм вентилятор.
Краткие сведения о Kingston A400 в программе AIDA64:
Исходя из данных предоставленных программой AIDA64, мы можем узнать, что в накопителе установлены чипы памяти TLC NAND произведенные по 15-нм техпроцессу. В Kingston A400 используется микропроцессор Phison PS3111-S11, обладающий одним ARM-ядром, который способен работать максимум в двухканальном режиме, а также имеет интегрированной 32 Мб буферной памяти (DRAM).
Краткие сведения о Kingston A400 в программе CrystalDiskInfo 8.7.0:
Исходя из данных в программе CrystalDiskInfo, данный накопитель поддерживает:
- технологию S.M.A.R.T, оценку состояния диска встроенной аппаратурой самодиагностики;
- технологию NCQ, аппаратную установку очередности команд;
- команду Trim, позволяющая операционной системе уведомить твердотельный накопитель о том, какие блоки данных не несут полезной нагрузки и их можно не хранить физически, т.е собирая не нужный “файловый мусор”, продлевая время работы SSD.
В процессе работы было израсходовано чуть больше 3 Тб ресурса накопителя. При этом суммарный гарантированный объем информации, который можно записать на диск, равен 40 ТБ (TBW).
Тестирование SSD
После покупки, пустой SSD был протестирован в программе CrystalDiskMark 5.2.2, с объемом тестового файла 1ГБ и 8ГБ (скриншоты делал сразу после покупки). В тот момент в других программах не тестировал, так как не было надобности глубже изучать данный вопрос.
Как видно из синтетического теста CrystalDiskMark 5.2.2, Kingston A400 полностью соответствует заявленным характеристикам чтения/записи. Отдельно отмечу скорость последовательной записи 470 МБ/с, которая превышает указанную производителем значение в 320 МБ/с.
Теперь перейдем к тестам спустя 1 год эксплуатации накопителя и сможем наглядно посмотреть, изменилась ли скорость работы устройства.
Первый тест скорости проведем на пустом накопителе в программе CrystalDiskMark 7.0.0, тестовыми файлами по 1ГБ и 8ГБ.
Как видно из тестов, показатели скорости чтения/записи SSD практически не изменились.
Следующий тест проведем в программе AS SSD Benchmark 2.0.7316 с объемом тестового файла 1ГБ.
Результаты тестов программы AS SSD Benchmark и CrystalDiskMark немного отличаются, имея небольшие различия.
Аналогичную ситуацию видим в ATTO Disk Benchmark 4.01.
В программе AIDA64 Disk Benchmark видим стабильную работу накопителя в режиме чтения в пределах 525 МБ/с, с небольшими падениями скорости чтения вначале тестирования до 375-480 МБ/с.
Далее проведем тесты с заполненным накопителем.
На тестах видим не значительное падения скорости чтения/записи. Даже при заполненном накопителе, Kingston A400 в синтетических тестах показывает результаты скорости, заявленные производителем.
При тестировании программой AIDA64 Disk Benchmark в режиме линейной записи, полученные данные показывают нам фактические возможности флеш-памяти с архитектурой TLC, используемой в Kingston A400. В процессе непродолжительной записи тестовых файлов на скорости 460 МБ/с, скорость постепенно снижается до 70-80 МБ/с. Связано такое падение записи с SLC-кешем маленького размера, не превышающего 4ГБ. Пропускная способность памяти TLC начинает активно уменьшаться при заполнении кеша.
Копирование файла объемом 6 ГБ:
Выводы
Как я уже указывал ранее, данный SSD покупался для базовых задач обычного пользователя ПК. В процессе работы не было никаких проблем с данным носителем. Спустя один год работы, он всё так же демонстрирует хорошие показатели в своем ценовом сегменте. За год эксплуатации ресурс накопителя сократился на 3 Тб, в процентном соотношении на 6%, что я считаю весьма неплохим показателем. Безусловно, стоит учитывать тот факт, что рассуждать о надежности SSD, исходя из данных полученных в приложении, не совсем корректно. Однако, на данный момент проблем не возникало и данный SSD вполне справляется со своими задачами.
Если говорить о его технических характеристиках, то безусловно данный SSD — накопитель начального уровня для нетребовательных пользователей. В нынешних реалиях, когда твердотельные накопители уже не стоят больших денег и появились более новые высокоскоростные SSD M.2 NVMe, объем памяти в 120 ГБ откровенно маловат. Более правильным решением будет покупка SSD объемом 240 ГБ, 480 ГБ. К плюсам данного SSD могу отнести относительно невысокую стоимость, небольшое энергопотребление (0,279 Вт в среднем), стабильную скорость чтения, которая даже превышает заявленные производителем нормы. К минусам можно отнести безусловно низкую скорость линейной записи в пределах 70-80 МБ/с.
Обобщая всё вышесказанное, Kingston A400 – хороший вариант для апгрейда вашего ПК, если вы хотите оценить преимущества SSD над HDD, но не хотите тратить на это много денег.
Перепрошивка
О прошивке твердотельных накопителей задумываются нечасто. В лучшем случае после покупки «накатывают» свежую версию и забывают до конца жизни накопителя.
Как бы то ни было, обновления прошивки редко приносят какие-то значительные и заметные для пользователя нововведения. Прошивка, как и любое другое программное обеспечение, может содержать ошибки, в том числе критические. К счастью, это происходит редко, а потому нет надобности постоянно поддерживать актуальность прошивок на всех используемых накопителях.
Хотя NVMe можно перепрошить через команды fw-download и fw-commit, чаще всего обновление прошивки производится через утилиты, предоставляемые производителем накопителя. Во избежание потенциально деструктивных действий мы не будем публиковать точные команды, а порекомендуем обратиться к официальной инструкции от производителя.
Особенности записи
Блоки и страницы в NAND-памяти. Источник
Хранилище твердотельного накопителя состоит из множества полевых транзисторов, соединенных друг с другом. При таком подходе чтение и запись выполняются страницами данных, размер которых обычно 4 КиБ. Таким образом, изменение одного бита на диске приводит к необходимости перезаписать всю страницу данных. Эта проблема называется усилением записи (Write Amplification).
Кроме того, твердотельные накопители не могут обновить данные в странице. Обновление страницы производится в четыре шага:
- Чтение данных из страницы в буфер.
- Изменение данных в странице.
- Очистка страницы данных.
- Запись обновленных данных из буфера.
Износостойкость
Выравнивание износа. Источник
Современные накопители построены на базе ячеек TLC, ресурс которых в разы меньше, чем у накопителей с ячейками SLC и MLC. Если какая-то программа в ОС будет постоянно перезаписывать маленький файл, а контроллер будет «наивно» обновлять одну страницу данных, то вскоре блок с этой страницей исчерпает ресурс. Исчерпание ресурса будет отображено в показателях накопителя, что неизбежно приведет к беспокойству системного администратора.
Во избежание сильного износа единичных блоков накопителя применяются технологии выравнивания износа (Wear Leveling). При этом обновление данных выполняется без очистки страницы накопителя и выглядит так:
- Чтение данных из страницы в буфер.
- Изменение данных в странице.
- Запись обновленных данных из буфера в «чистую» страницу.
- Старая страница помечается как «грязная».
Показатели
Вне зависимости от интерфейса накопителя SSD имеют набор показателей состояния, которые могут быть считаны системным администратором. Для SATA-накопителей используются показатели S.M.A.R.T., которые не стандартизированы. Отсутствие стандарта приводит к появлению различных трактовок одного показателя.
Рассмотрим вывод утилиты smartctl на примере Intel S4510.
Для нашего диска интересны следующие параметры:
С точки зрения износа исправного диска интересен показатель 233 Media_Wearout_Indicator, так как при достижении числа 1023 накопитель программно заблокируется и будет доступен в режиме только для чтения.
Показатели S.M.A.R.T — это особенность протокола SATA. Для NVMe-накопителей есть NVMe log, который также считывается программой smartctl. Аналогичный вывод можно получить с помощью команды nvme smart-log.
В выводе NVMe накопителя меньше непонятных показателей, но все равно есть место разночтениям. Легко предположить, что параметр percentage_used отвечает за объем занятого пользователем пространства на диске, но это не так. Этот параметр эквивалентен Media_Wearout_Indicator и обозначает износ накопителя.
Не стоит забывать, что предоставляемые показатели и поведение контроллера реализуется прошивкой, которая может быть обновлена.
Кратко и просто.
1. Мы не считаем процент здоровья диска. Его считает и сообщает сам SSD диск. Или иначе говоря - это данные производителя диска.
2. Предполагаемый срок службы считается в зависимости от динамики изменения здоровья диска, которое в свою очередь косвенно зависит от активности записи на диск. Если у вас он еще не определен - значит данных пишется немного, просто подождите - обычно максимум в течении недели после первого запуска. (почему косвенно - более подробно читайте тут)
Балансировка износа
В каком-то смысле производитель накопителей обманывает нас дважды. Первый раз использует десятичные приставки вместо двоичных: 480 ГБ — это 447 ГиБ. А второй раз, когда фактический объем накопителя больше, чем доступно пользователю. Часть объема зарезервирована производителем для внутренних нужд контроллера. Такой резерв называется запасной областью (spare).
Таким образом, у контроллера всегда есть немного свободного пространства, которое может быть использовано для внутренних процессов. Хотя точных данных нет, в различных источниках утверждается, что для контроллера резервируется от 7 до 28 % объема накопителя.
Увеличение объема зарезервированной области уменьшает доступный объем, но чаще всего повышает производительность диска. Для увеличения spare-области достаточно оставить часть накопителя неразмеченным. Однако если хочется экстрима и сделать все «по уму», то можно уменьшить объем видимого пользователю пространства через ключ -N утилиты hdparm.
Как бы то ни было, вернуть зарезервированную производителем область в собственное пользование не получится.
Процесс «сбора мусора». Источник
Помимо балансирования износа, в контроллерах в фоновом режиме часто проходит процесс «сбора мусора» (garbage collection). В ходе него с нескольких блоков собираются актуальные страницы и помещаются в один блок. Затем исходные блоки очищаются, так как в них не осталось страниц с данным.
Важно отметить, что сборщик мусора занимается перекладыванием данных в хранилище, чтобы было как можно больше чистых блоков. При этом он не может понять, что на файловой системе какой-то файл отмечен удаленным, так как контроллер накопителя не умеет работать в терминах файловых систем.
Для решения этой проблемы в каждом из протоколов есть команда, позволяющая уведомить контроллер об удалении файла. Для NVMe — это deallocate, для SATA — TRIM, а для SCSI — unmap. Суть каждой их этих команд одинакова: пометить страницы с удаленным файлом как «грязные».
Контроллеру приходится постоянно беспокоиться о состоянии страниц хранилища. При этом напрашивается очевидная оптимизация: если операционная система пытается считать данные со страниц, на которых нет данных, то вместо операции чтения можно просто генерировать необходимое количество нулей.
Это легко подтверждается с помощью эксперимента. Проводим Secure Erase для накопителя и запускаем тесты на случайное чтение с глубиной очереди 64. Затем «забиваем» накопитель с помощью последовательной записи, желательно дважды. И повторяем тесты.
Размер блока | Чистый | Забитый |
---|---|---|
4M | 3400 MiB/s | 3376 MiB/s |
8M | 3399 MiB/s | 3336 MiB/s |
В наших тестах использовался SSD-накопитель Micron 7300 1.92 TB, подключенный по PCIe 3.0 x4. Третья версия PCI Express по четырем линиям способна пропускать 3940 МБ/с или 3757 МиБ/с. Мы, конечно, не достигли предела, но надо полагать, это из-за накладных расходов на протокол NVMe. Тем не менее, видно, что чтение с диска без данных «упирается» в предел 3400 МиБ/с. После заполнения диска на 15% результаты тестов стали хуже.
Несмотря на то, что контроллер накопителя всегда пытается сделать как лучше, иногда системному администратору стоит взглянуть на показатели диска своими глазами.
Подробнее - для желающих разобраться или технических специалистов.
Еще со времен жестких дисков (HDD) известна система самодиагностики S.M.A.R.T. (SMART) встроенная во все современные жесткие диски. Она постоянно контролирует разнообразные параметры технического состояния диска и сообщает их в относительных величинах. Как только значения параметров станут ниже критического уровня - считается что диск ненадежен и производитель рекомендует заменить его. Однако на практике бывает что диск продолжает нормально работать, да и сами производители говорят что SMART - это рекомендательный сервис, а не абсолютно точный прогнозист.
В отличе от жестких дисков, в мире SSD всё более определённо. Флеш-память, на основе которой построены SSD диски, имеет точно известный ресурс использования - 10000 перезаписей (упрощенно говоря, точное число зависит от используемого в SSD типа памяти). Все диски содержат в себе микропрограмму, которая следит за равномерным использованием всех ячеек памяти и отслеживает, сколько перезаписей был сделано, каков оставшийся ресурс SSD диска. В итоговом виде именно эти данные и сообщаются микропрограммой диска в одном из параметров S.M.A.R.T. с красноречивым названием SSD Life Left (Осталось жизни SSD) или Media wear out indicator (Показатель износа носителя) - и именно этот параметр в удобном и понятном для пользователя виде отображает программа SSDLife.
Разумеется, у пользователя в первую очередь возникнет вопрос - а что будет когда износ диска достигнет 100%? (здоровье станет равным 0%) Ответ на этот вопрос смотрите в конце этой страницы.
Итак, мы точно знаем технический ресурс SSD диска и можем отслеживать его изменения. Анализируя динамику уменьшения здоровья (увеличения износа) можно путем математических вычислений спрогнозировать дату, когда здоровье уменьшится до 0% (износ будет 100%). Именно это и делает SSD Life.
примечание: кстати, некоторые производители приводят общий объем записанного на диск как один из показателей срока службы диска. Например, Intel на диски X25-M дает гарантию на общий объем записи около 37Тбайт (20Гбайт в день в течении 5 лет - “The drive will have a minimum of 5 years of useful life under typical client workloads with up to 20GB host writes per day”). Однако, почему нельзя ориентироваться на эту информацию для анализа состояния диска - смотрите на этой странице.
SSD + RAID
По нашим наблюдениям существуют три основных конфигурации дисковой подсистемы серверов с присутствием SSD:
- в сервере 2 SSD собраные в raid-1 и там живет всё
- в сервере есть HDD + raid-10 из ssd, обычно используется для классических РСУБД (система, WAL и часть данных на HDD, а на SSD самые горячие с точки зрения чтения данные)
- в сервере есть отдельностоящие SSD (JBOD), обычно используется для nosql типа кассандры
В случае, если ssd собраны в raid-1, запись идет на оба диска, соответственно износ идет с одинаковой скоростью:
Но на глаза попался сервер, в котором картинка другая:
При этом cмонтированы только партиции mdraid (все массивы raid-1):
По метрикам записи тоже видно, что на /dev/sda долетает больше записи:
Оказалось, что одна из партиций на /dev/sda используется в качестве swap, а swap i/o на этом сервере достаточно заметно:
Читайте также: