4. Monitor MySQL with Zabbix agent 2
Ievads
Šajā lapā ir aprakstītas darbības, kas nepieciešamas, lai sāktu MySQL servera pamata uzraudzību.
Lai uzraudzītu MySQL serveri, ir pieejamas vairākas pieejas: Zabbix aģents, Zabbix aģents 2 vai Open Database Connectivity (ODBC) standarts. Šīs rokasgrāmatas galvenais uzsvars ir uz MySQL servera uzraudzību ar Zabbix aģentu 2, kas ir ieteicamā pieeja, pateicoties tās vienkāršajai konfigurēšanai dažādās vidēs. Tomēr šajā lapā ir sniegtas arī instrukcijas par citām pieejām, tāpēc droši izvēlieties to, kas vislabāk atbilst jūsu prasībām.
Kam šī rokasgrāmata ir paredzēta
Šī rokasgrāmata ir paredzēta jauniem Zabbix lietotājiem un ietver minimālo darbību kopumu, kas nepieciešams, lai iespējotu MySQL servera pamata uzraudzību. Ja meklējat padziļinātas pielāgošanas iespējas vai jums nepieciešama sarežģītāka konfigurācija, skatiet Zabbix rokasgrāmatas sadaļu Configuration.
Priekšnosacījumi
Pirms turpināt ar šo ceļvedi, jums ir jālejupielādē un jāinstalē Zabbix serveris, Zabbix lietotāja saskarne un Zabbix aģents 2 saskaņā ar jūsu OS paredzētajām instrukcijām.
Atkarībā no jūsu vides daži šajā ceļvedī aprakstītie soļi var nedaudz atšķirties. Šis ceļvedis ir balstīts uz vidi, kurā darbojas Ubuntu.
Izveidojiet MySQL lietotāju
Lai uzraudzītu MySQL serveri, Zabbix ir nepieciešama piekļuve tam un tā procesiem. Jūsu MySQL instalācijā jau ir lietotājs ar nepieciešamo piekļuves līmeni (lietotājs "zabbix", kas tika izveidots Zabbix instalēšanas laikā), tomēr šim lietotājam ir vairāk privilēģiju, nekā nepieciešams vienkāršai uzraudzībai (privilēģijas DROP datubāzēm, DELETE ierakstu dzēšanai no tabulām u.c.). Tāpēc ir jāizveido MySQL lietotājs, kas paredzēts tikai MySQL servera uzraudzībai.
1. Pieslēdzieties MySQL klientam, izveidojiet lietotāju "zbx_monitor" (aizstājiet <password> lietotājam "zbx_monitor" ar pašu izvēlētu paroli) un piešķiriet lietotājam nepieciešamās GRANT privilēģijas:
mysql -u root -p
# Enter password:
mysql> CREATE USER 'zbx_monitor'@'%' IDENTIFIED BY '<password>';
mysql> GRANT REPLICATION CLIENT,PROCESS,SHOW DATABASES,SHOW VIEW ON *.* TO 'zbx_monitor'@'%';
mysql> quit;
Kad lietotājs ir izveidots, varat pāriet pie nākamā soļa.
Zabbix lietotāja saskarnes konfigurēšana
1. Piesakieties Zabbix lietotāja saskarnē.
2. Izveidojiet hostu Zabbix tīmekļa saskarnē:
- Laukā Host name ievadiet hosta nosaukumu (piem., "MySQL server").
- Laukā Templates ievadiet vai atlasiet veidni "MySQL by Zabbix agent 2", kas tiks saistīta ar hostu.
- Laukā Host groups ievadiet vai atlasiet hostu grupu (piem., "Databases").
- Laukā Interfaces pievienojiet saskarni ar tipu "Agent" un norādiet sava MySQL servera IP adresi. Šajā rokasgrāmatā MySQL servera, kas ir instalēts tajā pašā datorā, kur Zabbix serveris un Zabbix aģents 2, uzraudzībai tiek izmantots "127.0.0.1" (localhost).

