Software open source pentru LMS: cum free soft ajută la administrarea sistemelor de afaceri critice la VTB

Sistemul de suport al documentației din banca noastră este în continuă dezvoltare și scalare, iar cerințele de viteză și toleranță la erori sunt doar în creștere. La un moment dat, menținerea unui LMS fără monitorizare centralizată eficientă a devenit prea riscantă. Pentru a securiza procesele de afaceri la VTB și a simplifica munca administratorilor, am implementat o soluție bazată pe un teanc de tehnologii deschise. Cu ajutorul acestuia, putem răspunde proactiv la incidente, prevenind potențialele probleme. Mai jos este o poveste despre experiența noastră în utilizarea software-ului gratuit pentru a monitoriza sistemele de afaceri la scară largă.

Software open source pentru LMS: cum free soft ajută la administrarea sistemelor de afaceri critice la VTB

De ce să vă monitorizați sistemul de management al documentelor?

Din 2005, suportul de documentare la VTB Bank este „gestionat” de sistemul CompanyMedia. LMS are peste 60 de mii de utilizatori care creează mai mult de un milion de documente noi în fiecare lună. Serverele noastre trebuie să funcționeze 24 de ore pe zi: aproape în orice moment există 2500–3000 de oameni în sistem, care sunt conectați în toată țara, de la Petropavlovsk-Kamchatsky până la Kaliningrad. Fiecare secundă de operare LMS înseamnă 10-15 modificări.

Pentru a ne asigura că sistemul își îndeplinește cu acuratețe sarcinile atribuite, am implementat o infrastructură tolerantă la erori care utilizează servere proxy, echilibrarea solicitărilor, protecția informațiilor, căutarea full-text, rute de integrare și backup. Susținerea și administrarea unui proiect de această amploare necesită resurse enorme. Administratorii monitorizează informațiile de bază despre funcționarea serverului, încărcarea RAM, timpul procesorului, subsistemul I/O și așa mai departe non-stop. Dar, pe lângă aceasta, sunt necesare analize mai subtile:

  • calcularea timpului alocat executării scenariilor de afaceri;
  • monitorizarea dinamicii performanței sistemului și încărcarea acestuia;
  • căutarea abaterilor în componentele sistemului de la cerințele nefuncționale aprobate.

La 11 ani de la introducerea LMS, problema răspunsului proactiv la diferite tipuri de erori a devenit deosebit de acută. Conducerea băncii și-a dat seama că lucrul fără monitoare și o consolă de viață a sistemului era jucat cu focul: cel mai mic eșec într-un sistem de afaceri de acest nivel putea duce la pierderi de milioane.

În 2016, am început să introducem instrumente pentru identificarea rapidă a problemelor în funcționarea LMS, inclusiv monitorizarea parametrilor de interes pentru noi în timp real. Anterior, sistemul de monitorizare aplicat a fost implementat și testat în cadrul infrastructurii companiei InterTrust.

Cum a început totul

Astăzi, sistemul centralizat de monitorizare a aplicațiilor VTB LMS, bazat pe produse software open source, ajută la prevenirea majorității erorilor asociate fluxului de documente, la clasificarea rapidă și precisă a problemelor și la răspuns prompt la orice incidente. Acesta include două subsisteme:

  • pentru monitorizarea infrastructurii IT a serviciilor de sistem;
  • pentru a monitoriza apariția erorilor în funcționarea LMS.

Totul a început cu o singură aplicație de monitorizare gratuită. După ce am trecut prin mai multe opțiuni, ne-am stabilit pe Zabbix - software gratuit care a fost scris inițial pentru servicii și echipamente bancare. Acest sistem PHP bazat pe web, care poate stoca date în MySQL, PostgreSQL, SQLite sau Oracle Database, a fost perfect pentru nevoile noastre.

Zabbix își rulează agenții pe fiecare server și colectează informații despre valorile de interes în timp real într-o singură bază de date. Folosind aplicația, este convenabil să colectați date despre încărcarea procesoarelor și RAM, despre utilizarea rețelei și a altor componente, să verificați disponibilitatea și răspunsul serviciilor standard (SMTP sau HTTP), să rulați programe externe și să susțineți monitorizarea prin SNMP.

După ce am implementat Zabbix, am configurat valorile hardware standard și la început acest lucru a fost suficient. Dar VTB SDO se dezvoltă și crește în mod constant: în 2016, numărul de servere a crescut considerabil, au apărut procesele de migrare, Banca din Moscova, VTB Capital și VTB24 s-au alăturat sistemului. Nu mai există suficiente valori standard și l-am învățat pe Zabbix să urmărească informații despre prezența cozilor pe fiecare dintre volumele conectate la server (Zabbix din cutie reflectă doar coada generală de disc), precum și timpul necesar pentru a finaliza o anumită procedură.

Software open source pentru LMS: cum free soft ajută la administrarea sistemelor de afaceri critice la VTB

În plus, am echipat sistemul cu declanșatoare multiple - condiții în care se trimite o notificare către administrator (un mesaj în Telegram, un SMS la un număr de telefon sau un e-mail). Declanșatoarele pot fi configurate pentru orice set de parametri. De exemplu, puteți specifica un anumit procent din spațiul liber pe disc, iar sistemul va alerta administratorul când este atins pragul specificat sau vă va informa dacă o procedură de fundal rulează mai mult decât de obicei.

Conectivitate Java și vizualizare a datelor

