Истина Мир Google Cloud вызвал сбой в работе из-за игнорирования обычных мер защиты качества кода

Google Cloud вызвал сбой в работе из-за игнорирования обычных мер защиты качества кода

by Истина

Google Cloud caused outage by ignoring its usual code quality protections

Google Cloud объяснил массовый сбой, который произошел на прошлой неделе, и, как это уже случалось много раз ранее, признал, что он произошел сам по себе.Сбой произошел в прошлый четверг и означал, что клиенты Google Cloud не могли получить доступ к своей арендованной инфраструктуре по меньшей мере в течение трех часов. Среди клиентов, на которых повлияло это событие, был Cloudflare, чьи сервисы пошатнулись из–за ошибок Google, а это означает, что их клиенты также столкнулись с перебоями в работе.

Мы улучшим наши внешние коммуникации, чтобы наши клиенты получали необходимую им информацию как можно скорее

Объяснение инцидента Google начинается с информирования читателей о том, что его API и облачные сервисы Google, обслуживаются через наши уровни управления API Google и control planes”.

Эти два уровня распределены по регионам и “отвечают за то, чтобы каждый поступающий запрос API был авторизован, имел политику и соответствующие проверки (например, квоты), соответствующие их конечным точкам”.

Основной двоичный файл, который является частью этой системы проверки политик, известен как “Service Control”.“Service Control — это региональная служба, у которой есть региональное хранилище данных, из которого она считывает информацию о квотах и политиках. Метаданные этого хранилища данных практически мгновенно реплицируются по всему миру для управления политиками квот для Google Cloud и наших клиентов”, — говорится в сообщении.

29 мая Google добавила новую функцию в Service Control, чтобы включить “дополнительные проверки политики квотирования”.

“Это изменение кода и выпуск двоичного кода прошли проверку в каждом регионе, но путь к коду, который не сработал, так и не был реализован во время этого внедрения из-за необходимости изменения политики, которое привело бы к запуску кода”, — поясняется в отчете Google об инциденте.

Похоже, что у поискового монополиста возникли опасения по поводу этого изменения, поскольку оно “сопровождалось красной кнопкой для отключения этого конкретного пути обслуживания политик”.

Но это изменение “не имело надлежащей обработки ошибок и не было защищено флагом функции. Без надлежащей обработки ошибок нулевой указатель привел к сбою работы двоичного файла”.

Google использует функциональные флаги для выявления проблем в своем коде.

“Если бы этот код был защищен флажком, проблема была бы обнаружена на этапе подготовки”.

Этот незащищенный код использовался в Google до 12 июня, когда компания изменила политику, которая содержала “непреднамеренные пустые поля”.

Вот что произошло дальше:

Управление услугами, затем региональные проверки квот для политик в каждом региональном хранилище данных. Это привело к заполнению пустых полей для соответствующего изменения политики и использовало путь к коду, который попадал на нулевой указатель, что приводило к сбою двоичных файлов. Это происходило глобально при каждом региональном развертывании.В сообщении Google говорится, что команда инженеров по обеспечению надежности сайта обнаружила инцидент и начала его устранять в течение двух минут, выявила первопричину в течение 10 минут и смогла начать восстановление в течение 40 минут.

Но в некоторых крупных регионах Google Cloud “при перезапуске задач управления сервисами это создало массовый эффект для базовой инфраструктуры, от которого зависит… перегрузка инфраструктуры”.

Система управления сервисами не была создана для решения этой проблемы, поэтому она потребовалось почти три часа, чтобы решить проблему в более крупных регионах.

Командам, управляющим продуктами Google, которые вышли из строя из-за этой неразберихи, пришлось самостоятельно заниматься восстановлением.

Это больше, чем обычные извинения

Google пообещал прекратить повторять ошибки, которые привели к этому сбою, – как это всегда и бывает.

Но на этот раз компания также пообещала несколько операционных изменений, а именно:

Мы улучшим наши внешние коммуникации, как автоматизированные, так и с привлечением персонала, чтобы наши клиенты как можно скорее получали необходимую им информацию для реагирования на проблемы, управления своими системами и помогайте своим клиентам. Мы позаботимся о том, чтобы наша инфраструктура мониторинга и коммуникации оставалась работоспособной для обслуживания клиентов даже при отключении Google Cloud и наших основных продуктов мониторинга, обеспечивая непрерывность бизнеса.

Эти инициативы, по сути, являются признанием того, что Google не предоставил достаточно информации во время этого сбоя и планирует что-то предпринять в связи с этим.

Это также означает, что компания не может избежать крупных сбоев. ®

Сайт о православной жизни, богослужениях, обществе, новых технологиях, а также статьи, направленные на укрепление нравственных ценностей. Пользователи могут найти ответы на часто задаваемые вопросы о православной культуре, ознакомиться с церковными новостями, а также участвовать в онлайн-дискуссиях. Цель проекта — стать источником духовного вдохновения.

Что такое истина?

Истина — это отражение реальности в ее подлинном виде, без искажений и заблуждений. Она является фундаментальной ценностью в философии, науке, религии и повседневной жизни, помогая людям осознавать и понимать окружающий мир. 

Выбор редактора

Новости