Сегодня 05 февраля 2026
18+
MWC 2018 2018 Computex IFA 2018
реклама
Новости Software

Программисты «Яндекса» чуть не лишили всех точного времени

Из-за ошибки, допущенной при разработке обновления прошивки для умных колонок «Яндекс Станция», образовалась аномально высокая загрузка на NTP-серверы (Network Time Protocol) в российском сегменте интернета — эти ресурсы используются для синхронизации времени. Компания обнаружила ошибку далеко не сразу, но перечислила меры, которые не допустят её повторения.

 Источник изображения: yandex.ru

Источник изображений: «Яндекс»

В середине октября один из добровольцев, который организовал NTP-сервер на своём домашнем маршрутизаторе, обнаружил, что канал устройства забит запросами. Обновление прошивки и перезагрузка проблемы не решили, но она исчезла после отключения NTP. Далее выяснилось, что с середины октября прекратили работу 120 из 140 российских NTP-серверов. Доброволец призвал сообщество «Хабра» в качестве временной меры запустить у отечественных провайдеров NTP-серверы на виртуальных машинах за минимальную плату — помимо рядовых пользователей, откликнулся крупный облачный оператор, который выделил сразу 30 виртуальных машин.

Виновником оказалась компания «Яндекс», которая в середине октября начала развёртывать новую прошивку для умных колонок серии «Станция». Прошивка этих устройств содержит стандартный клиент синхронизации времени. В штатном режиме она производится каждые пять часов, но в случае неудачной попытки повторная предпринимается через пять секунд. Из-за ошибки в одном из связанных с клиентом модулей все устройства с обновлённой прошивкой начали вне зависимости от результата предыдущей попытки синхронизировать время каждые пять секунд — напомним, только за первые девять месяцев 2024 года было продано, по оценкам, около 3 млн «Яндекс Станций».

На начальном этапе «Яндекс» развернул прошивку на 10 % устройств — это стандартная мера для того, чтобы выявлять ошибки на ранних стадиях. Но в стандартной схеме обнаружения ошибок на тот момент отсутствовала метрика NTP-запросов, и к 24 октября прошивка распространилась на 100 % устройств. Первые жалобы на избыточное число NTP-запросов начали поступать 10 ноября — обычно этот симптом объясняется проблемами на стороне пользователя, и из-за небольшого объёма жалоб приоритет у проблемы был невысоким. Ошибку удалось обнаружить лишь 20 ноября — к этому моменту её исправили и начали готовить новый выход прошивки.

Но тянуть время уже было нельзя, потому что к выходным 23 и 24 ноября в Сети оставалось всего четыре сервера. Поэтому в качестве временной меры «Яндекс» выпустил хотфикс — экстренное обновление, которое увеличивало период обращения с 5 до 600 секунд. Нагрузка на NTP-серверы, таким образом, снижалась в 120 раз, но если какая-то из «Яндекс Станций» после включения не могла синхронизировать время с первой попытки, то в последующие 10 минут её связанные со временем функции оказывались недоступными. Это помогло стабилизировать ситуацию — к тому моменту начали запускать NTP-серверы члены сообщества «Хабра».

Чтобы не допустить повторения инцидента в дальнейшем, в «Яндексе» решили принять несколько мер:

  • выделить несколько ресурсов компании в общий пул NTP-серверов;
  • организовать для своих устройств отдельную зону NTP-серверов;
  • осуществлять мониторинг связанных с NTP метрик при выпуске новых и обновлении старых продуктов;
  • усовершенствовать механизмы обратной связи с пользователями, чтобы эффективнее выявлять подобные проблемы.

Источник:

Если вы заметили ошибку — выделите ее мышью и нажмите CTRL+ENTER.
Материалы по теме

window-new
Soft
Hard
Тренды 🔥
Новый трейлер раскрыл дату выхода научно-фантастического приключения Planet of Lana 2: Children of the Leaf — демоверсия на подходе 32 мин.
Internet Archive взялся лечить интернет от «гниения ссылок» 2 ч.
«То есть Concord вас ничему не научила?»: Sony анонсировала кооперативный боевик Horizon Hunters Gathering, и фанаты в недоумении 2 ч.
Биткоин рухнул ниже $67 000 — инвесторы напуганы и устроили распродажу 3 ч.
The Elder Scrolls IV: Oblivion Remastered выйдет на Nintendo Switch 2, но фанаты радоваться не спешат 3 ч.
Дуров: Telegram ни разу не передал данные из переписок — и никогда этого не сделает 4 ч.
Bethesda подтвердила даты выхода Fallout 4: Anniversary Edition и Indiana Jones and the Great Circle на Nintendo Switch 2 4 ч.
Российский банк впервые начал выдавать кредиты под залог биткоинов 5 ч.
Осенью в Substack произошла утечка данных пользователей — обнаружили её только в феврале 5 ч.
Слухи: версия Starfield для PS5 не заставит себя долго ждать, а релиз на Switch 2 под угрозой 5 ч.
Топливо с «запахом жареной картошки»: в России успешно испытали авиационный SAF из отработанного растительного масла 34 мин.
ASRock начала проверки после новых поломок Ryzen 9000, но не объяснила, что делать пользователям 41 мин.
MSI усилила защиту RTX 5000 и RX 9000 от плавления разъёма — Afterburner получит функцию GPU Safeguard+ 52 мин.
Intel придумала интегрированные конденсаторы нового поколения — ключ к стабильному питанию ИИ-чипов будущего 3 ч.
Starlink стал золотой жилой SpaceX и скоро расширится — от спутниковых ИИ-гаджетов до контроля орбиты 3 ч.
Оперативная память и SSD подорожают почти вдвое в текущем квартале — как для ПК, так и для серверов 4 ч.
Из-за дефицита памяти у Raspberry Pi 4 появился версия со «сдвоенной» RAM, а 16-Гбайт версия Raspberry Pi 5 существенно подорожала 4 ч.
BMW признала подписку на обогрев сидений перегибом, но не откажется от разблокировки функций за доплату 4 ч.
SpaceX вопреки традициям намерена попасть в фондовые индексы сразу после IPO 5 ч.
Китайский рынок электромобилей забуксовал — продажи BYD в январе рухнули до минимума за два года 5 ч.