- Cilnē Macros pārslēdzieties uz Inherited and host macros, atrodiet tālāk norādītos makro un noklikšķiniet uz Change blakus makro vērtībai, lai to atjauninātu:
- {$MYSQL.DSN} - iestatiet MySQL servera datu avotu (MySQL Zabbix aģents 2 spraudņa konfigurācijas failā norādīto nosauktās sesijas savienojuma virkni). Šajā rokasgrāmatā MySQL servera, kas ir instalēts tajā pašā datorā, kur Zabbix serveris un Zabbix aģents 2, uzraudzībai tiek izmantots noklusējuma datu avots "tcp://localhost:3306".
- {$MYSQL.PASSWORD} - iestatiet iepriekš izveidotā MySQL lietotāja "zbx_monitor" paroli.
- {$MYSQL.USER} - iestatiet iepriekš izveidotā MySQL lietotāja "zbx_monitor" nosaukumu.

3. Noklikšķiniet uz Add, lai pievienotu hostu. Šis hosts attēlos jūsu MySQL serveri.
Skatīt savāktos metriku datus
Apsveicam! Šajā brīdī Zabbix jau uzrauga jūsu MySQL serveri.
Lai skatītu savāktos metriku datus, dodieties uz izvēlnes sadaļu Uzraudzība → Hosti un noklikšķiniet uz Paneļi blakus hostam.

Šī darbība jūs novirzīs uz hosta paneli (konfigurētu veidnes līmenī), kurā redzami svarīgākie no MySQL servera savāktie metriku dati.

Alternatīvi, izvēlnes sadaļā Uzraudzība → Hosti varat noklikšķināt uz Jaunākie dati, lai sarakstā skatītu visus jaunākos savāktos metriku datus. Ņemiet vērā, ka vienumam MySQL: Calculated value of innodb_log_file_size nav paredzami dati, jo vērtība tiks aprēķināta no pēdējās stundas datiem.

Iestatiet problēmu brīdinājumus
Zabbix var paziņot jums par problēmu jūsu infrastruktūrā, izmantojot dažādas metodes. Šajā rokasgrāmatā ir sniegti pamata konfigurācijas soļi e-pasta brīdinājumu nosūtīšanai.
1. Dodieties uz Lietotāja iestatījumi → Profils, pārslēdzieties uz Media cilni un pievienojiet savu e-pastu.

2. Izpildiet rokasgrāmatu par problēmas paziņojuma saņemšanu.
Nākamreiz, kad Zabbix noteiks problēmu, jums vajadzētu saņemt brīdinājumu pa e-pastu.
Pārbaudiet savu konfigurāciju
Lai pārbaudītu savu konfigurāciju, mēs varam simulēt reālu problēmu, atjauninot hosta konfigurāciju Zabbix lietotāja saskarnē.
1. Atveriet sava MySQL servera hosta konfigurāciju Zabbix.
2. Pārslēdzieties uz cilni Macros un atlasiet Inherited and host macros.
3. Noklikšķiniet uz Change blakus, piemēram, iepriekš konfigurētajai} makro vērtībai un iestatiet citu MySQL lietotājvārdu.
4. Noklikšķiniet uz Update, lai atjauninātu hosta konfigurāciju.
5. Pēc dažiem mirkļiem Zabbix noteiks problēmu "MySQL: Service is down", jo tas nevarēs izveidot savienojumu ar MySQL serveri. Problēma parādīsies sadaļā Monitoring → Problems.

