Pull to refresh

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

Reading time6 min
Views44K
Hetzner

HDD tools

Про Hetzner на Хабре много упоминалось: здесь и там. Поначалу нашей команде, как и многим другим, очень нравилось.

Отношения с Hetzner у нас давние. Наш старый проект Name.ly (вместе с Brief.ly) крутится у немцев от своего зачатия. Как на «low-cost dedicated hosting» — не жаловались, арендовали сервера у Hetzner з 2008 года. Проблем больших не было. Поддержка — ок. Не самые быстрые ребята. Но за пол часа — час, иногда два — отвечали и помогали.

Но вот со средины 2011-го мнение изменилось. Может наш хард первоначально заказан в 2008-м и 2009-м постарел, или по других причинам.

Сначала в конце мая сгорел hardware RAID — и заодно «поджег» нам два диска. Два дня намучались (с вот такой похожей проблемой), но пришлось всё с резервной копии восстанавливать.

Потом в начале сентября на старенькой машине также «ушли» два диска, собранные в software RAID. Опять закончилось всё доставанием данных с бекапа.

Спасибо Hetzner хоть за 100 ГБ бесплатного FTP для личных нужд.

Кстати, старые диски Hetzner сразу «уничтожает». Если заранее не попросить сберечь снятые диски на некоторое время, то данные будут потеряны.

Прошло только пол года, и на машине, которую мы восстановили в июне, опять полетел уже второй hardware RAID. На этот раз «более удачно» — удалось откачать данные с одного диска.

Вот состояние дисков после «падения»:

Model Family: Seagate Barracuda 7200.11 family
Device Model: ST31500341AS
Firmware Version: CC1H
User Capacity: 1,500,301,910,016 bytes

ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE

Disk 0:
1 Raw_Read_Error_Rate 0x000f 113 099 006 Pre-fail Always - 56315943
3 Spin_Up_Time 0x0003 100 100 000 Pre-fail Always - 0
4 Start_Stop_Count 0x0032 100 100 020 Old_age Always - 10
5 Reallocated_Sector_Ct 0x0033 100 100 036 Pre-fail Always - 12
7 Seek_Error_Rate 0x000f 084 060 030 Pre-fail Always - 245310368
9 Power_On_Hours 0x0032 094 094 000 Old_age Always - 6090
10 Spin_Retry_Count 0x0013 100 100 097 Pre-fail Always - 0
12 Power_Cycle_Count 0x0032 100 100 020 Old_age Always - 10
184 End-to-End_Error 0x0032 100 100 099 Old_age Always - 0
187 Reported_Uncorrect 0x0032 100 100 000 Old_age Always - 0
188 Command_Timeout 0x0032 100 100 000 Old_age Always - 0
189 High_Fly_Writes 0x003a 028 028 000 Old_age Always - 72
190 Airflow_Temperature_Cel 0x0022 055 050 045 Old_age Always - 45 (Lifetime Min/Max 45/48)
194 Temperature_Celsius 0x0022 045 050 000 Old_age Always - 45 (0 19 0 0)
195 Hardware_ECC_Recovered 0x001a 039 020 000 Old_age Always - 56315943
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
240 Head_Flying_Hours 0x0000 100 253 000 Old_age Offline - 234921826195397
241 Total_LBAs_Written 0x0000 100 253 000 Old_age Offline - 1601743597
242 Total_LBAs_Read 0x0000 100 253 000 Old_age Offline - 3358359105
...

Disk 1:
1 Raw_Read_Error_Rate 0x000f 120 099 006 Pre-fail Always - 235534254
3 Spin_Up_Time 0x0003 100 100 000 Pre-fail Always - 0
4 Start_Stop_Count 0x0032 100 100 020 Old_age Always - 11
5 Reallocated_Sector_Ct 0x0033 001 001 036 Pre-fail Always FAILING_NOW 4092
7 Seek_Error_Rate 0x000f 091 060 030 Pre-fail Always - 1594050702
9 Power_On_Hours 0x0032 080 080 000 Old_age Always - 18095
10 Spin_Retry_Count 0x0013 100 100 097 Pre-fail Always - 0
12 Power_Cycle_Count 0x0032 100 100 020 Old_age Always - 11
184 End-to-End_Error 0x0032 100 100 099 Old_age Always - 0
187 Reported_Uncorrect 0x0032 100 100 000 Old_age Always - 0
188 Command_Timeout 0x0032 099 099 000 Old_age Always - 17180131332
189 High_Fly_Writes 0x003a 001 001 000 Old_age Always - 100
190 Airflow_Temperature_Cel 0x0022 052 047 045 Old_age Always - 48 (Lifetime Min/Max 48/50)
194 Temperature_Celsius 0x0022 048 053 000 Old_age Always - 48 (0 17 0 0)
195 Hardware_ECC_Recovered 0x001a 040 015 000 Old_age Always - 235534254
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
240 Head_Flying_Hours 0x0000 100 253 000 Old_age Offline - 214026810312367
241 Total_LBAs_Written 0x0000 100 253 000 Old_age Offline - 3923719077
242 Total_LBAs_Read 0x0000 100 253 000 Old_age Offline - 3342903896
...


Проехали. Попросили поставить новые диски. Но решили на этот раз проверить. Вот выхлоп smartctl:

Model Family: Seagate Barracuda 7200.11 family
Device Model: ST31500341AS
Firmware Version: CC1H
User Capacity: 1,500,301,910,016 bytes

