Платформа Тантор
Примечание
Коммерческое использование возможно только с письменного разрешения компании ОOO “Лаборатории Тантор”.
Полнофункциональная модульная платформа администрирования и мониторинга кластеров PostgreSQL «Тантор» (здесь и далее - Платформа) - это программное обеспечение, предназначенное для решения задач по обеспечению долгосрочной и корректной эксплуатации СУБД Tantor или СУБД на базе PostgreSQL, установленной в периметре заказчика. Платформа упрощает ежедневную работу с СУБД, позволяет использование персоналом первого уровня поддержки предприятий, снижает порог вхождения в управление СУБД, снижает эксплуатационные расходы и повышает непрерывность бизнес процессов.
Функциональные возможности Платформы включают в себя многофункциональную консоль управления, автоматическую адаптивную настройку кластера PostgreSQL, обзор системы, предупреждения и мониторинг, автоматические проверки работоспособности и аудит схемы, выполнение задач обслуживания через графический интерфейс, профилирование запросов, администрирование нескольких серверов в одном месте, легкую установку в периметре клиента.
Рис.1 Основные компоненты Платформы и их назначение
Архитектура Платформы
Основу Платформы составляет клиент-серверная архитектура. Клиентская часть представляет собой веб-интерфейс, который позволяет администраторам управлять базами данных в браузере аналогично зарубежным продуктам. На Рисунке 1 можно было познакомиться со всеми компонентами Платформы, а теперь рассмотрим их взаимосвязи и принципы работы. Платформа состоит из нескольких модулей: серверная часть написана на языке Golang, серверный модуль рекомендаций конфигурации СУБД разработан на Python, а фронтенд на JS Angular. Ядром продукта является СУБД, основанная на PostgreSQL, которая была дополнена специальными расширениями для обработки «на лету» большого количества метрик из наблюдаемой СУБД. Сбор информации с администрируемой базы данных осуществляется через Агент. Это легковесное приложение, разработанное также на языке Golang, которое наблюдает не только за базой данных, но и за операционной системой в целом. Также плюсом агента является его возможность отправлять только изменившиеся данные на основе срезов и предагрегация данных с целью снижения объема сетевого трафика и нагрузки на серверную часть платформы Тантор. Связь между агентами, backend и keeper-серверами осуществляется с помощью брокера сообщений NATS (по протоколу HTTPS), который обеспечивает асинхронный обмен сообщениями и доставку данных в БД.
Как видно на схеме, данные поступают от агентов к NATS. Keeper сохраняет полученные данные и размещает их в OperDB. Существует также обратная связь от компонента Backend к агентам, которая реализована таким образом, чтобы агенту не требовалось открывать порты для входящих соединений. Агент сам приходит и забирает все поступившие команды из NATS, что повышает безопасность системы.
Рис.2 Схема архитектуры Платформы
Второй вариант - масштабирование базы данных Платформы: На Рисунке 3 можно увидеть схему масштабируемой Платформы на случай если требуется подключение сотен или тысяч наблюдаемых серверов. В таком случае можно использовать мультитенантную архитектуру, в которой наблюдаемые серверы разделены между несколькими серверами БД в платформе. Такая архитектура позволяет решать множество практических задач и масштабировать платформу для любой нагрузки. Платформа предоставляет обширный функционал для администрирования подключенных экземпляров СУБД и позволяет распределить их по рабочим пространствам, созданным пользователями системы, которые могут быть определены локально или во внешнем LDAP репозитории. В каждом пространстве будут находиться серверы всех подключенных СУБД. При входе внутрь сервера пользователь увидит панель инструментов с основными метриками, отображаемыми в режиме реального времени в удобной визуальной форме, а также все предупреждения о возможных неисправностях. Web-интерфейс также позволяет настроить конфигурацию PostgreSQL с использованием рекомендаций. Эта функциональность реализована с помощью модуля конфигурации, который рекомендует пользователю правильные параметры, основанные на данных, собранных с сервера БД. Применение параметров, не требующих перезагрузки сервера, также осуществляется через веб-интерфейс: запрос поступает в Backend и направляется соответствующему агенту, который выполняет команду и возвращает результат. Следует отметить, что выполнение любых команд агента учитывает нагрузку на сервер, то есть умный агент подождет перед выполнением операции, если СУБД перегружена.
Рис.3 Схема масштабируемой Платформы
- Общие сведения
- Аппаратные и программные требования
- Что нового
- Администратору
- Руководство Пользователя
- Панель управления платформой
- Страница выбора рабочих пространств (Workspaces)
- Страница обзора рабочего пространства (Workspace overview)
- Работа с экземплярами
- Добавление экземпляра сервера PostgreSQL
- Список экземпляров
- Обзор экземпляра (Overview)
- Конфигурации (Configurations)
- Обслуживание (Maintenance)
- Инспектор Баз Данных (DB Inspector)
- Профайлер запросов (Query Profiler)
- Активности (Activity)
- Репликация (Replication)
- Табличные пространства (Tablespaces)
- Графики (Charts)
- Конфигурация мониторинга (Monitoring Config)
- Анализ логов (Advanced analytics)
- Работа с кластерами
- Работа с агентами
- Оповещения (Alerts)
- Основные понятия