Atvērtā pirmkoda programmatūra LMS: kā bezmaksas programmatūra palīdz pārvaldīt kritiskās biznesa sistēmas VTB

Dokumentācijas atbalsta sistēma mÅ«su bankā pastāvÄ«gi attÄ«stās un mērogojas, un prasÄ«bas ātrumam un kļūdu pielaidei tikai pieaug. Kādā brÄ«dÄ« LMS uzturÄ“Å”ana bez efektÄ«vas centralizētas uzraudzÄ«bas kļuva pārāk riskanti. Lai nodroÅ”inātu VTB biznesa procesus un vienkārÅ”otu administratoru darbu, mēs ieviesām risinājumu, kura pamatā ir atvērto tehnoloÄ£iju kaudze. Ar tās palÄ«dzÄ«bu mēs varam proaktÄ«vi reaģēt uz incidentiem, novērÅ”ot iespējamās problēmas. Zem griezuma ir stāsts par mÅ«su pieredzi, izmantojot bezmaksas programmatÅ«ru liela mēroga biznesa sistēmu uzraudzÄ«bai.

Atvērtā pirmkoda programmatūra LMS: kā bezmaksas programmatūra palīdz pārvaldīt kritiskās biznesa sistēmas VTB

Kāpēc uzraudzīt savu dokumentu pārvaldības sistēmu?

KopÅ” 2005. gada dokumentācijas atbalstu VTB bankā ā€œpārvaldaā€ sistēma CompanyMedia. LMS nodarbina vairāk nekā 60 tÅ«kstoÅ”us lietotāju, kuri katru mēnesi izveido vairāk nekā miljonu jaunu dokumentu. MÅ«su serveriem jādarbojas 24 stundas diennaktÄ«: gandrÄ«z jebkurā brÄ«dÄ« sistēmā ir 2500ā€“3000 cilvēku, kuri ir savienoti visā valstÄ«, no Petropavlovskas-Kamčatskas lÄ«dz Kaļiņingradai. Katra LMS darbÄ«bas sekunde nozÄ«mē 10ā€“15 izmaiņas.

Lai nodroÅ”inātu, ka sistēma precÄ«zi izpilda tai uzticētos uzdevumus, esam izvietojuÅ”i defektu tolerantu infrastruktÅ«ru, izmantojot starpniekserverus, pieprasÄ«jumu balansÄ“Å”anu, informācijas aizsardzÄ«bu, pilna teksta meklÄ“Å”anu, integrācijas marÅ”rutus un dublÄ“Å”anu. Lai atbalstÄ«tu un pārvaldÄ«tu Ŕāda mēroga projektu, ir nepiecieÅ”ami milzÄ«gi resursi. Administratori visu diennakti uzrauga pamatinformāciju par servera darbÄ«bu, RAM slodzi, CPU laiku, I/O apakÅ”sistēmu un tā tālāk. Bet papildus tam ir nepiecieÅ”ama smalkāka analÄ«ze:

  • biznesa scenāriju izpildei pavadÄ«tā laika aprēķināŔana;
  • sistēmas veiktspējas un slodzes dinamikas uzraudzÄ«ba;
  • meklēt sistēmas komponentos novirzes no apstiprinātajām nefunkcionālajām prasÄ«bām.

11 gadus pēc LMS ievieÅ”anas Ä«paÅ”i aktuāls ir kļuvis jautājums par proaktÄ«vu reaģēŔanu uz dažāda veida kļūdām. Bankas vadÄ«ba saprata, ka darbs bez monitoriem un sistēmas dzÄ«ves konsoles spēlējas ar uguni: mazākā kļūme Ŕāda lÄ«meņa biznesa sistēmā var radÄ«t miljonus lielus zaudējumus.

2016. gadā sākām ieviest rÄ«kus, kas ļauj ātri identificēt problēmas LMS darbÄ«bā, tostarp reāllaikā uzraudzÄ«t mÅ«s interesējoÅ”os parametrus. IepriekÅ” pielietotā uzraudzÄ«bas sistēma tika izvietota un testēta InterTrust uzņēmuma infrastruktÅ«ras ietvaros.

Kā viss sākās

MÅ«sdienās VTB LMS centralizētā lietojumprogrammu uzraudzÄ«bas sistēma, kuras pamatā ir atvērtā pirmkoda programmatÅ«ras produkti, palÄ«dz novērst lielāko daļu kļūdu, kas saistÄ«tas ar dokumentu plÅ«smu, ātri un precÄ«zi klasificēt problēmas un operatÄ«vi reaģēt uz jebkādiem incidentiem. Tas ietver divas apakÅ”sistēmas:

  • sistēmas pakalpojumu IT infrastruktÅ«ras uzraudzÄ«bai;
  • uzraudzÄ«t kļūdu raÅ”anos LMS darbÄ«bā.

