В результате планового обслуживания часть облачной инфраструктуры Google в американском центре us-central1 потеряла связь. Специалист во время работ непреднамеренно отключил все резервные оптоволоконные каналы одновременно, что произошло за 13 минут. Инцидент, случившийся 1 сентября, длился четыре часа и одиннадцать минут, во время которых некоторые сервисы потеряли весь входящий и исходящий трафик полностью.
Google опубликовала анализ происшествия. Сбой затронул зону us-central1-b в штате Айова и нарушил функционирование множества сервисов, включая виртуальные машины, управляемые базы данных, контейнерные платформы и аналитические инструменты. Пользователи теряли доступ к своим вычислительным ресурсам, а сами машины не могли обмениваться данными с сервисами других зон.
Парадокс аварии состоит в том, что инфраструктура была тщательно спроектирована именно для защиты от таких сценариев. Google специально размещает сетевое оборудование на разных физических локациях, прокладывает кабели по разным маршрутам и подключает их к независимым источникам электроэнергии. По замыслу разработчиков, такая система должна продолжать работать даже при выходе из строя одного компонента или одной линии связи, а в большинстве случаев даже при одновременном отказе двух-трёх элементов.
Но избыточность теряет смысл, когда все резервные системы отключают одну за другой. Инженер выполнял плановое расширение пропускной способности оборудования и допустил ошибку в технологическом процессе, вследствие которой последовательно отсоединил все оптические каналы на всех маршрутизаторах. Работа была завершена за 13 минут настолько быстро, что система контроля не смогла предупредить специалиста о неправильной последовательности действий до полного разрыва соединения.
Система автоматического мониторинга сразу зафиксировала потерю сетевого соединения и активировала группу реагирования на инциденты. Компания начала перемещать совместимые приложения на работающие серверы в других частях центра данных, в то время как техники физически восстановили оптические кабели. После восстановления связи движение данных постепенно вернулось на исходное место.
Остальные зоны доступности в us-central1 продолжали функционировать без перебоев. Google официально советует размещать критичные системы в нескольких зонах или даже в разных географических регионах, так как каждая зона считается отдельным доменом отказа. Заказчики, которые имели копии своих данных и сервисов за пределами пострадавшей зоны, смогли автоматически переключиться, а те, кто полностью полагался на зону us-central1-b, остались без доступа.
Помимо вычислительных машин, сбой повлиял на множество других сервисов: хранилища данных испытывали проблемы с доступом и соединением, платформы для контейнеризации теряли связь с отдельными компонентами, бессерверные платформы фиксировали задержки и ошибки в обработке очередей задач. Инструменты мониторинга также столкнулись с перебоями в предоставлении информации части пользователей.
По завершении восстановления Google приостановила все плановые работы в регионе и провела дополнительную проверку процедур техническою обслуживания. Компания пока рассматривает опубликованный анализ как предварительный и намеревается позже выпустить полный отчёт с описанием действий, которые должны предотвратить повторение такого инцидента в будущем.
Этот случай демонстрирует важный недостаток аппаратной защиты от отказов. Возможно организовать сетевое оборудование и линии связи таким образом, чтобы система могла пережить множество независимых поломок, однако плановое техническое обслуживание может превратить эти независимые компоненты в единую уязвимую точку. В данной ситуации Google создала сеть, способную выдержать практически любой случайный сбой, но один сотрудник систематически перекрыл все резервные пути быстрее, чем система успела его остановить.
