Администрируем
Oracle, SQL Server, PostgreSQL

Мониторинг баз данных и бизнес-процессов

Мониторинг баз данных Oracle, Microsoft SQL Server, MySQL, PostgreSQL

Мониторинг баз данных (БД) — это критически важная часть управления информационными системами в современных компаниях. От того, насколько эффективно осуществляется этот процесс, зависят производительность, безопасность и доступность данных, которые являются ключевыми для успешного функционирования бизнеса.
Мониторинг баз данных — это комплексный процесс постоянного наблюдения за состоянием и производительностью сервера, экземпляра системы управления базами данных (СУБД) и размещенных на нем баз данных, а также что происходит внутри БД или около нее. Например, блокировки, бекапы, состояние репликации, количество транзакций или длина транзакции в неактивном состоянии, которая мешает провести автовакуум. Для новичка в области или не DBA специалист база данных — это зачастую черный ящик. Многие им пользуются, но не понимают, как он работает.
При работе с БД вашему DBA необходимо выполнять целый ряд задач. Мониторинг БД при большой нагрузке позволит реагировать лишь на инциденты и явные аномалии в работе. Мелкие события происходящие в базе данных (флуктуации), которые лишь поверхностно сообщают о нестабильной работе системы и о грядущей через месяц проблеме обычно остаются вне внимания. Поэтому часто за мониторинг отвечает отдельная команда, но часто у неё нет компетенций DBA.
Мониторинг включает в себя сбор, анализ и интерпретацию данных о работе базы данных, с целью обеспечения её стабильной работы и своевременного выявления и устранения потенциальных проблем.
Мониторинг помогает предотвратить сбои, повысить производительность и обеспечить соответствие установленным требованиям и стандартам только тогда, когда люди, работающие с ним понимают, как работает СУБД. И это именно то, что мы предлагаем - сотрудник каждый линии поддержки от первой (начальный уровень) до третьей (экспертный уровень) понимает, с чем он работает.
Заказчику предлагается кастомный [не из коробки] мониторинг на основе ПО Zabbix, который включает не только стандартные метрики уровня ОС и СУБД, но и множество дополнительных параметров, следящий за специфическими процессами внутри СУБД. Это наша собственная разработка, основанная на опыте администрирования баз данных, инцидентной поддержки, их предсказании и предотвращении.
Наш инструмент используется с 2008 года и был максимально усовершенствован на основе всех практик, ошибок и методов. Мы вводим в работу уникальные метрики, по мониторингу которых даём наиболее точный анализ вашей системы.
Как развивался наш мониторинг за 15 лет? После инцидента заводится задача, проводится анализ, почему ситуация не была промониторена, и можно ли улучшить это с точки зрения мониторинга. Если можно улучшить - эти изменения планируются и внедряются. Это обязательный процесс внутри команды ДБ-Сервис.
Подобных решений на рынке нет. Например, мы предлагаем мониторинг бекапов на уровне даты последнего полного бекапа или размера дифф. бекапа. Он просигнализирует, что полного бекапа уже не было n-дней.
Что дает триггер на размер дифф. бекапа? То, что была произведена массовое изменение данных и пора сделать полный бекап, например. Если этот триггер загорается слишком часто, то необходимо задуматься о причинах. Возможно, пересмотреть политику резервного копирования.
Или отставание слейв (стендбай) базы, работает ли она и насколько актуальна. Частое отставание свидетельствует о наличии проблем, с которыми необходимо разобраться специалисту.
Мы мониторим основные базы данных (PostgreSQL, Oracle, MSSQL, MySQL) со специфическими метриками и “айтемами” (Items).

Основные аспекты мониторинга и обслуживания баз данных

1

Мониторинг текущего состояния БД

Регулярная проверка состояния базы данных позволяет отслеживать её работоспособность и целостность данных. Это включает в себя проверку доступности базы данных, наличия свободного места для расширения и состояния её компонентов (например, свободные секции в секционированной таблице). Проблемы с состоянием БД могут приводить к сбоям и потерям данных, что недопустимо для любой компании.
2
Мониторинг производительности
Оценка производительности базы данных включает в себя анализ времени отклика, загрузки процессора, использования памяти и дисковой подсистемы. Мониторинг производительности помогает выявить узкие места и оптимизировать работу базы данных, или же обозначить для заказчика узкие места в текущем функционале, что позволяет в перспективе избежать простоев и улучшить общую эффективность системы.
3
Мониторинг SQL-запросов
Анализ SQL-запросов помогает выявить запросы, которые вызывают аномальные показатели в статистике производительности, такие как повышенное потребление ресурсов. Это позволяет оперативно реагировать на запросы, которые могут перегружать систему, и оптимизировать их выполнение.
4
Анализ исторических данных
На основании исторических данных производится анализ динамики роста БД, который позволяет прогнозировать дальнейший рост и потребность в ресурсах.

Анализ данных включает:

  • Прогнозирование срока, на который хватит места на диске. Определяется, через сколько времени текущий объем данных исчерпает доступное пространство.
  • Анализ роста данных. Оцениваются таблицы и индексы, которые занимают наибольшее место, с целью выявить объекты, подлежащие сжатию или оптимизации. Специалисты ДБ-Сервис в первую очередь предлагают оптимизации, а не докупать место на сервере.
  • Наглядное представление данных перед увеличением/оптимизацией. Все собранные данные представляются заказчику в виде отчетов и графиков для понимания анализа.