Viss sākās ar vienu bezmaksas uzraudzÄ«bas lietotni. Izpētot vairākas iespējas, mēs izvēlējāmies Zabbix ā€” bezmaksas programmatÅ«ru, kas sākotnēji bija paredzēta banku pakalpojumiem un aprÄ«kojumam. Å Ä« PHP tÄ«mekļa sistēma, kas var uzglabāt datus MySQL, PostgreSQL, SQLite vai Oracle datu bāzē, bija lieliski piemērota mÅ«su vajadzÄ«bām.

Zabbix palaiž savus aÄ£entus katrā serverÄ« un reāllaikā apkopo informāciju par interesējoÅ”o metriku vienā datu bāzē. Izmantojot lietojumprogrammu, ir ērti apkopot datus par procesoru un operatÄ«vās atmiņas slodzi, tÄ«kla un citu komponentu izmantoÅ”anu, pārbaudÄ«t standarta pakalpojumu (SMTP vai HTTP) pieejamÄ«bu un reakciju, palaist ārējās programmas un atbalstÄ«t uzraudzÄ«bu, izmantojot SNMP.

Pēc Zabbix izvietoÅ”anas mēs konfigurējām standarta aparatÅ«ras metriku, un sākumā ar to pietika. Bet VTB SDO pastāvÄ«gi attÄ«stās un aug: 2016. gadā manāmi palielinājās serveru skaits, parādÄ«jās migrācijas procesi, sistēmai pievienojās Maskavas Banka, VTB Capital un VTB24. Vairs nav pietiekami daudz standarta metrikas, un mēs iemācÄ«jām Zabbix izsekot informācijai par rindu esamÄ«bu katrā no sējumiem, kas savienoti ar serveri (no kastes Zabbix atspoguļo tikai vispārējo diska rindu), kā arÄ« laiku, kas nepiecieÅ”ams. lai pabeigtu noteiktu procedÅ«ru.

Atvērtā pirmkoda programmatūra LMS: kā bezmaksas programmatūra palīdz pārvaldīt kritiskās biznesa sistēmas VTB

Turklāt mēs aprīkojām sistēmu ar vairākiem trigeriem - nosacījumiem, saskaņā ar kuriem administratoram tiek nosūtīts paziņojums (ziņa Telegram, SMS uz tālruņa numuru vai e-pasts). Trigerus var konfigurēt jebkurai parametru kopai. Piemēram, varat norādīt noteiktu brīvas diska vietas procentuālo daļu, un sistēma brīdinās administratoru, kad tiks sasniegts norādītais slieksnis, vai informēs jūs, ja fona procedūra darbojas ilgāk nekā parasti.

Java savienojamība un datu vizualizācija

Mēs bÅ«tiski paplaÅ”inājām analizējamo datu klāstu, taču drÄ«z vien ar to nepietika efektÄ«vai uzraudzÄ«bai. Izmantojot to, ka CompanyMedia LMS ir Java lietojumprogramma, mēs izveidojām savienojumu ar Java virtuālo maŔīnu, izmantojot JMX interfeisu, un varējām tieÅ”i ņemt Java metriku. Un ne tikai Java vitālās aktivitātes standarta parametri, piemēram, GC darba intensitāte vai kaudzes patēriņŔ, bet arÄ« specifiski testi, kas tieÅ”i saistÄ«ti ar izpildāmās lietojumprogrammas kodu.

Atvērtā pirmkoda programmatūra LMS: kā bezmaksas programmatūra palīdz pārvaldīt kritiskās biznesa sistēmas VTB

2017. gadā, aptuveni gadu pēc monitoringa sistēmas ievieÅ”anas, kļuva skaidrs, ka, lai normāli strādātu ar kolosālo Zabbix savākto datu apjomu, pietrÅ«ka vizualizācijas - sarežģītu ekrānu. Labākais Ŕīs problēmas risinājums atkal bija bezmaksas programmatÅ«ra - Grafana, ērts metrikas informācijas panelis, kas ļauj apkopot visus datus vienā ekrānā.

Atvērtā pirmkoda programmatūra LMS: kā bezmaksas programmatūra palīdz pārvaldīt kritiskās biznesa sistēmas VTB

Grafana interfeiss ir interaktÄ«vs, atgādinot OLAP sistēmu. ApakÅ”sistēma parāda Zabbix saņemtos datus vienā ekrānā, sniedzot informāciju viegli analizējamu grafiku un diagrammu veidā. Administrators var viegli pielāgot sev vajadzÄ«gās Ŕķēles.

Atvērtā pirmkoda programmatūra LMS: kā bezmaksas programmatūra palīdz pārvaldīt kritiskās biznesa sistēmas VTB

UzraudzÄ«ba un profilaktiska kļūdu novērÅ”ana LMS sistēmā

ELK atvērtā pirmkoda programmatÅ«ras platforma palÄ«dz filtrēt un analizēt monitoringa laikā saņemto informāciju. Å is atvērtā pirmkoda produkts sastāv no trim spēcÄ«giem rÄ«kiem datu vākÅ”anai, glabāŔanai un analÄ«zei: Elasticsearch, Logstash un Kibana. Å Ä«s apakÅ”sistēmas ievieÅ”ana ļauj Ä«paÅ”i reāllaikā redzēt, cik daudz kļūdu sistēmā ir raduŔās, uz kuriem serveriem un vai Ŕīs kļūdas atkārtojas.

