Проекты Mail.ru базируются в шести ЦОД, рассредоточенных по Москве. Всего в масштабной ИТ-системе работает более 10 тыс. серверов. Большинство серверов рабочего сегмента функционируют под управлением СentOS (диалект Linux), хотя каждый проект управляется отдельно и решение об используемых операционных системах принимается независимо «владельцами» проектов. В офисном сегменте используются в основном Windows-компьютеры, объединенные в домен Active Directory.
Централизованная служба мониторинга рабочей зоны Mail.ru получает сведения обо всех событиях, происходящих на серверах компании. Обработкой событий занимается система мониторинга, разработанная специалистами компании еще 12 лет назад; в настоящее время система выполняет 140 типов мониторинга оборудования, контролирует до 160 тыс. параметров инфраструктуры Mail.ru и генерирует терабайты графиков. Вместе с тем в ряде проектов есть и собственные системы мониторинга, построенные на открытых решениях Icinga, Zabbix и Nagios, которые унаследованы у купленных компаний и интегрированы в общую систему мониторинга Mail.ru. Центральная система мониторинга предназначена для работы дежурной смены, которая выявляет критические ситуации в инфраструктуре компании и формирует задание на их обработку администраторам конкретных проектов.
Технологически до 90% информации центральная система мониторинга получает по протоколу SNMP. Было решено, что система должна получать сведения о всех контролируемых объектах в течение одной минуты — именно поэтому и понадобилось разрабатывать собственную систему мониторинга. Связано это с тем, что общедоступные системы мониторинга в основном используют запрос SNMP Get, который позволяет за один раз проверить только один параметр. Поскольку параметров много, то и запросов приходится посылать много. По оценке Александра Гневшева, заместителя генерального директора Mail.ru Group по эксплуатации, в этом случае на один сервер могло приходиться до 200 отдельных запросов. В то же время стандарт SNMP предусматривает и другой тип запросов — GetBulk, который в большинстве случаев позволяет получить информацию о всем сервере за один запрос; в этом случае максимальное число запросов — 4. Использование подобных технологий оптимизации позволяет уложиться в жесткие временные нормативы.
В каждом из шести дата-центров компании установлен собственный кластер серверов мониторинга. При этом каждому кластеру доступна информация обо всех устройствах во всех ЦОД, что позволяет в случае выхода из строя почти всех кластеров мониторинга все-таки иметь информацию от оставшихся машин. Полученные в результате проверки данные собираются на центральный сервер подготовки отчетов. Любопытно, что пользуются этими отчетами не только системные администраторы, но и другие специалисты: менеджеры и маркетологи для проверки посещаемости проектов, а программисты — для выявления узких мест своих приложений и решения проблем. Таким образом, система мониторинга является практически центром инфраструктуры сервисов Mail.ru.
Еще одна система мониторинга проверяет безопасность проектов Mail.ru. Эта система располагается вне сети и постоянно посылает запросы на все IP-адреса Mail.ru, а их более 40 тыс. Действительно, хотя сеть компании защищена различными устройствами, защищают они от массовых атак на бреши, допущенные в инфраструктуре. Дыры же в собственных проектах Mail.ru можно найти только внешним мониторингом в ручном режиме с помощью тех же методов, которые используют для этого хакеры.
Для мониторинга безопасности применяются открытые инструменты: сканер nmap и среда исполнения эксплойтов Metasploit. Сценарии их работы написаны специалистами безопасности компании. В данном случае полный обход всей инфаструктуры совершается дня за три: скорость сканера сильно занижена, чтобы не создавать слишком большого трафика. Регулярно проводятся и различные дополнительные проверки, такие как подбор паролей, запуск последних эксплойтов и даже ручной анализ кода проектов.
«Администраторы проектов устанавливают в своих сегментах средства предотвращения вторжений, чтобы блокировать наш же проверочный трафик, — сетует Ярослав Рабоволюк, начальник отдела информационной безопасности Mail.ru. — Приходится им объяснять, что так делать не надо».