Хостинг → Осторожно, Hetzner использует старые и поношенные диски


Про Hetzner на Хабре много упоминалось: здесь и там. Поначалу нашей команде, как и многим другим, очень нравилось.
Отношения с Hetzner у нас давние. Наш старый проект Name.ly (вместе с Brief.ly) крутится у немцев от своего зачатия. Как на «low-cost dedicated hosting» — не жаловались, арендовали сервера у Hetzner з 2008 года. Проблем больших не было. Поддержка — ок. Не самые быстрые ребята. Но за пол часа — час, иногда два — отвечали и помогали.
Но вот со средины 2011-го мнение изменилось. Может наш хард первоначально заказан в 2008-м и 2009-м постарел, или по других причинам.
Персональные блоги → Основные тезисы конференции HighLoad++ 2011
В октябре 2011 года в Москве проходила ежегодная конференция разработчиков высоконагруженных проектов HighLoad++. Решил поделиться с читателями основными тезисами с конференции. Поскольку вся информация открыта и доступна на странице конференции, решил что собрать все тезисы вместе будет не такой уж и плохой затеей. Сразу отмечу, что в отчёте не содержится детальной информации о каждом докладе — затронуты лишь ключевые моменты.
Итак, о чём говорилось на HighLoad++ 2011.
Системное администрирование → Загрузка Linux с корнем на RAID из песочницы
Для того, чтобы загрузить ядро linux с корневой файловой системой лежащей на RAID-массиве нужно передать ядру следующие параметры (рабочий пример для Grub). Значимыми для нас опциями являются первая и вторая строка параметров.
Значения параметров:
1. root=/dev/md0 задает имя файла устройства с корневой ФС.
2. md=0,/dev/sda1,/dev/sdc1
На этом параметре хотелось бы остановиться подробнее. Он имеет следующий формат:
Есть еще один важный момент.
title Gentoo Linux 3.0.8 Hardened
kernel (hd0,0)/linux-3.0.8-hardened/linux \
root=/dev/md0 \
md=0,/dev/sda1,/dev/sdc1 \
rootfstype=ext4 \
rootflags=nodelalloc,data=ordered,journal_checksum,barrier=1,acl,user_xattr \
panic=15 \
vga=792
Значения параметров:
1. root=/dev/md0 задает имя файла устройства с корневой ФС.
2. md=0,/dev/sda1,/dev/sdc1
На этом параметре хотелось бы остановиться подробнее. Он имеет следующий формат:
md=md_device_number,raid_level,chunk_size_factor,fault_level,dev0,dev1,...,devn
- md_device_number — номер md-устройства. Например, 0 означает /dev/md0, 1 это /dev/md1. Прошу обратить внимание — это именно НОМЕР устройства, а не количество дисков входящих в массив, как иногда встречается в описаниях в Сети.
- raid_level — уровень RAID. Является обязательным для линейного режима (значение -1) и RAID-0 (значение 0). Для остальных типов массивов информация берётся из суперблока и это значение должно быть опущено.
- chunk_size_factor — задает размер чанка. Минимальное значение 4кб (4k).
- fault_level — насколько я понял из документации, этот параметр игнорируется драйвером MD (нафига тогда предусматривали?)
- dev0,...,devn — список устройств, входящих в массив.
Есть еще один важный момент.
Блог компании DEPO Computers → Сравнительный анализ производительности накопителей PCI-E SSD, SSD и HDD
Повысить производительность дисковой подсистемы — наиболее актуальный вопрос на сегодняшний день. Это обусловлено тем, что HDD, ввиду низкой стоимости, пока занимают лидирующие позиции в массовом сегменте. Более чем в половине ресурсоёмких приложений «узким местом» становятся именно шпиндельные диски. В этом случае все упирается не в пропускную способность SATA интерфейса, а в физические возможности механических составляющих магнитного диска. Пропускная способность SATA-II и SATA-III интерфейсов составляет 300МБайт/с и 600МБайт/с соответственно. А максимальная производительность, которую может обеспечить обычный HDD, не превышает и 150Мбайт/с. Поэтому переход на SATA-III-интерфейс будет обоснован только для SSD, и то не для всех.
Для оценки эффективности дисковых подсистем разных типов, на тестирование были выбраны следующие решения:
Для оценки эффективности дисковых подсистем разных типов, на тестирование были выбраны следующие решения:
Блог компании 1С-Битрикс → Выбираем дисковую систему для базы MySQL
Для многих крупных высоконагруженных веб-проектов зачастую «узким» местом в производительности становится скорость работы базы данных. Можно добавлять память, тюнить те или иные параметры… Но в итоге чаще всего всё упирается в диск.