Atvērtā pirmkoda programmatūra LMS: kā bezmaksas programmatūra palīdz pārvaldīt kritiskās biznesa sistēmas VTB

Tagad administrators var atklāt problēmu agrÄ«nā stadijā, pat pirms lietotājs ar to saskaras. Šāda proaktÄ«vā uzraudzÄ«ba ļauj novērst sistēmas darbÄ«bas traucējumus, savlaicÄ«gi novērÅ”ot kļūdas. Turklāt mēs varam saprast, kā ir mainÄ«jusies sistēmas darbÄ«ba pēc atjaunināŔanas, kā arÄ« atklāt jaunas problēmas, ja tās parādās.

Atvērtā pirmkoda programmatūra LMS: kā bezmaksas programmatūra palīdz pārvaldīt kritiskās biznesa sistēmas VTB

Uzņēmējdarbības operāciju uzraudzība

Papildus galvenajām resursu patēriņa uzraudzības funkcijām sistēmai ir iespēja analizēt un kontrolēt biznesa operācijas.

Atvērtā pirmkoda programmatūra LMS: kā bezmaksas programmatūra palīdz pārvaldīt kritiskās biznesa sistēmas VTB

Kopējā biznesa operāciju izpildes laika uzraudzība ļauj identificēt jaunus faktorus un izprast to ietekmi uz sistēmas darbību.

Atvērtā pirmkoda programmatūra LMS: kā bezmaksas programmatūra palīdz pārvaldīt kritiskās biznesa sistēmas VTB

Pieprasījumu izpildes laika uzraudzība katram biznesa pakalpojumam ļauj atklāt darbības, kas atŔķiras no normas.

Atvērtā pirmkoda programmatūra LMS: kā bezmaksas programmatūra palīdz pārvaldīt kritiskās biznesa sistēmas VTB

IepriekÅ” redzamais ekrānuzņēmums ir piemērs fona uzdevuma pārraudzÄ«bai, ņemot vērā tā novirzi no normas.

Atvērtā pirmkoda programmatūra LMS: kā bezmaksas programmatūra palīdz pārvaldīt kritiskās biznesa sistēmas VTB

Kontrolēto uzdevumu saraksts, ņemot vērā to darbÄ«bu noteiktā serverÄ«, ļauj identificēt kļūdas, tostarp uzdevumu izpildes dublÄ“Å”anos, visos serveros.

Atvērtā pirmkoda programmatūra LMS: kā bezmaksas programmatūra palīdz pārvaldīt kritiskās biznesa sistēmas VTB

Tiek uzraudzītas arī fona procedūru izpildes laika tendences.

Sistēma aug, attīstās un palīdz tikt galā ar problēmām

IevieÅ”ot aprakstÄ«to sistēmu, LMS serveru darbÄ«bas uzraudzÄ«ba ir ievērojami vienkārÅ”ota. Tomēr ik pa laikam rodas dažāda veida konflikti, kas ietekmē dokumentu aprites ātrumu un izraisa lietotāju sÅ«dzÄ«bas. Tātad mēs sapratām, ka ir jākontrolē paÅ”as lietojumprogrammas darbÄ«ba, nevis tikai serveri.

Lai atrisinātu Å”o problēmu, uzraudzÄ«bas sistēmai caur API tika pieslēgts balansētājs, kas darbojas ar lietojumprogrammu serveru kopu. Pateicoties tam, administrators var redzēt, cik ilgā laikā serveris atbild uz katru lietotāja pieprasÄ«jumu.

Dati par servera atbildes laikiem kļuva pieejami analÄ«zei, kas ļāva saistÄ«t LMS palēnināŔanos ar serverÄ« notiekoÅ”ajiem procesiem. Jo Ä«paÅ”i radās interesanta situācija: serveris darbojas lēni, lai gan Å”obrÄ«d tas nav ielādēts. Analizējot anomāliju, mēs atklājām novirzes atkritumu savācēja Java darbÄ«bā. Beigās izrādÄ«jās, ka tieÅ”i nepareiza Ŕī dienesta darbÄ«ba noveda pie Ŕādas situācijas. Pārņemot vadÄ«bu pār Garbage Collector Java, mēs pilnÄ«bā novērsām problēmu.

Tādā veidā bezmaksas programmatÅ«ra palÄ«dz banku nozares dokumentu pārvaldÄ«bas sistēmai attÄ«stÄ«ties un augt. Esam pieskāruÅ”ies tikai galvenajām problēmām saistÄ«bā ar VTB SDO uzraudzÄ«bas sistēmu. Ja interesē sÄ«kāk, jautājiet komentāros, mēs ar prieku padalÄ«simies ar jums savā pieredzē.

Avots: www.habr.com

Pievieno komentāru