4 Надгледајте MySQL са Zabbix агентом 2

Увод

Ова страница вас води кроз кораке потребне за покретање основног надгледања MySQL сервера.

За надгледање MySQL сервера постоји неколико приступа: Zabbix агент, Zabbix агент 2 или Open Database Connectivity (ODBC) стандард. Примарни фокус овог водича је на надгледању MySQL сервера са Zabbix агентом 2, што је препоручени приступ због његове беспрекорне конфигурације у различитим подешавањима. Међутим, ова страница такође нуди упутства за друге приступе, па слободно изаберите онај који најбоље одговара вашим захтевима.

За кога је овај водич

Овај водич је дизајниран за нове Zabbix кориснике и садржи минимални скуп корака потребних да би се омогућило основно праћење MySQL сервера. Ако тражите опције дубоког прилагођавања или вам је потребна напреднија конфигурација, погледајте одељак Конфигурација у Zabbix приручнику.

Предуслови

Пре него што наставите са овим водичем, морате преузети и инсталирати Zabbix сервер, Zabbix кориснички интерфејс и Zabbix агент 2 у складу са упутствима за ваш OS.

На основу вашег подешавања, неки од корака у овом водичу могу се мало разликовати. Овај водич се заснива на следећем подешавању:

  • Zabbix верзија: Zabbix 7.0 (инсталиран из пакета)
  • OS дистрибуција: Ubuntu
  • Верзија OS: 22.04 (Jammy)
  • Zabbix компоненте: сервер, кориснички интерфјес, агент 2
  • База података: MySQL
  • Веб сервер: Apache

Креирајте MySQL корисника

Да би надгледао MySQL сервер, Zabbix захтева приступ њему и његовим процесима. Ваша MySQL инсталација већ има корисника са потребним нивоом приступа (корисник "zabbix" који је креиран приликом инсталирања Zabbix-а), међутим, овај корисник има више привилегија него што је потребно за једноставно праћење (привилегије за DROP базе података, DELETE уносе из табела, итд.). Стога, MySQL корисник за сврху само надгледања MySQL сервера треба да буде креиран.

1. Повежите се са MySQL клијентом, креирајте корисника "zbx_monitor" (замените <password> за корисника "zbx_monitor" лозинком по вашем избору), и GRANT неопходне привилегије за корисника:

mysql -u root -p
       # Унесите лозинку:
       
       mysql> CREATE USER 'zbx_monitor'@'%' IDENTIFIED BY '<password>';
       mysql> GRANT REPLICATION CLIENT,PROCESS,SHOW DATABASES,SHOW VIEW ON *.* TO 'zbx_monitor'@'%';
       mysql> quit;

Када је корисник креиран, можете прећи на следећи корак.

Конфигуришите Zabbix кориснички интерфејс

1. Пријавите се на Zabbix кориснички интерфејс.

2. Креирајте домаћина у Zabbix веб интерфејсу:

  • У поље Име домаћина унесите име домаћина (нпр. "MySQL сервер").
  • У поље Шаблони унесите или изаберите шаблон "MySQL за Zabbix агент 2" који ће бити повезан са домаћином. – У поље Групе домаћина откуцајте или изаберите групу домаћина (нпр. "Базе података").
  • У поље Интерфејси додајте интерфејс типа "Агент" и наведите IP адресу вашег MySQL сервера. Овај водич користи "127.0.0.1" (localhost) за надгледање MySQL сервера који је инсталиран на истој машини као Zabbix сервер и Zabbix агент 2.

  • На картици Макрои, пребаците се на Наслеђени и домаћин макрои, потражите следеће макрое и кликните на Промени поред вредности макроа да бисте је ажурирали:
    • {$MYSQL.DSN} - поставите извор података MySQL сервера (стринг везе именоване сесије из конфигурационе датотеке додатка MySQL Zabbix агент 2) . Овај водич користи подразумевани извор података "tcp://localhost:3306" за надгледање MySQL сервера који је инсталиран на истој машини као Zabbix сервер и Zabbix агент 2.
    • {$MYSQL.PASSWORD} - поставите лозинку претходно креираног MySQL корисника "zbx_monitor".
    • {$MYSQL.USER} - подесите име претходно креираног MySQL корисника "zbx_monitor".

3. Кликните на Додај да додате домаћина. Овај домаћин ће представљати ваш MySQL сервер.

Погледајте прикупљене метрике

Честитамо! У овом тренутку, Zabbix већ надгледа ваш MySQL сервер.

Да бисте видели прикупљене метрике, идите до одељка менија Надгледање → Домаћини и кликните на Контролне табле поред домаћина.

Ова радња ће вас одвести на контролну таблу домаћина (конфигурисану на нивоу шаблона) са најважнијим показатељима прикупљеним са MySQL сервера.

Алтернативно, из одељка менија Надгледање → Домаћини можете кликнути на Најновији подаци да бисте погледали све најновије прикупљене метрике на листи. Имајте на уму да се за ставку MySQL: Израчуната вредност innodb_log_file_size очекује да нема података, јер ће вредност бити израчуната на основу података у последњем сату.