Disk 0:
...
5 Reallocated_Sector_Ct 0x0033 100 100 036 Pre-fail Always - 1
...
9 Power_On_Hours 0x0032 092 092 000 Old_age Always - 7037
...


Из-за этого можно было бы шум и не поднимать. Хотя диск и не свежий, 10 месяцев как ни как. А вот и второй «новый» диск:

Disk 1:
...
5 Reallocated_Sector_Ct 0x0033 100 100 036 Pre-fail Always - 32
...
9 Power_On_Hours 0x0032 089 089 000 Old_age Always - 10155


Диск уже отработал 10155 часов, т.е. 423 дня, т.е. год и два месяца. Попросили поставить новый. Получили отказ:

Dear client,
we check all hard disc with the factory tool, before we use the hard discs again.
We can't guarantee to install brand new hard discs. If you have issues with a hard
disc, you can contact us any time. We are 24/7 available.


Попросили не повторять летнюю ошибку, тогда как оказалось они поставили нам полтора-годичный диск который умер через пол года. Опять получили отказ:

We regret, but we will not replace a non faulty disk on your Server, a lifetime of
as example 18095 power on hours is not a defect or value which means that your
harddisk will get faulty sooner than any other.
If you think that your Server got a faulty harddisk please provide us logfiles
which shows the error.
If you want to get other harddisks, this would cost a one-time fee of 39,- Euro
for each harddisk.


39 долларов за замену диска, и нет гарантии, что за диск ты получишь в замену. Такая себе «Russian roulette».

Я лично попытался позвонить и поговорить. Прождал на линии 10 с половиной минут — немец сказал «Guten Abend» несколько раз, после чего не расслышав меня бросил трубку (звонок был через Скайп — но в Англию перед тем я нормально звонил).

Далее по мейлу задали вопрос, а зачем нам вставили диск с уже 32 перенесёнными секторами. В ответ — привет:

Deacr client,
If you suspect a hardware failure, we can provide a full hardware-check. Both hard
disc will checked with the SMARTCTL long check. A hard disc has many spare sectors
for this case and 32 is not a critical value.
If you want, we can move your request to our supervisor.


Написали начальнику. В ответ получили фигу:

I can understand your concern about a possible hard drive failure, but as my
colleague has already explained to you we check all hard disc with the factory
tool and only if the test is OK then we use the hard disc again. Also a new hard
disk is no guarantee for no hard drive failure and it is not possible to install
any clients only new hard drives.
We can't guarantee to install brand new hard discs. If you have issues with a hard
disc, you can contact us any time and send us logfiles which shows the error. We
are 24/7 available.


Спросили опять, а почему за дополнительную оплату нельзя получить новые диски. Я даже добавил, что в таком случае чрезмерного удивления придётся на форумах трубить. Но немцы не сдались:

With this threat, we come no further into this matter.


Дальнейшие вопросы по этой теме остались без ответа со стороны суппорта.

О RAID от 3ware много плохого писалось. На форумах Seagate народ кричит о проблемах с прошивками и модель в линейке Hetzner также не ок.

Сейчас, в силу того что у нас другие сервера на Hetzner — сразу спрыгнуть не получится.

Сделали пока поправку, что платить каждый месяц 25 евро (+НДС) за RAID controller (Hetzner FlexiPack + 2-Port Hardware RAID-Controll) которые палят диски — смысла нет. Вернулись к софтверному рейду.

Reallocated_Sector_Ct, на момент установки их уже 32, может и не крайне критично, но сам факт, что reallocated sectors уже появились и диск отработал более года, а Hetzner в упор отказывает его менять и это после второго «падения» системы за менее чем год — настораживает.

Будем следить, как скоро reallocated будет расти. Добавляем эту информацию в суточный информационный лог. Всем кто хостится на Hetzner рекомендуем проверить диски smartctl -A /dev/sda.

Может быть мы что-то не так понимаем в нашей команде? Но ситуация выглядит приблизительно вот так:

Приходите вы к Тойоте, покупаете машину, выбрали, посмотрели на тормоза. Тормоза уже старые, поношенные, могут дать сбой.

Спрашиваете: «а можно новые тормоза, даже за дополнительную сумму?»

А в ответ: «а у нас такой опции нет!»


Интересно, какой опыт с Hetzner у других команд? Сталкивался ли кто с похожей ситуацией у других хостеров? Что бы Вы требовали от компании в такой ситуации?

Как быть? Какие хорошие альтернативы посоветуете (кроме AWS — наш проект, что сейчас на Hetzner вертится, пока Amazon бюджетно не потянет)?

Post Mortem (2012-01-27)

Через сутки и повторного напоминания начальник суппорта ответил, и удолетворил наше желание на новый диск. Правда за 69 евро. Но ответ был дружеский. Только позно немножко. Систему уже запустили. Диск в software RAID менять — downtime.

Возможно давление с Хабра сказалось на разум Рене.

Спасибо всем за очень полезные советы.

Думаю прислушаемся к noonesshadow и achekalin, подсобираем денег и пойдём на апгрейд. Возможно в тучи.

Если кому оставаться на Hetzner, обратите внимание на EQ vs EX:
* ZloiZmei
* vgrayster
* inkvizitor68sl
* Fr0stb1te
* Lux_In_Tenebris

и SSD
* synergy
Tags:
Hubs:
Total votes 89: ↑70 and ↓19+51
Comments156

Articles