Сервис для хранения кода GitLab из-за ошибки сисадмина удалил почти 300 ГБ данных

5005
3

Известный opensource-стартап GitLab, сооснователем которого является харьковчанин Дмитрий Запорожец, столкнулся с серьезной проблемой. Вследствие череды событий из-за ошибки системного администратора были удалены почти 300 ГБ данных. Как оказалось, ни один из пяти планируемых способов не позволяет восстановить часть утерянных данных.

«Вчера у нас случился серьезный инцидент с одной из наших баз данных. Мы потеряли шесть часов данных (проблемы, запросы на слияние, пользователей, комментарии, снипеты и так далее) с GitLab.com. Git/wiki-репозитории и ресурсы, размещенные у пользователей, не пострадали», — говорится в официальном блоге компании.

Пока компания восстанавливает данные из резервной копии, сделанной за 6 часов до инцидента. Все изменения, внесенные в пострадавшую базу данных с 19:20 до 01:25 по киевскому времени в ночь с 31 января на 1 февраля, были утеряны.

Ошибке системного администратора, которая привела к утере данных и временной недоступности сервиса, предшествовала активность спамеров. Около 21:00 UTC (23:00 по Киеву) с одного аккаунта было произведено около 47 000 логинов с различных IP. Администрация заблокировала спамеров и отключила аккаунт. Через час репликация основной базы данных остановилась из-за возросшего числа запросов на запись, которые не были выполнены второстепенной БД.

Системный администратор уже собирался покинуть рабочее место, но не стал этого делать из-за возникающих проблем. После 23:00 UTC он решает очистить одну из директорий, но вместо второстепенной базы данных выбирает основную. После нескольких секунд он замечает ошибку и отменяет операцию, «но уже слишком поздно». Из около 300 ГБ данных остается лишь 4,5 ГБ.

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

Команда GitLab быстро признала причину ошибки и пытается держать общественность в курсе ситуации. В Twitter-аккаунте компании @GitLabStatus размещаются обновления по ситуации каждый час. Сотрудники также выложили в открытый доступ документ с хронологией всего инцидента и запустили онлайн-трансляцию на YouTube с ходом восстановительных работ.

Напомним, прошлой осенью GitLab привлек $20 млн инвестиций серии В от фондов August Capital, Khosla Ventures и Y Combinator.

Оставить комментарий

Комментарии | 3

Поиск