Подесите упозорења о проблемима

Zabbix може да вас обавести о проблему са вашом инфраструктуром користећи различите методе. Овај водич пружа основне кораке конфигурације за слање упозорења е-поштом.

1. Идите на Корисничка подешавања → Профил, пребаците се на картицу Медији и додајте своју е-пошту.

2. Пратите водич за Примање обавештења о проблему.

Следећи пут, када Zabbix открије проблем, требало би да добијете упозорење путем е-поште.

Тестирајте своју конфигурацију

Да бисмо тестирали вашу конфигурацију, можемо симулирати прави проблем ажурирањем конфигурације домаћина у Zabbix кориснички интерфејс.

1. Отворите конфигурацију домаћина MySQL сервера у Zabbix-у.

2. Пређите на картицу Макрои и изаберите Наслеђени и макрои домаћина.

3. Кликните на Промени поред, на пример, претходно конфигурисане вредности макроа {$MYSQL.USER} и поставите другачије MySQL корисничко име.

4. Кликните на Ажурирај да ажурирате конфигурацију домаћина.

5. За неколико тренутака, Zabbix ће открити проблем "MySQL: Услуга не ради", јер неће моћи да се повеже са MySQL сервером. Проблем ће се појавити у Надгледање → Проблеми.

Ако су упозорења конфигурисана, такође ћете добити обавештење о проблему.

6. Вратите вредност макроа на претходну вредност да бисте решили проблем и наставили да надгледате MySQL сервер.

Други приступи праћењу MySQL-а

Уместо надгледања MySQL сервера са Zabbix агентом 2, можете користити Zabbix агент или Open Database Connectivity (ODBC) стандард. Иако се препоручује коришћење Zabbix агента 2, можда постоје нека подешавања која не подржавају Zabbix агент 2 или захтевају прилагођени приступ.

Кључна разлика између Zabbix агента и ODBC лежи у методи прикупљања података - Zabbix агент се инсталира директно на MySQL сервер и прикупља податке користећи своју уграђену функционалност, док се ODCB ослања на ODBC драјвер да успостави везу са MySQL сервером и преузме податке помоћу SQL упита.

Иако су многи кораци конфигурације слични надгледању MySQL сервера помоћу Zabbix агента 2, постоје неке значајне разлике – потребно је да конфигуришете Zabbix агент или ODBC да бисте могли да надгледате MySQL сервер. Следећа упутства вас воде кроз ове разлике.

Монитор MySQL са Zabbix агентом

Да бисте надгледали MySQL сервер са Zabbix агентом, морате преузети и инсталирати Zabbix сервер, Zabbix кориснички интерфејс и Zabbix агент у складу са упутствима за ваш OS.

Након што сте успешно инсталирали потребне Zabbix компоненте, потребно је да креирате MySQL корисника као што је описано у одељку Креирајте MySQL корисника.

Након што сте креирали MySQL корисника, потребно је да конфигуришете Zabbix агент да може да успостави везу са MySQL сервером и да га надгледа. Ово укључује конфигурисање вишеструких корисничких параметара за извршавање прилагођених провера агента, као и обезбеђивање Zabbix агента са неопходним акредитивима за повезивање са MySQL сервером као претходно креиран "zbx_monitor" корисник.

Конфигуришите Zabbix агент

1. Идите до директоријума додатних конфигурација Zabbix агента.

cd /usr/local/etc/zabbix/zabbix_agentd.d

Директоријум додатних конфигурација Zabbix агента треба да се налази у истом директоријуму као и конфигурациона датотека вашег Zabbix агента (zabbix_agentd.conf). У зависности од вашег OS и Zabbix инсталације, овај директоријум може имати другачију локацију од оне која је наведена у овом водичу. За подразумеване локације, проверите параметар Include у конфигурационој датотеци Zabbix агента.

Уместо да дефинишете све неопходне корисничке параметре за надгледање MySQL сервера у конфигурационој датотеци Zabbix агента, ови параметри ће бити дефинисани у посебној датотеци у директоријуму додатних конфигурација.

2. Креирајте датотеку template_db_mysql.conf у директоријуму додатних конфигурација Zabbix агента.

vi template_db_mysql.conf

3. Копирајте садржај из датотеке template_db_mysql.conf (која се налази у репоси Zabbix-а ) у датотеку template_db_mysql.conf креирали сте и сачувајте.

4. Поново покрените Zabbix агент да бисте ажурирали његову конфигурацију.

systemctl restart zabbix-agent

Када конфигуришете корисничке параметре Zabbix агента, можете да пређете на конфигурисање акредитива који ће омогућити Zabbix агенту да приступи MySQL серверу.

5. Идите до матичног директоријума Заббик агента (ако не постоји на вашем систему, потребно је да га креирате; подразумевано: /var/lib/zabbix).

cd /var/lib/zabbix

6. Креирајте датотеку .my.cnf у матичном директоријуму Zabbix агента.

vi .my.cnf

7. Копирајте следећи садржај у датотеку .my.cnf (замените <password> лозинком корисника "zbx_monitor").

