Zabbix – monitorizare XMR-STACK

Ca să nu am grija rig-ului de minat criptomonede construit recent, am ales să îl monitorizez de la distanță folosind Zabbix – pe care îl aveam deja instalat și configurat pe un server. Nu aveți nevoie de mai mut de 4 pași pentru a face asta:

  1. Activați serverul web inclus în XMR-STACK prin modificarea în fișierul config.txt a opțiunii httpd_port, completând în loc de zero portul dorit. Eu am ales portul 89:
  2. Indentificați în fișierul de configurare a serverul zabbix care este directorul de unde se execută scripturile pentru comenzi externe (opțiunea ExternalScripts):
  3. În directorul respectiv (în cazul meu /usr/local/etc/zabbix34/zabbix/externalscripts/) va trebui să puneți următoarele fișiere verifica-xmr-shares-good.sh, verifica-xmr-shares-total.shverifica-xmr-hashrate.sh care vor avea conținutul de mai jos și acordam permisiuni de execuție (chmod a+x):
  4. Importați template-ul XMR-STACK pentru Zabbix pe care l-am creat eu ( Template_XMR-STACK (650 downloads ) ) , configurați în Macros variabila {$API_PORT} pentru a fi conformă cu portul prin care se realizează conexiunea spre rig-ul de minat și nu uitați să configurați în ZabbixConfigurationHosts datele hostului (rig-ului) pe care doriți să îl monitorizați și la care ii definiți să folosească și acest template. Dacă este cazul, faceți setarile necesare în ConfigurationActions pentru a fi notificați prin diverse metode la declanșarea trigerilor.

Acest template pe care l-am creat în fugă are definite: o aplicație, 4 item-uri, 4 trigere, 2 grafice, un ecran și un scenariu web.

Cele 4 item-uri sunt:

  • Hashrate – citește datele o dată la fiecare minut și oferă informatii despre media la 60 de secunde a hashrate-ului total obținut de rig;
  • Rezultate bune – citește datele o dată  la fiecare minut și indică numărul total de rezultate considerate bune – acceptate de către pool;
  • Rezultate totale – citește datele o dată  la fiecare minut și indică numărul total de rezultate, inclusiv cele respinse de catre pool;
  • XMR HTTP – la fiecare minut încearcă sa realizeze conexiune TCP pe portul definit în anterior și returnează 1 dacă reușește conexiunea și 0 dacă nu.

Graficele definite în acest template pentru Zabbix care monitorizează XMR-STACK sunt:

  • Hashrate – afișează evoluția în timp a hashrate-ului raportat de către XMR-STACK
  • Rezultate – afișeaza pe acelasi grafic rezultatele totale și rezultate bune raportate de către XMR-STACK

Ecranul (Screen) definit conține cele două grafice.

Scenariul web rulează la fiecare 5 minute și conține un singur pas care așteaptă să găseasca string-ul „XMR-Stak Monero Miner” și codul returnat să fie 200 (OK).

Plecănd de la item-uri și scenariu web, am creat cele 4 trigere:

  • Cod raspuns scenariu WEB API – se activează dacă codul returnat este diferit de 200
  • Rezultate buna nemodificate – se activează dacă numărul rezultatelor bune nu s-a modificat (crescut) în ultimele 10 minute – consider că acest lucru poate indica o problemă, un eventual blocaj și am ales să fiu notificat despre acest lucru;
  • Rezultate buna nemodificate – la fel ca mai sus, dar valoarea luată în calcul este cea a rezultatelor totale
  • XMR-HTTP – se activează dacă nu se reusesc 3 conectări succesive la serviciul web al XMR-STACK

Folosind aceste lucruri, graficele trasate de zabbix legate de monitorizarea XMR-STACK arată așa:

  • Hashrate
  • Rezultate

Pe partea de monitorizare web, graficele arată așa:

Notificările privind eventualele probleme îmi sunt transmise atât prin email, cât și prin SM, astfel încât pot interveni de îndată în caz de necesitate. Plecând de la acest template, pot fi monitorizate mult mai multe valori și aspecte ale funcționării XMR-STACK, iar cele 3 script-uri pot fi unite în unul singur și transmiterea unui parametru care să indice cheia din fișierul JSON a cărei valoare dorim să o citim.

 

 

Articole asemanatoare:

Bogdan Turcanu

Bogdan Turcanu

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *

Acest site folosește Akismet pentru a reduce spamul. Află cum sunt procesate datele comentariilor tale.