Am extins semnificativ gama de date analizate, dar în curând acest lucru nu a fost suficient pentru o monitorizare eficientă. Profitând de faptul că LMS-ul CompanyMedia este o aplicație Java, ne-am conectat la Java Virtual Machine prin interfața JMX și am reușit să luăm direct metrics Java. Și nu doar parametri standard ai activității vitale Java, cum ar fi intensitatea muncii GC sau consumul Heap, ci și teste specifice legate direct de codul aplicației executabile.

Software open source pentru LMS: cum free soft ajută la administrarea sistemelor de afaceri critice la VTB

În 2017, la aproximativ un an de la implementarea sistemului de monitorizare, a devenit clar că pentru a funcționa normal cu cantitatea colosală de date culese în Zabbix, nu a existat suficientă vizualizare - ecrane complexe. Cea mai bună soluție la această problemă a fost din nou software-ul gratuit - Grafana, un tablou de bord convenabil pentru valori care vă permite să agregați toate datele pe un singur ecran.

Software open source pentru LMS: cum free soft ajută la administrarea sistemelor de afaceri critice la VTB

Interfața Grafana este interactivă, amintește de un sistem OLAP. Subsistemul afișează datele primite de Zabbix pe un singur ecran, prezentând informațiile sub formă de grafice și diagrame ușor de analizat. Administratorul poate personaliza cu ușurință feliile de care are nevoie.

Software open source pentru LMS: cum free soft ajută la administrarea sistemelor de afaceri critice la VTB

Monitorizarea și eliminarea preventivă a erorilor din sistemul LMS

Platforma software cu sursă deschisă ELK vă ajută să filtrați și să analizați informațiile primite în timpul monitorizării. Acest produs opensource constă din trei instrumente puternice pentru colectarea, stocarea și analiza datelor: Elasticsearch, Logstash și Kibana. Implementarea acestui subsistem permite, în special, să vedem în timp real câte erori au apărut în sistem, pe ce servere și dacă aceste erori se repetă.

Software open source pentru LMS: cum free soft ajută la administrarea sistemelor de afaceri critice la VTB

Acum, administratorul poate detecta o problemă într-un stadiu incipient, chiar înainte ca utilizatorul să o întâlnească. O astfel de monitorizare proactivă vă permite să preveniți defecțiunile sistemului prin eliminarea erorilor în timp util. În plus, putem înțelege cum s-a schimbat comportamentul sistemului după actualizare, precum și putem detecta noi probleme dacă apar.

Software open source pentru LMS: cum free soft ajută la administrarea sistemelor de afaceri critice la VTB

Monitorizarea operațiunilor de afaceri

Pe lângă funcțiile de bază de monitorizare a consumului de resurse, sistemul are capacitatea de a analiza și controla operațiunile de afaceri.

Software open source pentru LMS: cum free soft ajută la administrarea sistemelor de afaceri critice la VTB

Monitorizarea timpului general de execuție al operațiunilor de afaceri vă permite să identificați noi factori și să înțelegeți impactul pe care aceștia îl au asupra funcționării sistemului.

Software open source pentru LMS: cum free soft ajută la administrarea sistemelor de afaceri critice la VTB

Monitorizarea timpului de executare a cererilor pentru fiecare serviciu de business face posibilă detectarea operațiunilor care se abat de la normă.

Software open source pentru LMS: cum free soft ajută la administrarea sistemelor de afaceri critice la VTB

Captura de ecran de mai sus este un exemplu de monitorizare a unei sarcini de fundal în ceea ce privește abaterea acesteia de la normă.

Software open source pentru LMS: cum free soft ajută la administrarea sistemelor de afaceri critice la VTB

Lista sarcinilor controlate în ceea ce privește activitatea lor pe un anumit server vă permite să identificați erorile - inclusiv duplicarea execuției sarcinilor - pe toate serverele.

Software open source pentru LMS: cum free soft ajută la administrarea sistemelor de afaceri critice la VTB

Sunt de asemenea monitorizate tendințele în timpul de execuție a procedurilor de fundal.

Sistemul crește, se dezvoltă și ajută la rezolvarea problemelor

Odată cu implementarea sistemului descris, monitorizarea funcționării serverelor LMS a devenit semnificativ simplificată. Cu toate acestea, din când în când apar diverse tipuri de conflicte, care afectează viteza fluxului de documente și provoacă plângeri ale utilizatorilor. Așa că ne-am dat seama că este necesar să controlăm comportamentul aplicației în sine, și nu doar al serverelor.

Pentru a rezolva această problemă, un echilibrator a fost conectat la sistemul de monitorizare prin API, care funcționează cu un cluster de servere de aplicații. Datorită acestui lucru, administratorul poate vedea cât timp îi ia serverului să răspundă la fiecare solicitare a utilizatorului.

Datele privind timpul de răspuns al serverului au devenit disponibile pentru analiză, ceea ce a făcut posibilă legarea încetinirii LMS-ului cu procesele care au loc pe server. În special, a apărut o situație interesantă: serverul rulează lent, deși în acest moment nu este încărcat. Analizând anomalia, am descoperit abateri în funcționarea Garbage Collector Java. În cele din urmă, s-a dovedit că funcționarea incorectă a acestui serviciu a dus la această situație. Prin preluarea controlului asupra Garbage Collector Java, am eliminat complet problema.

Acesta este modul în care software-ul liber ajută sistemul de management al documentelor din industria bancară să se dezvolte și să crească. Am atins doar principalele probleme legate de sistemul de monitorizare VTB SDO. Dacă sunteți interesat de detalii, întrebați în comentarii, vom fi bucuroși să vă împărtășim experiența noastră.

Sursa: www.habr.com

Adauga un comentariu