Двадцать шестого февраля прошла конференция MariaDB M|18, в которой участвовали 330 ИТ-компаний. На конференции выступил представитель ServiceNow. Он поделился кейсом по управлению «85 тысячами БД по всему миру». Среднее количество запросов в час — 25 миллиардов. Как в ServiceNow работают с такими нагрузками, расскажем под катом.
Почему в ServiceNow используют MariaDB
Представитель ServiceNow Тим Йим (Tim Yim) рассказал об использовании MariaDB. По словам Йима, компания выбрала MariaDB, потому что эта БД отличается стабильностью и высокой доступностью. В ServiceNow нацелены на обеспечение доступности систем 99,999%, поскольку этот показатель критически важен для таких клиентов, как больницы, фабрики, банки и электростанции.
Выгоду от использования MariaDB уже оценили в сингапурском банке DBS Bank, отказавшись от DB2 и Oracle Enterprise. За два года банк развернул более 700 экземпляров БД MariaDB, на которых работают 54% бизнес-критических сервисов, ежедневно проводящих транзакции на 70–80 млрд долларов. Компания в семь раз увеличила производительность приложений, а инструменты для их тестирования смогли выдерживать в десять раз большую нагрузку. При этом системы автоматизированного выпуска приложений стали в два раза эффективнее.
Что такое multi-instance-архитектура
В компании говорят, что не используют multi-tenant- и single-tenant-архитектуру. Вместо этого, ServiceNow придумали свой вариант – multi-instance. Модель развертывания multi-instance позволяет каждому клиенту получить собственную базу данных и клиентское приложение.
Йим поясняет: «Обычно компании развертывают multi-tenant-архитектуру, когда все клиенты делят одну большую базу данных. Представим, что клиентов тысяча. Тогда сбой в работе одного из них повлияет на 999 других: в итоге вместо единичного простоя получается тысяча».
В случае multi-instance каждый экземпляр БД клиента работает на «bare metal» для лучшей производительности. При этом ресурсы аппаратного обеспечения делятся между уровнями приложений и БД, а процессы «контейнеризуются». Йим прокомментировал: «Мы дублируем каждую конфигурацию, каждый узел клиентских приложений и каждую базу данных. Каждую ночь мы создаем резервные копии всех БД».
Такой подход позволяет наращивать вычислительную мощность с «хирургической точностью». В отдельно взятый момент времени можно масштабировать инфраструктуру и устранять неполадки одного клиента.
/ Flickr / David Goehring / CC
Йим заявляет, что для эффективной работы такого решения «нужно автоматизировать всё». В ServiceNow так и сделали. Все активы загружаются в CMDB, чтобы их можно было отслеживать в одном месте, а затем происходит настройка и автоматизация рабочих процессов: систем высокой готовности, систем восстановления после отказа и др. В последних релизах платформы ServiceNow разработчики добавили возможность автоматизации на естественном языке, позволяющую «неспециалистам» автоматизировать нужные процессы в своем отделе.
«Скрытые» сложности и дальнейшие планы
Управление таким количеством БД приводит к возникновению ряда проблем. Тим Йим поясняет: «Динамичность ServiceNow позволяет нашим клиентам масштабировать сервисы, но из-за этого меняются шаблоны запросов. Поэтому такой платформой очень сложно управлять».
Решить все возникающие проблемы ServiceNow помогают сотрудники MariaDB: они проводят тренинги для администраторов БД, системных администраторов и специалистов по обеспечению надежности инфраструктуры (site reliability engineer), а также помогают ServiceNow разбираться в технических вопросах.
Компании планируют продолжить сотрудничество и внедрить такие фичи, как DDL для описания структуры БД и более надежное шифрование данных в облаке. Кроме того, представитель ServiceNow заявил, что не против внедрения систем на базе машинного обучения: «Я думаю, что любой администратор БД был бы заинтересован в работе с более «умной» базой данных, которая может помогать в распределении нагрузки». И разработчики MariaDB уже работают над внедрением инструментов для мониторинга, которые позволят повысить производительность и масштабируемость системы.
Еще несколько постов из корпоративного блога ИТ Гильдии:
- Как сделать ITIL более клиентоориентированной
- Как внедрить процесс управления конфигурацией
- Как создать и начать использовать каталог услуг
- Не усложняйте ITSM: 4 совета по улучшению рабочих процессов
Автор: it-guild