Ja brīdinājumi ir konfigurēti, jūs saņemsiet arī problēmas paziņojumu.
6. Mainiet makro vērtību atpakaļ uz iepriekšējo vērtību, lai novērstu problēmu un turpinātu MySQL servera uzraudzību.
Citas pieejas MySQL uzraudzībai
Tā vietā, lai uzraudzītu MySQL serveri ar Zabbix aģents 2, varat izmantot arī Zabbix aģents vai Open Database Connectivity (ODBC) standartu. Lai gan ir ieteicams izmantot Zabbix aģents 2, var būt konfigurācijas, kas neatbalsta Zabbix aģents 2 vai kurām nepieciešama pielāgota pieeja.
Galvenā atšķirība starp Zabbix aģents un ODBC ir datu ievākšanas metodē — Zabbix aģents tiek instalēts tieši MySQL serverī un ievāc datus, izmantojot tā iebūvēto funkcionalitāti, savukārt ODBC izmanto ODBC draiveri, lai izveidotu savienojumu ar MySQL serveri un iegūtu datus, izmantojot SQL vaicājumus.
Lai gan daudzi konfigurācijas soļi ir līdzīgi MySQL servera uzraudzībai ar Zabbix aģents 2, pastāv dažas būtiskas atšķirības — jums jākonfigurē Zabbix aģents vai ODBC, lai varētu uzraudzīt MySQL serveri. Tālāk sniegtās instrukcijas izskaidro šīs atšķirības.
MySQL uzraudzība ar Zabbix aģentu
Lai uzraudzītu MySQL serveri ar Zabbix aģentu, jums ir jālejupielādē un jāinstalē Zabbix serveris, Zabbix lietotāja saskarne un Zabbix aģents saskaņā ar jūsu OS paredzētajām instrukcijām.
Kad esat veiksmīgi instalējis nepieciešamos Zabbix komponentus, jums ir jāizveido MySQL lietotājs, kā aprakstīts sadaļā MySQL lietotāja izveide.
Pēc MySQL lietotāja izveides jums ir jākonfigurē Zabbix aģents, lai tas varētu izveidot savienojumu ar MySQL serveri un to uzraudzīt. Tas ietver vairāku lietotāja parametru konfigurēšanu pielāgotu aģenta pārbaužu izpildei, kā arī nepieciešamo akreditācijas datu nodrošināšanu Zabbix aģentam, lai tas varētu izveidot savienojumu ar MySQL serveri, izmantojot iepriekš izveidoto lietotāju "zbx_monitor".
Konfigurēt Zabbix aģentu
1. Dodieties uz Zabbix aģenta papildu konfigurāciju direktoriju.
cd /usr/local/etc/zabbix/zabbix_agentd.d
Zabbix aģenta papildu konfigurāciju direktorijam jāatrodas tajā pašā direktorijā, kur ir jūsu Zabbix aģenta konfigurācijas fails (zabbix_agentd.conf).
Atkarībā no jūsu OS un Zabbix instalācijas šī direktorija atrašanās vieta var atšķirties no šajā rokasgrāmatā norādītās.
Noklusējuma atrašanās vietas skatiet Zabbix aģenta konfigurācijas faila Include parametrā.
Tā vietā, lai Zabbix aģenta konfigurācijas failā definētu visus nepieciešamos lietotāja parametrus MySQL servera uzraudzībai, šie parametri tiks definēti atsevišķā failā papildu konfigurāciju direktorijā.
2. Izveidojiet failu template_db_mysql.conf Zabbix aģenta papildu konfigurāciju direktorijā.
vi template_db_mysql.conf
3. Nokopējiet saturu no faila template_db_mysql.conf (kas atrodas Zabbix repozitorijā) uz jūsu izveidoto failu template_db_mysql.conf un saglabājiet to.
4. Pārstartējiet Zabbix aģentu, lai atjauninātu tā konfigurāciju.
systemctl restart zabbix-agent
Kad esat konfigurējis Zabbix aģenta lietotāja parametrus, varat turpināt ar akreditācijas datu konfigurēšanu, kas ļaus Zabbix aģentam piekļūt MySQL serverim.
5. Pārejiet uz Zabbix aģents mājas direktoriju (ja tā jūsu sistēmā nepastāv, tā ir jāizveido; noklusējums: /var/lib/zabbix).
cd /var/lib/zabbix
6. Izveidojiet .my.cnf failu Zabbix aģents mājas direktorijā.
vi .my.cnf
7. Iekopējiet tālāk norādīto saturu failā .my.cnf (aizstājiet <password> ar lietotāja "zbx_monitor" paroli).
[client]
user='zbx_monitor'
password='<password>'
Konfigurējiet Zabbix lietotāja saskarni un pārbaudiet savu konfigurāciju
Lai konfigurētu Zabbix lietotāja saskarni, izpildiet norādījumus sadaļā Configure Zabbix frontend, veicot šādas izmaiņas:
- Laukā Templates ierakstiet vai atlasiet veidni "MySQL by Zabbix agent", kas tiks saistīta ar hostu.
- Macros konfigurēšana nav nepieciešama.
Kad esat konfigurējis Zabbix lietotāja saskarni, varat skatīt savāktos metriku datus un iestatīt problēmu brīdinājumus.
Lai pārbaudītu savu konfigurāciju, izpildiet norādījumus sadaļā Test your configuration, veicot šādas izmaiņas:
- MySQL servera hosta konfigurācijas sadaļā Inherited and host macros noklikšķiniet uz Change blakus makrosa {$MYSQL.PORT} vērtībai un iestatiet citu portu (piemēram, "6033").

