[SOLVED] Сборка SOFT RAID 1. Скорость 6 мб/сек
Собираю raid массив.
Вчера поставил на сборку:
sda1 sdb1 - raid 1
sda2 sdb2 - raid 1
sda3 sdb3 - raid 1
sda4 sdb4 - raid 1
Собрались они с большой скоростью. 60 мб/сек.
И параллельно собирался массив:
sdc1 sdd1 - raid 1
Как я понимаю он собирался параллельно из-за того, что это другие винты. Скорость сборки была около 30 мб/сек.
Так как этот массив размером 2ТБ, собирался бы он со скоростью 30 мб/сек примерно 1000 мин.
Сегодня с утра смотрю /proc/mdstat, все массивы из sda sdb собранны, а этот массив собирается со скоростью 6 мб/сек, и скорость то и дело падает до 3 мб/сек и опять растет до 6. Что делать?
UPDATE
У кого будет такая же проблема, вот: http://rlab.ru/doc/4k_hdd_for_linux.html
- Для комментирования войдите или зарегистрируйтесь
А посмотри-ка, милдруг, на
А посмотри-ка, милдруг, на вывод S.M.A.R.T. этих самых дисков?
Может быть, один из них - "казачок засланый"? (В смысле из коробки дефектный?)
emerge Your world
Gentoogle
- Для комментирования войдите или зарегистрируйтесь
data ~ # smartctl --all
data ~ # smartctl --all /dev/sdc smartctl 5.39.1 2010-01-28 r3054 [x86_64-pc-linux-gnu] (local build) Copyright (C) 2002-10 by Bruce Allen, http://smartmontools.sourceforge.net === START OF INFORMATION SECTION === Device Model: WDC WD20EARS-00MVWB0 Serial Number: WD-WMAZA0749172 Firmware Version: 51.0AB51 User Capacity: 2 000 398 934 016 bytes Device is: Not in smartctl database [for details use: -P showall] ATA Version is: 8 ATA Standard is: Exact ATA specification draft version not indicated Local Time is: Fri Jan 21 17:46:06 2011 KRAT SMART support is: Available - device has SMART capability. SMART support is: Enabled === START OF READ SMART DATA SECTION === SMART overall-health self-assessment test result: PASSED General SMART Values: Offline data collection status: (0x84) Offline data collection activity was suspended by an interrupting command from host. Auto Offline Data Collection: Enabled. Self-test execution status: ( 0) The previous self-test routine completed without error or no self-test has ever been run. Total time to complete Offline data collection: (36000) seconds. Offline data collection capabilities: (0x7b) SMART execute Offline immediate. Auto Offline data collection on/off support. Suspend Offline collection upon new command. Offline surface scan supported. Self-test supported. Conveyance Self-test supported. Selective Self-test supported. SMART capabilities: (0x0003) Saves SMART data before entering power-saving mode. Supports SMART auto save timer. Error logging capability: (0x01) Error logging supported. General Purpose Logging supported. Short self-test routine recommended polling time: ( 2) minutes. Extended self-test routine recommended polling time: ( 255) minutes. Conveyance self-test routine recommended polling time: ( 5) minutes. SCT capabilities: (0x3035) SCT Status supported. SCT Feature Control supported. SCT Data Table supported. SMART Attributes Data Structure revision number: 16 Vendor Specific SMART Attributes with Thresholds: ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE 1 Raw_Read_Error_Rate 0x002f 200 200 051 Pre-fail Always - 0 3 Spin_Up_Time 0x0027 177 164 021 Pre-fail Always - 6141 4 Start_Stop_Count 0x0032 100 100 000 Old_age Always - 44 5 Reallocated_Sector_Ct 0x0033 200 200 140 Pre-fail Always - 0 7 Seek_Error_Rate 0x002e 200 200 000 Old_age Always - 0 9 Power_On_Hours 0x0032 100 100 000 Old_age Always - 368 10 Spin_Retry_Count 0x0032 100 253 000 Old_age Always - 0 11 Calibration_Retry_Count 0x0032 100 253 000 Old_age Always - 0 12 Power_Cycle_Count 0x0032 100 100 000 Old_age Always - 42 192 Power-Off_Retract_Count 0x0032 200 200 000 Old_age Always - 38 193 Load_Cycle_Count 0x0032 199 199 000 Old_age Always - 3279 194 Temperature_Celsius 0x0022 120 106 000 Old_age Always - 30 196 Reallocated_Event_Count 0x0032 200 200 000 Old_age Always - 0 197 Current_Pending_Sector 0x0032 200 200 000 Old_age Always - 0 198 Offline_Uncorrectable 0x0030 200 200 000 Old_age Offline - 0 199 UDMA_CRC_Error_Count 0x0032 200 200 000 Old_age Always - 0 200 Multi_Zone_Error_Rate 0x0008 200 200 000 Old_age Offline - 0 SMART Error Log Version: 1 No Errors Logged SMART Self-test log structure revision number 1 No self-tests have been logged. [To run self-tests, use: smartctl -t] SMART Selective self-test log data structure revision number 1 SPAN MIN_LBA MAX_LBA CURRENT_TEST_STATUS 1 0 0 Not_testing 2 0 0 Not_testing 3 0 0 Not_testing 4 0 0 Not_testing 5 0 0 Not_testing Selective self-test flags (0x0): After scanning selected spans, do NOT read-scan remainder of disk. If Selective self-test is pending on power-up, resume after 0 minute delay. data ~ # smartctl --all /dev/sdd smartctl 5.39.1 2010-01-28 r3054 [x86_64-pc-linux-gnu] (local build) Copyright (C) 2002-10 by Bruce Allen, http://smartmontools.sourceforge.net === START OF INFORMATION SECTION === Device Model: WDC WD20EARS-00MVWB0 Serial Number: WD-WMAZA0736231 Firmware Version: 51.0AB51 User Capacity: 2 000 398 934 016 bytes Device is: Not in smartctl database [for details use: -P showall] ATA Version is: 8 ATA Standard is: Exact ATA specification draft version not indicated Local Time is: Fri Jan 21 17:46:13 2011 KRAT SMART support is: Available - device has SMART capability. SMART support is: Enabled === START OF READ SMART DATA SECTION === SMART overall-health self-assessment test result: PASSED General SMART Values: Offline data collection status: (0x82) Offline data collection activity was completed without error. Auto Offline Data Collection: Enabled. Self-test execution status: ( 0) The previous self-test routine completed without error or no self-test has ever been run. Total time to complete Offline data collection: (36780) seconds. Offline data collection capabilities: (0x7b) SMART execute Offline immediate. Auto Offline data collection on/off support. Suspend Offline collection upon new command. Offline surface scan supported. Self-test supported. Conveyance Self-test supported. Selective Self-test supported. SMART capabilities: (0x0003) Saves SMART data before entering power-saving mode. Supports SMART auto save timer. Error logging capability: (0x01) Error logging supported. General Purpose Logging supported. Short self-test routine recommended polling time: ( 2) minutes. Extended self-test routine recommended polling time: ( 255) minutes. Conveyance self-test routine recommended polling time: ( 5) minutes. SCT capabilities: (0x3035) SCT Status supported. SCT Feature Control supported. SCT Data Table supported. SMART Attributes Data Structure revision number: 16 Vendor Specific SMART Attributes with Thresholds: ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE 1 Raw_Read_Error_Rate 0x002f 200 200 051 Pre-fail Always - 0 3 Spin_Up_Time 0x0027 174 162 021 Pre-fail Always - 6266 4 Start_Stop_Count 0x0032 100 100 000 Old_age Always - 43 5 Reallocated_Sector_Ct 0x0033 200 200 140 Pre-fail Always - 0 7 Seek_Error_Rate 0x002e 200 200 000 Old_age Always - 0 9 Power_On_Hours 0x0032 100 100 000 Old_age Always - 295 10 Spin_Retry_Count 0x0032 100 253 000 Old_age Always - 0 11 Calibration_Retry_Count 0x0032 100 253 000 Old_age Always - 0 12 Power_Cycle_Count 0x0032 100 100 000 Old_age Always - 41 192 Power-Off_Retract_Count 0x0032 200 200 000 Old_age Always - 37 193 Load_Cycle_Count 0x0032 199 199 000 Old_age Always - 3121 194 Temperature_Celsius 0x0022 120 118 000 Old_age Always - 30 196 Reallocated_Event_Count 0x0032 200 200 000 Old_age Always - 0 197 Current_Pending_Sector 0x0032 200 200 000 Old_age Always - 0 198 Offline_Uncorrectable 0x0030 200 200 000 Old_age Offline - 0 199 UDMA_CRC_Error_Count 0x0032 200 200 000 Old_age Always - 0 200 Multi_Zone_Error_Rate 0x0008 200 200 000 Old_age Offline - 7 SMART Error Log Version: 1 No Errors Logged SMART Self-test log structure revision number 1 No self-tests have been logged. [To run self-tests, use: smartctl -t] SMART Selective self-test log data structure revision number 1 SPAN MIN_LBA MAX_LBA CURRENT_TEST_STATUS 1 0 0 Not_testing 2 0 0 Not_testing 3 0 0 Not_testing 4 0 0 Not_testing 5 0 0 Not_testing Selective self-test flags (0x0): After scanning selected spans, do NOT read-scan remainder of disk. If Selective self-test is pending on power-up, resume after 0 minute delay. data ~ #
- Для комментирования войдите или зарегистрируйтесь
Во-первых: большие
Во-первых: большие "копипасты" лучше выкладывать wgetpaste
(Сделаем любимый форум чище — будем пользоваться app-text/wgetpaste!)
Во-вторых: на втором диске вот эта строка как-то насторожила...
200 Multi_Zone_Error_Rate 0x0008 200 200 000 Old_age Offline - 7
emerge Your world
Gentoogle
- Для комментирования войдите или зарегистрируйтесь
Да я просто для наглядности
Да я просто для наглядности для себя выложил =) Так wgetpaste пользуюсь.
- Для комментирования войдите или зарегистрируйтесь
Так у вас диски по жизни ни
Так у вас диски по жизни ни разу не тестировались :) - поставьте тесты в кронтаб!
- Для комментирования войдите или зарегистрируйтесь
А зачем crontab?
В man smartd.conf
написано, что этот дэмон умеет
сам запущать тесты в нужное время и в нужном месте :)
Типа:
/dev/sdc -a -s S/../.././10
- smartd обязуется запускать короткий тест диска каждый день в 10 часов утра...
Про какие разновидности тестов, которые необходимо запускать с помощью cron, Вы имели введу? :D
- Для комментирования войдите или зарегистрируйтесь
Именно это я и имел ввиду...
Именно это я и имел ввиду... ;)
А точнее что-то типа
/dev/sdd -a -d sat -I 194 -I 231 -W 4,45,55 -o on -S on -s (S/../.././01|L/../../7/05) -m -M daily
- Для комментирования войдите или зарегистрируйтесь
google://ускорить перестроени
google://ускорить перестроени RAID
Первая ссылка
Сделал: echo 50000 >
Сделал:
не помогает. уже и заного начал массив собирать, тоже самое.
Мать серверная, интел.
А dd if=/dev/sdc1
А
с какой скоростью выполняется?
Какой то пипец: livecd ~ #
Какой то пипец:
не в рейде дело... Копай
не в рейде дело... Копай глубже
Нда... Ладно, поставлю
Нда... Ладно, поставлю систему и из системы уже попробую собрать.
При чем вот что: livecd ~ #
При чем вот что:
А sdc/sdd случаем не на одном
А sdc/sdd случаем не на одном контроллере?
Покажите
желательно через небольшое время после загрузки
Кстати, убедитесь, что перемычки на дисках стоят правильно.
dmesg с самого начала работы
Перемычки там только для работы какого то софта от WD под виндой. Все стоят на месте, где должны стоять.
dmesg с самого начала работы системы:
S-anches
Это 2TB винт, скорее всего с 4кБ сектором. перемычка стоит для эмуляции этим диском 512 байтных секторов (например для совместимости с Win XP и более ранними).
При этом работа диска на запросах с маленькими блоками (<4кБ) либо с блоками не выровненными по 4кБ замедляется.
Вопросы:
Какой размер страйпа был при создании массива?
Выровнены ли по 4кБайтной границе разделы используемые для создания raid?
RulezRacer
Подскажите как выставить размер страйпа.
Ни знаю. Не выставлял. =(
По поводу перемычек на винтах написанно: если вы работаете с виндой, то переставте перемычку вот так, для того, что вы могли использовать нашу программу.
man mdadm в помощь. Задать
man mdadm в помощь. Задать размер страйпа можно при создании массива:
--chunk=XX - размер в килобайтах, по умолчанию 64. в данном случае не критично.
Посмотреть как выравнены разделы можно например так:
> fdisk -l -u /dev/sdc
> fdisk -l -u /dev/sdd
Если никаких действий не предпринималось, то будет скорее всего start = 63 и т.д.
К чему приводит описано например тут: http://habrahabr.ru/company/paragon/blog/97436/
Рекомендую пока диски пустые - выровнять разделы.
data ~ # fdisk -l -u
Как я понимаю, у моих винтов один сектор всё таки 512 байт, а не 4К. Значит проблем со смещением не должно быть?
Попробовал изменить chunk, но на raid1 он не меняется.
S-anches написал(а): По
Вы ошибаетесь.
Если вы будете создавать один раздел, использующий весь объем диска, то можно поставить перемычку и забыть про выравнивание. Необходимое смещение начала раздела будет сделано прошивкой винта.
Если вы будете создавать несколько разделов, то или используйте утилиту от WD, или при создании разделов укажите их начало с учетом выравнивания.
Так ничего и не решилось. Уже
Так ничего и не решилось. Уже в рабочей системе, скорость всего 30мб.
Даже ещё меньше скорость стала =(((
Что ж делать то...
Так у вас с самого начала и
Так у вас с самого начала и было 30! :)
Делать:
1. Посмотреть доки на диски - какая скорость заявлена? (я уже спрашивал про перемычки - у некоторых можно менять скорость).
2. Посмотреть доки на плату/контроллер - какая скорость заявлена? Все ли порты одинаково быстрые?
3. Поменять местами порты у дисков (у вас все равно РАЙДы) - есть ли разница?
Поменяю местами винты... Но
Поменяю местами винты... Но всё таки я вверху показал вывод htparm...
Вообще-то это я поставил на
Вообще-то это я поставил на последнее место... :)
на Хабре в 00:01 01/01/2011
на Хабре в 00:01 01/01/2011 статья была. может поможет? http://habrahabr.ru/blogs/linux/111036/
P.S.: Linux - это красная таблетка :-) Windows - синяя...
этот хабровский гейтоё.... на
этот хабровский гейтоё.... на тему мурзилок надо сразу отправить в корзину, как глупую и вредную писанинину школоло-неосилянта.
Накрайняк, комменты аффтара статьи раздергать на цитаты о "как делать не нужно".
Compute:
Bosch M2.8.1 -> custom Bosch M2.8.3 clone from Russia.
Speed about 260 km,Ram 2 pers.,HDD - 70 kg,210 FLOPS ;)
вообще-то у него там
вообще-то у него там happy-end :)
P.S.: Linux - это красная таблетка :-) Windows - синяя...
Переключил 2тб винты на один
Переключил 2тб винты на один sata выше. Стали на 5 и 6 шине. Вроде пока 56 миб/сек сборка.
Скорость плавно падает. Уже
Скорость плавно падает. Уже 35 миб
Мы его теряем... Мы его теряем!
Не стоит доверяться выводу команды
fdisk -l -u /dev/sdc
, который говорит о 512-ти байтном секторе.Например: имею винт 500GB WD Caivar Green с размером сектора = 4.096, хотя
fdisk -lu
рапортует о стандартном размере (те же 512 байт).Смотрите документацию к Вашим накопителям...
Смотрел на сайте. Ничего не
Смотрел на сайте. Ничего не нашел...
А если он 4к, то что надо делать то с винтом?
недавно заметил, что fdisk
недавно заметил, что fdisk "как-то не так" смещение первого раздела задает... попробуйте cfdisk'ом
P.S.: Linux - это красная таблетка :-) Windows - синяя...
И опять выросла до 60 миб
И опять выросла до 60 миб
И опять упала до 15
И опять упала до 15
--
Вы бы вместо никому не впёршегося комментирования процесса сборки Вашего raid-массива,
сходили бы в google, на предмет разрешения бремени... И не выносили бы другим мозг.
Ходил уже... Ничего не
Ходил уже... Ничего не помогает.
--
Вы пробовали
fdisk'
ом перенести начальные сектора на обоих дисках (/dev/sdc, /dev/sdd) с 63-го на 64-й?data ~ # fdisk -b 4096
Зачем это делать?
Я разве про изменение размера сектора что-то писал?!
это читали?
Прочитал. Теперь понял как
Прочитал. Теперь понял как изменить.
Всё окей. Массив собрался
Всё окей. Массив собрался буквально за ночь, может меньше. Скорость до 120 миб доходила.
Только теперь буду благодарен, если разъясните мне как создать много разделов таким образом.
Так правильно ли:
Прибавлял к концу каждого раздела по 8 секторов, как в той доке.
S-anches написал(а): Всё
А зачем? Используйте ЛВМ!
Нет! :) - у вас нечетное и некратное число блоков в разделах.
Побаиваюсь я лвм в root
Побаиваюсь я лвм в root разделе использовать.
Блин, ну подскажите же как
Блин, ну подскажите же как правильно разделы то создать?
А то по английски не очень понимаю...
По идее только в последнем
По идее только в последнем разделе?
То есть количество его блоков должно быть равно 869676704 чтобы оно делилось на 8?
Каждый раздел нужно создавать
Каждый раздел нужно создавать с учётом кратности секторов.
А чему должна быть равна
А чему должна быть равна кратность?
4096 / 512 = 8
4096 / 512 = 8
Вот, делаю раздел: Disk
Вот, делаю раздел:
Логика такова: 262144 сектора. 131072 блока. Каждый блок два сектора. Каждый сектор 4096 байт. Но он думает каждый сектор 512 байт. 262144 сектора / 8 логических секторов=32768 реальных сектора на винте. Размер 128 миб. Ну что тут не правильного то???
А может так правильно:
S-anches написал(а): По идее
Наоборот, только последний у вас нормальный :)
Не понимаю... Даже кол-во
Не понимаю... Даже кол-во секторов общих делится на 8 спокойно. Кроме последнего раздела. Объясните пожалуйста.
Неправильно понимаете: знак
Неправильно понимаете: знак "+" означает, что секторов нечетное число, т.е. один сектор повис в воздухе (1 block = 2 sectors)! Вы в этом можете убедиться, элементарно ручками посчитав!!.. :)
Не понимаю: Раздел 1: Блоки:
Не понимаю:
А вот в низу получается на один сектор меньше:
Где логика?
Или обозначение fdisk'a:
/dev/sda1 64 262208 131072+ fd Linux raid autodetect
Старт или конец не включительно?
Ну здрасте,
Ну здрасте, приехали!!!
Извините, но очень сложно общаться с человеком, если он не владеет арифметикой в пределах начальной школы! :D
FYI: количество нумерованных об'ектов = N2 - N1 + 1 !!!
Где N1, N2 - номер первого и последнего соответсвенно.