Мы и сами на собственных проектах сталкивались с подобными «бутылочными горлышками» (bottleneck), периодически наблюдая близкую к 100% утилизацию диска в iostat.
О нашем опыте решения этого вопроса и хотим рассказать вам в этом посте…

Мы и сами на собственных проектах сталкивались с подобными «бутылочными горлышками» (bottleneck), периодически наблюдая близкую к 100% утилизацию диска в iostat.
О нашем опыте решения этого вопроса и хотим рассказать вам в этом посте…
*nix → Программный RAID-массив из Dropbox из песочницы
Внезапно вашей разносторонней деятельности не хватило место на бесплатном аккаунте Dropbox`а? Сегодня попробуем создать программный RAID-массив 5 уровня на основе mdadm, который будет синхронизироваться через Dropbox.
Системное администрирование → Программный RAID-6 под Linux: опыт восстановления массива 16Тб
Несколько дней назад вышел из строя один из жестких дисков на бюджетном массиве из 16х1ТБ дисков. Уровень массива: RAID 6. Ситуация осложнилась тем, что (как оказалось) ранее также встал кулер на видеокарте этого же сервера, что не было заранее подмечено, и после замены HDD, в результате изменения режима охлаждения корпуса — это стало проявляться в виде зависаний во время синхронизации, что само по себе очень неприятно. Вылилось это в то, что массив перестал автособираться, и были помечены как сбойные еще несколько дисков, и пришлось уже разбираться с ним по-серьёзному, курить вики, мануалы и форумы (форумы — самое полезное, поскольку описывают опыт конкретных людей в конкретных ситуациях).
Железо → SCT Error Recovery Control
… или что такое на самом деле 'raid edition' для жёстких дисков

Немного теории
Существуют две стратегии поведения НЖМД при обнаружении ошибки:
- standalone/desktop — пытаться прочитать до последнего. Это ощущается как «тормозящий винт», который всё-таки работает, если это единичный сбой, то «затупило, но прошло», плюс характерный перестук перекалибрующихся головок.
- raid — отваливаться тут же. Это ощущается как «внезапно была ошибка диска но потом mhdd и т.д. НИЧЕГО НЕ НАШЁЛ ЧТО МНЕ ДЕЛАТЬ».
Управление стратегиями поведения при ошибках — это фича дорогих винчестеров. В десктопных сериях её часто просто нет, или она есть, но без права включения — винчестер тупит над ошибкой столько, сколько сочтёт нужным. Второй важный момент — на рейдовых жёстких дисках эта опция включена по-умолчанию. Что может приводить к проблемам.
Расшифровка названия
Возможность управления поведением диска при ошибках называется очень и очень путанно: SCT ERC. Это расшифровывается как SCT Error Recovery Control. SCT в свою очередь название общего протокола SMART Command Transport. SMART в свою очередь расшифровывается как Self-Monitoring, Analysis and Reporting Technology, таким образом, полная расшифровка SCT ERC звучит так: Self-Monitoring, Analysis and Reporting Technology Command Transport Error Recovery Control (выдохнули).
Краткая справка
Посмотреть, поддерживает ли жёсткий диск управление ошибками можно с помощью команды
Железо → Пришло ли время для SSD? из песочницы
Здравствуйте!
В последнее время, когда SSD становятся всё быстрее и доступнее, меня не перестают удивлять люди, которые хотят повышения быстродействия своей домашней системы, но при этом отказываются от покупки SSD. Что же движет этими людьми и почему они так поступают?
В последнее время, когда SSD становятся всё быстрее и доступнее, меня не перестают удивлять люди, которые хотят повышения быстродействия своей домашней системы, но при этом отказываются от покупки SSD. Что же движет этими людьми и почему они так поступают?
Хостинг → Мощный сервер БД за чуть более 2000$
Здравствуйте хабравчане.
Пару месяцев назад наступил момент, когда один из моих порталов — сайт знакомств tatarlove.ru перестал выдерживать нагрузку по вечерам и тупо падал. Онлайн доходило до 1800 пользователей при посещаемости свыше 50 тысяч за сутки(>20 тыс. уников). Портал размещался на одном выделенном сервере. В ходе анализа было выяснено, что не справлялся не только процессор, но и вся дисковая подсистема. Нужно было решать, что делать дальше.
Пару месяцев назад наступил момент, когда один из моих порталов — сайт знакомств tatarlove.ru перестал выдерживать нагрузку по вечерам и тупо падал. Онлайн доходило до 1800 пользователей при посещаемости свыше 50 тысяч за сутки(>20 тыс. уников). Портал размещался на одном выделенном сервере. В ходе анализа было выяснено, что не справлялся не только процессор, но и вся дисковая подсистема. Нужно было решать, что делать дальше.