MySQL uzraudzība ar ODBC
Lai uzraudzītu MySQL serveri ar ODBC, jums ir jālejupielādē un jāinstalē Zabbix serveris un Zabbix lietotāja saskarne.
Kad esat veiksmīgi instalējis nepieciešamos Zabbix komponentus, jums ir jāizveido MySQL lietotājs, kā aprakstīts sadaļā MySQL lietotāja izveide.
Pēc MySQL lietotāja izveides jums ir jākonfigurē ODBC.
Tas ietver vienas no visbiežāk izmantotajām atvērtā pirmkoda ODBC API implementācijām — unixODBC — un unixODBC draivera instalēšanu, kā arī ODBC draivera konfigurācijas faila rediģēšanu.
ODBC konfigurēšana
1. Instalējiet unixODBC. Ieteicamais unixODBC instalēšanas veids ir izmantot Linux operētājsistēmas noklusējuma pakotņu repozitorijus.
apt install unixodbc
2. Instalējiet MariaDB unixODBC datubāzes draiveri. Lai gan jums ir MySQL datubāze, saderības apsvērumu dēļ tiek izmantots MariaDB unixODBC draiveris.
apt install odbc-mariadb
3. Pārbaudiet ODBC konfigurācijas failu odbcinst.ini un odbc.ini atrašanās vietu.
odbcinst -j
Šīs komandas izpildes rezultātam jābūt līdzīgam šādam.
unixODBC 2.3.9
DRIVERS............: /etc/odbcinst.ini
SYSTEM DATA SOURCES: /etc/odbc.ini
FILE DATA SOURCES..: /etc/ODBCDataSources
...
4. Lai konfigurētu ODBC draiveri MySQL datubāzes uzraudzībai, jums ir nepieciešams draivera nosaukums, kas atrodas failā odbcinst.ini. Tālāk redzamajā odbcinst.ini faila piemērā draivera nosaukums ir "MariaDB Unicode".
[MariaDB Unicode]
Driver=libmaodbc.so
Description=MariaDB Connector/ODBC(Unicode)
Threading=0
UsageCount=1
5. Iekopējiet tālāk norādīto saturu failā odbc.ini (aizstājiet <password> ar lietotāja "zbx_monitor" paroli). Šajā rokasgrāmatā tiek izmantota "127.0.0.1" (localhost) kā MySQL servera adrese, lai uzraudzītu MySQL serveri, kas ir instalēts tajā pašā datorā, kur ODBC draiveris. Pievērsiet uzmanību datu avota nosaukumam (DSN) "test", kas būs nepieciešams, kad konfigurēsiet Zabbix lietotāja saskarne.
[test]
Driver=MariaDB Unicode
Server=127.0.0.1
User=zbx_monitor
Password=<password>
Port=3306
Database=zabbix
Konfigurējiet Zabbix lietotāja saskarni un pārbaudiet savu konfigurāciju
Lai konfigurētu Zabbix lietotāja saskarni, izpildiet norādījumus sadaļā Konfigurēt Zabbix lietotāja saskarni, veicot šādas izmaiņas:
- Laukā Templates ierakstiet vai atlasiet veidni "MySQL by ODBC", kas tiks saistīta ar hostu.
- Interfaces konfigurēšana nav nepieciešama.
- MySQL servera hosta konfigurācijas sadaļā Inherited and host macros makro {$MYSQL.DSN} vērtībai jābūt iestatītai uz DSN nosaukumu no odbc.ini faila.
Kad esat konfigurējis Zabbix lietotāja saskarni, varat skatīt savāktos metriku datus, iestatīt problēmu brīdinājumus un pārbaudīt savu konfigurāciju.
Skatīt arī
- Vienuma izveide - kā sākt uzraudzīt papildu metriku.
- Problēmu eskalācijas - kā izveidot vairāku soļu brīdinājumu scenārijus (piem., vispirms nosūtīt ziņojumu sistēmas administratoram, pēc tam, ja problēma netiek atrisināta 45 minūšu laikā, nosūtīt ziņojumu datu centra vadītājam).
- ODBC uzraudzība - kā iestatīt ODBC citos Linux distributīvos un kā sākt uzraudzīt papildu ar datubāzi saistītus metriku ar ODBC.
- Veidne MySQL by Zabbix aģents - papildu informācija par MySQL by Zabbix aģents veidni.
- Veidne MySQL by Zabbix aģents 2 - papildu informācija par MySQL by Zabbix aģents 2 veidni.
- Veidne MySQL by ODBC - papildu informācija par MySQL by ODBC veidni.