График роста за год
Топ-10 таблиц
1
Автоматизация работы
Регулярные задачи по управлению базами данных, такие как очистка, ребилд индексов и сжатие таблиц, должны быть автоматизированы. Это позволяет сократить количество ручного труда и минимизировать вероятность ошибок.
2
Своевременные обновления
Своевременная установка обновлений — это необходимость, вызванная устареванием программного обеспечения и появлением новых функций. Обновления помогают поддерживать систему в актуальном состоянии и улучшать её функциональность. Также иногда нужно запланировать переход на новую версию СУБД.

Как проходит процесс мониторинга для заказчика?

1. Команда поддержки.

Круглосуточная команда поддержки использует интерфейс Zabbix (Zabbix UI) для анализа всех мониторируемых показателей. Это позволяет оперативно реагировать на любые инциденты и поддерживать стабильность системы.

2. Мониторинг через Zabbix Proxy.

На стороне клиента находятся базы данных различных типов: PostgreSQL, Oracle, MSSQL. На каждой из них установлен агент Zabbix, который собирает данные о работе этих систем.
Данные передаются через VPN к Zabbix Proxy, который обрабатывает информацию и отправляет её на сервер Zabbix. Связь между Zabbix Proxy и сервером Zabbix осуществляется по защищённому SSL-соединению.

3. Центральный сервер мониторинга (Zabbix Server).

Сервер Zabbix, размещенный в облачной инфраструктуре (AWS), собирает и обрабатывает данные от Zabbix Proxy. Для хранения исторических данных используется база данных InfluxDB, а для управления текущими данными — PostgreSQL.

Zabbix-агент не передаёт данные из БД. Он передаёт состояние о базе данных, блокировках, какие процессы занимают большее количество ресурсов, состояние репликации, диспетчеров и тд. Ваши данные остаются у вас.

Также мы предоставляем установщик агента, который можно проверить любыми доступными антивирусами, а затем установить собственными силами или доверить это дело нам.

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

Zabbix поддерживает шифрование коммуникаций между компонентами Zabbix с использованием протокола Transport Layer Security (TLS).
Вся передача ведётся внутри VPN.

Данные о состоянии систем отображаются через панель мониторинга Grafana, которая предоставляет удобный интерфейс для визуализации основных показателей здоровья баз данных.

4. Клиентский доступ и визуализация.

Клиент получает доступ к Zabbix через SSL-соединение, где может видеть предварительно настроенные панели мониторинга, отражающие ключевые индикаторы баз данных.

Мы предоставляем доступ для нужных пользователей, а также настраиваем системную учётную запись для подключения к Grafana или другому визуализационному инструменту, если хочется посмотреть собранные данные самостоятельно.

Почему мониторинг баз данных — это непростая услуга

Мониторинг баз данных — это не просто технический процесс, а комплексная задача, требующая значительных знаний и опыта. Он включает в себя:
  • Проактивный подход
    Эффективный мониторинг требует проактивного подхода, который позволяет выявлять проблемы до их проявления. Это требует глубокого анализа данных и способности предсказывать потенциальные сбои.
  • Техническая сложность
    Современные базы данных имеют сложную архитектуру и высокие требования к ресурсам. Мониторинг требует понимания как внутренней работы СУБД, так и взаимодействия её компонентов.
  • Координация между командами
    В крупных системах часто требуется координация между различными командами, например, командами инфраструктуры и баз данных. Это усложняет процесс мониторинга и требует хороших коммуникативных навыков.
  • Актуальность знаний
    База данных и связанные технологии быстро развиваются, и специалисты должны постоянно обновлять свои знания и навыки, чтобы эффективно справляться с новыми вызовами.

Как ДБ-Сервис обеспечивает качественную поддержку баз данных

Мы предлагаем комплексный подход к мониторингу баз данных, который выделяет его на фоне конкурентов. Мы понимаем, что поддержка баз данных требует не только технической экспертизы, но и глубокого понимания бизнес-процессов и потребностей клиентов.
  • Проактивный мониторинг
    Мы используем проактивный мониторинг, который позволяет выявлять потенциальные проблемы до их проявления. Наша команда не просто реагирует на запросы клиентов, но и активно ищет потенциальные угрозы, предотвращая их.
  • Уникальные метрики и айтемы
    За 15 лет работы мы выделили метрики, которые действительно необходимы для реальной работы DBA и incident investigation.
  • Персонализированный подход
    Когда возникают проблемы, мы назначаем DBA для их решения. Этот специалист проводит постмортем анализ инцидентов и устраняет не только саму проблему, но и причины, по которым мониторинг не отловил её вовремя
  • Координация между командами
    В случае необходимости мы создаем коммуникационные каналы между различными командами, что позволяет эффективно решать проблемы, находящиеся на стыке разных областей.
  • Регулярные совещания с клиентами
    Мы проводим регулярные совещания с клиентами для контроля качества и обсуждения текущих задач и проблем. Это позволяет нам улучшать поддержку баз данных в течение всего времени сотрудничества.
  • Индивидуальный подход
    Мы идем на один или два шага вперед, предоставляя дополнительные услуги и обеспечивая высокий уровень удовлетворенности наших клиентов. Сосредоточьтесь на бизнесе, а мы позаботимся о беспрерывности работы базы данных.
ДБ-Сервис предоставляет доступ к данным о работе системы в режиме 8x5 и поддержку в решении инцидентов в режиме 24/7. Это гарантирует высокую доступность баз данных и их стабильную работу на всех уровнях поддержки.

Как заказать услугу?

Для заказа услуги мониторинга оставьте заявку через форму ниже, и мы свяжемся с вами в ближайшее время, чтобы обсудить детали и предложить лучшее решение для Вашей компании.