[client]
       user='zbx_monitor'
       password='<password>'

Конфигуришите Zabbix кориснички интерфејс и тестирајте своју конфигурацију

Да бисте конфигурисали Zabbix кориснички интерфејс, пратите упутства у одељку Конфигурација Zabbix корисничког интерфејса са следећим подешавањима:

  • У пољу Шаблони откуцајте или изаберите шаблон "MySQL за Zabbix агента" који ће бити повезан са домаћином.
  • Конфигурисање Макроа није потребно.

Када конфигуришете Zabbix кориснички интерфејс, можете погледати прикупљене метрике и подесити упозорења о проблемима.

Да бисте тестирали своју конфигурацију, пратите упутства у одељку Тестирајте своју конфигурацију са следећим подешавањима:

  • У одељку Наслеђени и макрои домаћина конфигурације домаћина MySQL сервера кликните на Промени поред вредности макроа {$MYSQL.PORT} и подесите други порт (нпр. "6033").

Надгледајте MySQL помоћу ODBC-а

Да бисте надгледали MySQL сервер помоћу ODBC-а, морате преузети и инсталирати Zabbix сервер и Zabbix кориснички интерфејс.

Након што сте успешно инсталирали потребне Zabbix компоненте, потребно је да креирате MySQL корисника као што је описано у одељку Креирајте MySQL корисника.

Након што сте креирали MySQL корисника, потребно је да подесите ODBC. Ово укључује инсталирање једне од најчешће коришћених имплементација ODBC API-ја отвореног кода – unixODBC – и unixODBC драјвера, као и уређивање конфигурационе датотеке ODBC драјвера.

Конфигуришите ODBC

1. Инсталирајте unixODBC. Предложени начин инсталирања unixODBC-а је коришћење подразумеваних спремишта пакета оперативног система Linux.

apt install unixodbc

2. Инсталирајте MariaDB unixODBC драјвер базе података. Иако имате MySQL базу података, MariaDB unixODBC драјвер се користи за проблеме компатибилности.

apt install odbc-mariadb

3. Проверите локацију ODBC конфигурационих датотека odbcinst.ini и odbc.ini.

odbcinst -j

Резултат извршавања ове команде треба да буде сличан следећем.

unixODBC 2.3.9
       DRIVERS............: /etc/odbcinst.ini
       SYSTEM DATA SOURCES: /etc/odbc.ini
       FILE DATA SOURCES..: /etc/ODBCDataSources
       ...

4. Да бисте конфигурисали ODBC драјвер за надгледање MySQL базе података, потребно вам је име драјвера које се налази у датотеци odbcinst.ini. У следећем примеру датотеке odbcinst.ini, име драјвера је "MariaDB Unicode".

[MariaDB Unicode]
       Driver=libmaodbc.so
       Description=MariaDB Connector/ODBC(Unicode)
       Threading=0
       UsageCount=1

5. Копирајте следећи садржај у датотеку odbc.ini (замените <password> лозинком корисника "zbx_monitor"). Овај водич користи "127.0.0.1" (localhost) као адресу MySQL сервера за надгледање MySQL сервера који је инсталиран на истој машини као и ODBC драјвер. Обратите пажњу на име извора података (DNS) "тест", које ће бити потребно када конфигурација Zabbix корисничког интерфејса.

[test]
       Driver=MariaDB Unicode
       Server=127.0.0.1
       User=zbx_monitor
       Password=<password>
       Port=3306
       Database=zabbix

Конфигуришите Zabbix кориснички интерфејс и тестирајте своју конфигурацију

Да бисте конфигурисали Zabbix кориснички интерфејс, пратите упутства у одељку Конфигурација Zabbix корисничког интерфејса) са следећим подешавањима:

  • У поље Шаблони откуцајте или изаберите шаблон "MySQL за ODBC" који ће бити повезан са домаћином.
  • Конфигурисање Интерфејса није потребно.
  • Вредност макроа {$MYSQL.DSN} У одељку Наслеђени и макрои домаћина конфигурације домаћина MySQL сервера треба да се подеси на DSN име из датотеке odbc.ini.

Када конфигуришете Zabbix кориснички интерфејс, можете погледајте прикупљене метрике, подесите упозорења о проблемима и тестирајте своју конфигурацију.

Види такође

  • Креирање ставке - како да почнете да надгледате додатне метрике.
  • Ескалације проблема - како да креирате сценарије упозорења у више корака (нпр. прво пошаљите поруку администратору система, а затим, ако проблем не буде решен за 45 минута, пошаљите поруку менаџеру дата центра).
  • ODBC надгледање - како да подесите ODBC на другим Linux дистрибуцијама и како да почнете да надгледате додатне метрике везане за базу података помоћу ODBC-а. – Шаблон MySQL од Zabbix агента – додатне информације о шаблону MySQL од Zabbix агента.
  • Шаблон MySQL од Zabbix агента 2 - додатне информације о MySQL од Zabbix агента 2 шаблон. – Шаблон MySQL од ODBC – додатне информације о шаблону MySQL од ODBC.