В прошлую среду мы пришли на работу как обычно. Ожидали самый обычный рабочий день. Статистика сетевых отказов тоже выглядела совершенно обычно, и никаких причин ждать чего-то особенного не было.
А потом дверь распахнулась, и на пороге появился Директор. С глазами навыкате.
— Ребята! Что это?
— ???
— У меня почтовый ящик забит жалобами. Ни у кого ничего не работает. Ни у кого! Ничего!
Тут он, конечно, слегка погорячился. Не то чтобы совсем ничего и не то чтобы у всех.
Децентрализованная сущность Кошачьих Туннелей сыграла свою роль — полностью заблокировать Котика не удалось. Но для нормальной работы системе нужны трекеры — опорные узлы. На тот момент их у нас было несколько десятков: в разных странах, у разных провайдеров, в разных датацентрах.
И все они, без исключения, оказались заблокированы в России.
До единого.
Без них Котик не мог нормально подключать новых пользователей, да и у старых всё начинало работать заметно медленнее.
Поскольку за опорную сеть отвечаю я, круче всего досталось, естественно, мне.
Начался сизифов труд.
Я ввожу новые узлы, запускаю новые серверы — бац, они тоже заблокированы.
Я запускаю ещё — бац.
Ещё — бац.
В общем, долго так продолжаться, конечно, не могло. Пришлось сесть и соорудить Котатор-ротатор.
Котатор-ротатор следит за доступностью опорных серверов, автоматически останавливает те, которые по статистике чаще всего недоступны клиентам, и запускает взамен новые. Причём чем хуже ситуация, тем активнее он это делает.
А степень этой самой «хуже ситуации» с лёгкой руки Марианны Николаевны называется у нас в офисе Грохотатором.
Почему Грохотатор?
Потому что его значение выведено на большой экран, а при превышении порога на весь этаж включается такая сирена, что из столовой выскакиваешь, заливая ужин завтраком.
Если же по делу, то Грохотатор — это агрегированная клиентская статистика доступности, которую мы получаем из технических логов клиентов.
Из тех самых логов, которые нас периодически убеждают вообще не вести — разумеется, ради нашей же безопасности.
Проблема в том, что без Грохотатора мы бы в этой истории вообще ничего не поняли.
С точки зрения самих серверов всё прекрасно. Они работают. Они доступны из интернета. Они исправно связываются с нашей инфраструктурой и периодически докладывают, что у них всё хорошо.
И они совершенно правы.
Это пользователи до них достучаться не могут. Причём не все пользователи, не всегда и только напрямую.
Так что смотреть на сервер и спрашивать: «Ты жив?» в нашем случае оказалось довольно бессмысленно. Сервер радостно отвечает: «Жив!», пока несколько тысяч километров сетевой инфраструктуры между ним и клиентом считают несколько иначе.
Теперь Котатор-ротатор смотрит на ситуацию с другой стороны — глазами клиентов. И если какой-то узел начинает систематически выпадать из их поля зрения, долго жить ему не дают.
Заодно за последние дни мы узнали много нового из того, чего раньше просто не замечали.
Например, что в пятницу вечером наши противники, судя по всему, выключают компьютеры и уходят домой.
Блокировки заканчиваются почти как по волшебству.
А в понедельник около восьми утра начинаются снова.
Ну что ж.
И то хлеб.
Такие вот вести с полей.

