Администрация GitHub опубликовала отчёт о произошедшем ранее сбое, который продолжался восемь часов. Причину неполадок связали с некорректной работой балансировщиков нагрузки и ошибкой Visual Studio Code, из-за которой образовался шквал повторных запросов.
Источник изображения: Rubaitul Azad / unsplash.com
Проблемы с доступом к GitHub начались 17 августа в 16:28 мск; полностью преодолеть их удалось только в 18 августа в 00:15 мск. Инцидент продолжался 7 часов 47 минут и привёл к увеличению количества ошибок разных сервисов GitHub. Основной причиной сбоя стала перегрузка сети на балансировщиках нагрузки в центральном офисе компании в США — её спровоцировало достижение лимита параллельного выполнения Istio sidecar. Система должна была увеличить пропускную способность по достижении этих лимитов, но этого не произошло из-за неправильно настроенной политики, потому что отслеживалась работа только хост-сервиса, но не состояние балансировщика нагрузки. Проблема быстро усугубилась из-за того, что клиенты стали отправлять повторные запросы, чем окончательно вывели балансировщик из строя.
Инженеры решили проблему, временно уменьшив количество повторных попыток шлюза за счёт изменения кода и настроив балансировщики нагрузки на отклонение входящих запросов к Copilot Token Service в кодом ошибки 403. Сбой также помог выявить давнюю ошибку в VS Code — программы стали отправлять повторные запросы, из-за которых трафик вырос десятикратно, и возникла задержка при восстановлении Copilot Token Service. Большинство сервисов удалось восстановить к 19:36 мск, Actions — к 18:03 мск, за Copilot Token Service заработал только 18 августа в 0:02 мск.
В компании пообещали исправить ошибки в политике автомасштабирования, пересмотреть ограничения на число повторных попыток, провести аудит настроек параллельного доступа Istio и устранить проблемы с поведением VS Code, из-за которых увеличился трафик Copilot Token Service.
Источник:


MWC 2018
2018
Computex
IFA 2018






