Самые абсурдные причины падения production
Есть особая категория производственных инцидентов, разбор которых вызывает не столько профессиональное сочувствие, сколько нервный смех узнавания, потому что причина оказывается настолько нелепой и незначительной на первый взгляд, что в нее с трудом верится, пока сам не столкнешься с чем-то подобным. Хочу собрать несколько таких историй, потому что за каждой из них стоит вполне серьезный урок, несмотря на всю комичность повода. Просроченный сертификат безопасности, пожалуй, самый распространенный представитель этой категории абсурдных причин. История типична до банальности, сертификат был выпущен с ограниченным сроком действия, дата истечения была где-то зафиксирована, но система напоминания об истечении либо не была настроена вовсе, либо сама сломалась в какой-то момент, оставшись незамеченной. В результате в один прекрасный день, ровно в момент истечения срока действия, критичный сервис внезапно перестает устанавливать защищенные соединения с клиентами, и вся команда судорожно ищет причину серьезного сбоя, которая на поверку оказывается настолько простой и предсказуемой, что становится немного стыдно за то, что ее вообще пропустили. Секундная поправка, периодически добавляемая к точному времени для синхронизации с астрономическими наблюдениями, регулярно становится источником крайне неприятных сюрпризов для сложных распределенных систем. Проблема в том, что далеко не все программные системы корректно обрабатывают ситуацию, когда одна и та же минута внезапно оказывается длиннее обычной на одну секунду, и некоторые системы синхронизации времени в такие моменты начинают вести себя абсолютно непредсказуемо, что в отдельных задокументированных случаях приводило к массовым сбоям сразу у нескольких крупных технологических компаний одновременно, чьи системы оказались недостаточно подготовлены к подобной редкой, но полностью предсказуемой аномалии календаря. Проблемы с системой разрешения доменных имен заслуживают отдельного упоминания как удивительно частая причина крупных сбоев, несмотря на кажущуюся простоту и зрелость самой технологии. Одна забытая или неправильно настроенная запись, один истекший срок регистрации домена, одна ошибка при обновлении конфигурации внутренней системы разрешения имен способны парализовать работу целой инфраструктуры, потому что практически все современные распределенные системы в конечном счете зависят от корректной и быстрой работы этого, казалось бы, простого и давно отлаженного механизма. Неправильная настройка часового пояса — это еще одна на удивление частая причина серьезных инцидентов, особенно в системах, где критично важна точная последовательность событий во времени. Разница в несколько часов между ожидаемым и реальным временем способна привести к тому, что запланированная задача выполняется не тогда, когда предполагалось, или что сравнение временных меток в распределенной системе дает совершенно неверный результат, приводя к каскаду логических ошибок, первопричину которых команда порой ищет где угодно, кроме banальной путаницы между разными часовыми поясами в разных частях системы. Заполненный до отказа диск это классическая, но неизменно актуальная причина падения производственных систем, которая на первый взгляд кажется настолько элементарной проблемой, что удивительно, как она вообще может застать врасплох опытную команду. Тем не менее регулярно встречаются истории, где логи, временные файлы или накопленные данные постепенно заполняли все доступное пространство хранения, и система переставала функционировать не из-за сложной технической проблемы, а из-за банальной нехватки места, которую можно было бы легко предотвратить своевременным мониторингом и автоматической ротацией накапливаемых данных. И конечно, невозможно обойти стороной уже упомянутую в другой статье историю про один лишний или недостающий пробел в текстовом файле конфигурации, где количество пробелов определяет структуру данных.
· 19.07
Мой практический вывод из этой коллекции абсурдных историй для коллег, которые считают подобные причины слишком нелепыми, чтобы всерьез готовиться именно к ним. Именно, потому что эти причины кажутся слишком простыми и незначительными, чтобы стать предметом серьезного внимания, они и остаются годами незамеченными в реальных системах, пока не превращаются в полноценный, вполне серьезный по своим финансовым и репутационным последствиям инцидент. Самая скучная и банальная профилактика зачастую защищает от куда более разрушительных последствий, чем подготовка к экзотическим и маловероятным сценариям катастроф, которые выглядят куда интереснее на бумаге, но случаются значительно реже банального заполненного диска или просроченного сертификата.
0
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
коммент удалён