Программисты «Яндекса» чуть не лишили всю Россию точного времени
Проблему https://habr.com/ru/articles/860828/ пользователь, поддерживающий NTP-сервер на домашнем маршрутизаторе. Он обнаружил, что его канал был перегружен из-за постоянных запросов, и временно отключил сервер. Впоследствии выяснилось, что сбой связан с обновлением прошивки «Яндекс Станций», развернутым в середине октября. Ошибка в модуле синхронизации времени вынуждала устройства повторять запросы вне зависимости от их успешности.
Обновление изначально было развернуто на 10% устройств, но система мониторинга не отслеживала метрики NTP-запросов, что позволило прошивке распространиться на все устройства к концу октября. Массовые жалобы от пользователей начали поступать только в ноябре, что замедлило идентификацию проблемы.
Решение было найдено лишь 20 ноября.
Для временного устранения сбоя «Яндекс» выпустил хотфикс, увеличивший интервал запросов с 5 до 600 секунд. Это позволило снизить нагрузку на серверы в 120 раз. Однако часть функций колонок оставалась недоступной, если синхронизация времени не проходила с первого раза. Параллельно сообщество энтузиастов и крупные компании, такие как облачные операторы, начали поднимать дополнительные NTP-серверы.
Чтобы предотвратить повторение ситуации, «Яндекс» разработал меры: компания планирует создать выделенную зону NTP-серверов для своих устройств, интегрировать собственные ресурсы в общий пул серверов точного времени и внедрить мониторинг соответствующих метрик. Также будет усовершенствована обратная связь с пользователями для более оперативного выявления проблем.
Сбой подчеркнул уязвимость российской инфраструктуры NTP.
Этот протокол используется для синхронизации времени миллионами устройств, включая умные гаджеты, серверы и транспортные системы. Эксперты отмечают необходимость увеличения числа серверов, чтобы предотвратить перегрузки в будущем.
Проблема также высветила зависимость российских устройств от глобальных сетевых сервисов и необходимость развивать локальные решения. Пользователи активно подключались к инициативе запуска новых серверов, чтобы восстановить стабильность системы. Однако устойчивое решение потребует комплексного подхода и дополнительных инвестиций в инфраструктуру.