Последняя декада ноября была очень тяжелой для «Военного альбома». Сайт внезапно прекратил работу вечером 19 ноября и был недоступен следующие двое суток, а после возобновления работы до конца ноября работал нестабильно. Это было связано с техническими проблемами — неполадками сервера и переносом сайта к другому провайдеру.
Вот уже более полутора лет я размещаю «Военный альбом» на лучшем, что можно купить для хостинга – выделенных серверах. Причем, чтобы обеспечить высокую скорость работы и запас «прочности», серверы всегда приобретались довольно мощной и дорогой конфигурации: многоядерные современные процессоры, много памяти, большие жесткие диски.
К сожалению, этот, казалось бы, самый разумный подход совсем не оправдал себя. Главное и уникальное преимущество выделенного сервера – полный контроль над отдельным настоящим, не виртуальным, сервером, оказался фатальным недостатком. Ведь выделенный сервер – это отдельный компьютер, за функционирование которого отвечает клиент, то есть я. И если в нем что-то сломалось – хостинг-провайдер в нем это поменяет, но только после того, как к нему обратится клиент и обоснованно укажет на неисправность. А ломается или глючит что-то в нем нередко, так как сервер – это компьютер, работающий 24 часа в сутки под неслабой нагрузкой.
Вот тут и начинается самое интересное. Сервер работает, работает, и вдруг перестает работать. Пойди разберись, что с ним случилось, почему он не загружается или в него нельзя зайти с помощью удаленного доступа? Нужно нанимать специалиста, чтобы он разобрался с проблемой (можно купить техническую поддержку у самого провайдера, но для выделенных серверов это стоит неадекватные для такого проекта, как «Военный альбом», деньги). А пока специалист разбирается, пока идут переговоры с провайдером – сервер и сайт на нем не работают.
Так было и в этот раз. 19 ноября сервер перестал отвечать. Техподдержка провайдера ответила, что с оборудованием все нормально, проблема с программным обеспечением – разбирайтесь сами. Удаленный системный администратор, которого я обычно привлекал для технических работ, оказался не готов сразу приступить к работе – сутки оказались потеряны. Тем временем у техподдержки провайдера удалось вытащить информацию, что сервер перегружается каждые 15 секунд(!) с сообщением «Kernel panic». На резонный вопрос к техподдерджке – какая такая «программная» ошибка может повлечь такие тяжелые последствия и не нужно ли присмотреться к «железу» сервера, было нагло отвечено, что с оборудованием все нормально. В итоге, еще в течение суток, мы самостоятельно выяснили, что проблема все-таки в оборудовании: один из двух жестких дисков сервера стал барахлить, а так как он работал в паре с другим диском (дисковый массив RAID 1), то это приводило к невозможности загрузки сервера.
Так как техподдержка хостинг-провайдера при возникновении проблемы повела себя неадекватно, было решено ничего ей не доказывать, а сменить хостинг. А учитывая, что два предыдущих провайдера выделенных серверов также были сменены из-за проблем с оборудованием и простоями сервера при их решении, было решено перейти на совершенно другой вид хостинга – облачный хостинг.
Такой хостинг, казалось бы, является шагом назад по сравнению с выделенным сервером. Вместо аренды целого отдельного сервера у провайдера арендуется лишь часть ресурсов сервера – например, пара ядер процессора, 2 ГБ памяти, 50 ГБ диска, что с точки зрения программного обеспечения выглядит как отдельный сервер – так называемый виртуальный сервер. Остальные ресурсы «большого» сервера используются другими клиентами провайдера.
Однако здесь есть большое преимущество: так как сервер целиком никто не арендует, то за его функционирование полностью отвечает провайдер. Если сервер не грузится – то это проблема провайдера (клиент при всем своем желании ничего не может сделать). Более того, для обеспечения «облачной» инфраструктуры используются принципиально иные конфигурации серверов и программного обеспечения, которые, реши я их приобрести, мне были бы просто не по карману. Например, у серверов даже нет собственных жестких дисков – они подключаются к отдельным скоростным дисковым массивам огромной емкости. И если какой-то из дисков внутри массива перестанет работать, то это никак не скажется на работе: все данные многократно реплицируются, поэтому при отказе работающей копии виртуального сервера тут же запускается другая копия, и посетители сайта ничего не заметят:
«Предоставление услуг осуществляется на аппаратно-независимом уровне. При выходе из строя оборудования, обслуживающего сайт, его точная копия практически мгновенно запускается на другом работающем узле совершенно незаметно для пользователей и посетителей. То же самое происходит и при выходе из строя любого другого элемента системы, будь то инфраструктура дата-центра, коммуникационное оборудование или интернет-канал.» (с)
В любом случае, аппаратные проблемы диагностируются и устраняются самим провайдером, и головной боли из-за начавшего «сыпаться» жесткого диска или зависающей сетевой карты у меня больше не будет.
На практике периоды недоступности облачного хостинга тоже бывают, но они исчисляются минутами и очень-очень редко — часом-другим. Такого безобразия, как недоступность сутками, там не бывает.
Тем не менее, перенос сайта на облачный хостинг к провайдеру «Оверсан-Скалакси» дался тяжело. Перенесли сайт и запустили быстро, но работал он нестабильно. То ли сказалась смена оптимальной для хостинга супер-надежной операционной системы FreeBSD (которую «Скалакси» не поддерживает) на Debian 6, то ли архитектура виртуального сервера не подходила для отлаженного на выделенных серверах программного обеспечения сайта… Причину так и не обнаружили. Только после того, как был полностью перенастроен веб-сервер, а сам «движок» сайта был подвергнут масштабной ревизии с заменой или оптимизацией всех модулей, сильно нагружавших сервер (на что и ушло все время до конца ноября), сайт заработал нормально. Впрочем, я даже рад, что эти проблемы были – код сайта в прошлой версии функционировал очень неэффективно, зато теперь он работает в 2-3 раза быстрее.
Красивая картинка дата-центра «Оверсан-Меркурий», где теперь размещен «Военный альбом»
2
Написать комментарий
Пожалуйста, авторизуйтесь чтобы добавить комментарий.
Надеюсь, теперь будет лучше.
Kernel panic в RAID-e при одном кривом диске (то есть когда контроллеру известно о сбое диска и/или он отключает избыточность) — это вопрос к RAID-контроллеру и/или его настройкам на загрузку ОС либо к специальным опции ядра. Фрюха всегда славилась капризностью к железу.
А у нового провайдера VMWare виртуальность поддерживает?
Надеюсь, теперь будет лучше.
Kernel panic в RAID-e при одном кривом диске (то есть когда контроллеру известно о сбое диска и/или он отключает избыточность) — это вопрос к RAID-контроллеру и/или его настройкам на загрузку ОС либо к специальным опции ядра. Фрюха всегда славилась капризностью к железу.
А у нового провайдера VMWare виртуальность поддерживает?
Там, кстати, не было RAID-контроллера — софтовый массив.
Не знаю, можно у него на сайте посмотреть, если интересно. Сейчас там используется Xen.