YMatrix предоставляет нативный графический инструмент мониторинга на базе Grafana. В этом документе описаны шаги по развертыванию и управлению компонентами мониторинга. YMatrix включает в себя стандартную панель мониторинга, отображающую следующую информацию. Пользователи также могут создавать пользовательские дашборды в Grafana, используя собранные системные данные.
После развертывания интерфейс мониторинга выглядит следующим образом. Начиная с версии 4.4, мониторинг разделен на два дашборда: MatrixDB Dashboard и MatrixDB Database.
MatrixDB Dashboard:

MatrixDB Database:

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

Компоненты мониторинга входят в состав установочного пакета YMatrix. После развертывания YMatrix настройка мониторинга выполняется в два этапа: включение сбора метрик и установка/настройка Grafana.
Выполните следующие шаги для включения сбора метрик YMatrix и использования системных ресурсов. Собранные данные сохраняются в новой базе данных с именем matrixmgr. В приведенных ниже примерах хост Master — mdw.
[<普通用户>@mdw ~]$ sudo su - mxadmin
[mxadmin@mdw ~]$ psql -d matrixmgr
matrixmgr=# SELECT mxmgr_init_local();
При успешном выполнении в базе данных matrixmgr появится новая схема с именем local. Таблицы и представления в этой схеме содержат данные мониторинга и конфигурации кластера. Не изменяйте вручную определения или содержимое этих таблиц и представлений.
Подготовьте хост, имеющий доступ как к узлу Master, так и к Интернету. Это может быть Master, Standby Master или отдельный компьютер (Linux, macOS, Windows и т.д.).
Установите Grafana версии 7.3 или выше — рекомендуется. Официальные инструкции по загрузке и установке доступны по адресу https://grafana.com/grafana/download.
Приведенные ниже команды используют CentOS 7 в качестве примера. Для других операционных систем обратитесь к их соответствующей документации.
Примечание!
YMatrix поддерживает офлайн-установку Grafana. Подробности см. в разделе Часто задаваемые вопросы по мониторингу и оповещениям.
wget https://dl.grafana.com/oss/release/grafana-7.3.6-1.x86_64.rpm
sudo yum install grafana-7.3.6-1.x86_64.rpm
[mxadmin@mdw ~]$ sudo systemctl daemon-reload
[mxadmin@mdw ~]$ sudo systemctl start grafana-server
[mxadmin@mdw ~]$ sudo systemctl status grafana-server
[mxadmin@mdw ~]$ sudo systemctl enable grafana-server
Примечание!
- Версия Grafana, предоставляемая через
yumв CentOS 7, часто устаревает (6.x), поэтому прямое использованиеsudo yum install grafanaне рекомендуется.- Полные официальные инструкции по установке см.: https://grafana.com/docs/grafana/latest/installation/rpm
После установки откройте браузер и перейдите по следующему URL. Порт 3000 — стандартный порт Grafana, который можно изменить. Войдите с помощью учетных данных по умолчанию (admin / admin). Для безопасности измените пароль после входа, нажав на аватар пользователя в левом нижнем углу.
http://<安装节点的IP或者域名>:3000
После установки Grafana добавьте базу данных matrixmgr в YMatrix как источник данных и импортируйте предопределенные дашборды мониторинга.
Шаги для добавления источника данных:



Перед импортом предопределенных дашбордов оповещений скопируйте файлы dashboard.json и database.json на локальную машину. Процесс включает поиск файлов на сервере, их копирование и последующую загрузку локально. Выполните следующие шаги:
Сначала войдите на сервер и переключитесь на пользователя mxadmin. Найдите файлы dashboard.json и database.json по пути, указанному на изображении. Вы можете использовать команду cd, команду find или любой другой предпочитаемый метод. Ниже приведен пример использования find для database.json:
[mxadmin@mdw ~]$ cd /opt/ymatrix/matrixdb5/share/doc/postgresql/extension
##or
[mxadmin@mdw ~]$ find /opt/ymatrix/matrixdb5/share/doc/postgresql/extension -name database.json
Затем используйте команду scp, чтобы скопировать файл на локальную машину. Возможны проблемы с правами доступа; рекомендуется сначала скопировать файл в /tmp/, а затем передать его из /tmp/ на локальную систему. Пример с использованием database.json:
Примечание!
При копировании из/tmp/убедитесь, что используется правильный пользовательский контекст, чтобы избежать проблем с правами доступа.
[mxadmin@mdw]$ scp mxadmin@< 服务器IP地址 >:/opt/ymatrix/matrixdb5/share/doc/postgresql/extension/"database.json" mxadmin@< 服务器IP地址 >:/tmp/
~ scp waq@< 服务器IP地址 >:/tmp/"database.json" /Users/akkepler/workplace/Grafana
Наконец, проверьте передачу файла через графический интерфейс или командную строку. После подтверждения загрузите файлы через интерфейс Grafana.
Примечание!
Если импорт не удается, выполните следующие изменения переменных.
В файле dashboard.json замените все вхождения ${cluster} на local. Замените $host на фактические имена хостов всех узлов. Например, если ваш кластер состоит из mdw, sdw1 и sdw2, замените все вхождения $host в dashboard.json на 'mdw','sdw1','sdw2'. Для database.json замените только ${cluster} на local. После модификации импортируйте файлы через интерфейс Grafana.


Нажмите Upload JSON file, чтобы выбрать и импортировать файлы dashboard.json и database.json. Эти файлы по умолчанию находятся в /opt/ymatrix/matrixdb5/share/doc/postgresql/extension.

После включения сбора метрик кластера на каждом хосте запускается служба сбора. Соответствующие логи хранятся в /var/log/matrixdb.
Если вы перезапускаете YMatrix или перезагружаете сервер, а затем снова запускаете YMatrix, служба сбора данных запускается автоматически без ручного вмешательства.
Чтобы остановить службу сбора данных, подключитесь к базе данных matrixmgr и выполните mxmgr_remove_all. Собранные ранее данные сохраняются:
[mxadmin@mdw ~]$ psql -d matrixmgr
matrixmgr=# SELECT mxmgr_remove_all('local');
Если служба сбора была остановлена вручную или после переустановки YMatrix, повторно включите сбор, подключившись к базе данных matrixmgr и выполнив mxmgr_deploy:
matrixmgr=# SELECT mxmgr_deploy('local');