Daugelio įmonių IT infrastruktūros nebūtų galima įsivaizduoti be kažkokios IT infrastruktūros stebėjimo programinės įrangos. Nes tai yra neatsiejama dalis, užtikrinant nepertraukiamą IT sistemų veikimą, bei pagalbinį įrankį, padedantį diegnozuoti iškylančias ar iškilsiančias problemas. Tokio tipo programinių paketų yra nemažai ir kaip visada yra riktis pagal verslo poreikius ar finansines galimybes. Tačiau daugeliu atveju pastebima tendencija, tarp IT paslaugas teikiančių ar didesnių verslo įmonių, pasirenkamas atviro kodo programinis paketas Zabbix. Jis yra nemokamas, tačiau esant poreikiui ir turint biudžetą galima įsigyti verslui skirtą versiją.
Tačiau šį kartą aprašysime tik Zabbix stebėjimo programėlės diegimą, į egzistuojančią sistemą su tokia pat programėle. Aprašysime kaip tai atlikti Linux operacinėje sistemoje, kaip visada konkrečiau RedHat/CentOS.
Pirmiausia patikriname ar Zabbix klientas yra įdiegtas.
systemctl status zabbix-agent
● zabbix-agent.service - Zabbix Agent
Loaded: loaded (/usr/lib/systemd/system/zabbix-agent.service; enabled; vendor preset: disabled)
Active: active (running) since Thu 2020-05-21 15:13:59 EEST; 4 weeks 0 days ago
Main PID: 13088 (zabbix_agentd)
CGroup: /system.slice/zabbix-agent.service
├─13088 /usr/sbin/zabbix_agentd -c /etc/zabbix/zabbix_agentd.conf
├─13089 /usr/sbin/zabbix_agentd: collector [idle 1 sec]
├─13090 /usr/sbin/zabbix_agentd: listener #1 [waiting for connection]
├─13091 /usr/sbin/zabbix_agentd: listener #2 [waiting for connection]
└─13092 /usr/sbin/zabbix_agentd: listener #3 [waiting for connection]
Iš matomos mūsų sistemoje jau veikia vienas Zabbix stebėjimo klientas. Pagal reikalavimus, paleisime dar vieną.
Kopijuojame nustatymų zabbix_agentd.conf failą.
cp /etc/zabbix/zabbix_agentd.conf /etc/zabbix/zabbix_agentd2.conf
Redaguojame mūsų sukurtą
vim /etc/zabbix/zabbix_agentd2.conf
# Keiciame serverio IP adresa pagal reikalavimus
Server="10.10.100.200"
# Keiciame kliento tinklo prievada i 10051, nes pirmasis Zabbix jau naudoja 10050
ListenPort= "10051"
# Nurodome kita PID faila zabbix_agentd2.pid
PidFile=/var/run/zabbix-agent/zabbix_agentd2.pid
Sukuriame PID failą priskiriame teises.
touch /run/zabbix/zabbix_agentd2.pid
chown zabbix:zabbix /run/zabbix/zabbix_agentd2.pid
chmod -R 775 /var/run/zabbix/
Mūsų sistema maudoja SystemD, todėl sukursime servisą zabbix-agent2.service, kuris paleidžia ir valdo kitą mūsų Zabbix klientą sistemoje.
vim /etc/systemd/system/zabbix-agent2.service
[Unit]
Description=Zabbix Agent2
After=syslog.target
After=network.target
[Service]
Environment="CONFFILE=/etc/zabbix/zabbix_agentd2.conf"
EnvironmentFile=-/etc/sysconfig/zabbix-agent
Type=forking
Restart=on-failure
PIDFile=/run/zabbix/zabbix_agentd2.pid
KillMode=control-group
ExecStart=/usr/sbin/zabbix_agentd -c $CONFFILE
ExecStop=/bin/kill -SIGTERM $MAINPID
RestartSec=10s
User=zabbix
Group=zabbix
[Install]
WantedBy=multi-user.target
Ir tuo pačiu reikia sukurti įvykių žurnalo periodinį išvalymo procesą, mūsų sukurtam servisui.
vim /etc/logrotate.d/zabbix-agent2
/var/log/zabbix/zabbix_agentd2.log {
weekly
rotate 12
compress
delaycompress
missingok
notifempty
create 0664 zabbix zabbix
}
Jei viskas yra atlikta, leidžiame.
systemctl start zabbix-agent2
Tikriname ar veikia.
systemctl status zabbix-agent2
● zabbix-agent2.service - Zabbix Agent2
Loaded: loaded (/etc/systemd/system/zabbix-agent2.service; enabled; vendor preset: disabled)
Active: active (running) since Fri 2020-06-19 14:29:16 EEST; 5s ago
Process: 15011 ExecStop=/bin/kill -SIGTERM $MAINPID (code=exited, status=0/SUCCESS)
Process: 15013 ExecStart=/usr/sbin/zabbix_agentd -c $CONFFILE (code=exited, status=0/SUCCESS)
Main PID: 15015 (zabbix_agentd)
CGroup: /system.slice/zabbix-agent2.service
├─15015 /usr/sbin/zabbix_agentd -c /etc/zabbix/zabbix_agentd2.conf
├─15016 /usr/sbin/zabbix_agentd: collector [idle 1 sec]
├─15017 /usr/sbin/zabbix_agentd: listener #1 [waiting for connection]
├─15018 /usr/sbin/zabbix_agentd: listener #2 [waiting for connection]
└─15019 /usr/sbin/zabbix_agentd: listener #3 [waiting for connection]
Matome, kad veikia. Įgaliname servisą, kad veiktų ir po sistemos perkrovimo.
systemctl enable zabbix-agent2