Programvara med öppen källkod för LMS: hur gratis soft hjälper till att administrera kritiska affärssystem på VTB

Dokumentationsstödsystemet i vår bank utvecklas och skalas hela tiden och kraven på hastighet och feltolerans bara ökar. Vid någon tidpunkt blev det för riskabelt att upprätthålla ett LMS utan effektiv centraliserad övervakning. För att säkra affärsprocesser på VTB och förenkla arbetet för administratörer implementerade vi en lösning baserad på en stapel öppna teknologier. Med dess hjälp kan vi proaktivt reagera på incidenter och förhindra potentiella problem. Nedanför snittet finns en berättelse om vår erfarenhet av att använda fri programvara för att övervaka storskaliga affärssystem.

Programvara med öppen källkod för LMS: hur gratis soft hjälper till att administrera kritiska affärssystem på VTB

Varför övervaka ditt dokumenthanteringssystem?

Sedan 2005 har dokumentationsstödet på VTB Bank ”hanterats” av systemet CompanyMedia. LMS sysselsätter över 60 tusen användare som skapar mer än en miljon nya dokument varje månad. Våra servrar måste fungera 24 timmar om dygnet: när som helst finns det 2500–3000 personer i systemet, som är anslutna över hela landet, från Petropavlovsk-Kamchatsky till Kaliningrad. Varje sekund av LMS-drift innebär 10–15 förändringar.

För att säkerställa att systemet korrekt uppfyller sina tilldelade uppgifter har vi implementerat en feltolerant infrastruktur med hjälp av proxyservrar, förfrågningsbalansering, informationsskydd, fulltextsökning, integrationsrutter och backup. Att stödja och administrera ett projekt av den här omfattningen kräver enorma resurser. Administratörer övervakar grundläggande information om serverdrift, RAM-belastning, CPU-tid, I/O-undersystem och så vidare dygnet runt. Men förutom detta behövs mer subtil analys:

  • beräkna den tid som spenderas på att utföra affärsscenarier;
  • övervaka dynamiken i systemets prestanda och belastningen på den;
  • söka efter avvikelser i systemkomponenter från godkända icke-funktionella krav.

11 år efter införandet av LMS har frågan om proaktiv reaktion på olika typer av fel blivit extra akut. Bankens ledning insåg att det att arbeta utan monitorer och en systemlivskonsol lekte med elden: minsta misslyckande i ett affärssystem på denna nivå kan resultera i miljontals förluster.

Under 2016 började vi introducera verktyg för att snabbt identifiera problem i LMS:s funktion, inklusive övervakning av parametrar av intresse för oss i realtid. Tidigare har det tillämpade övervakningssystemet implementerats och testats inom ramen för InterTrusts företagsinfrastruktur.

Hur allt började

Idag hjälper det centraliserade applikationsövervakningssystemet för VTB LMS, baserat på mjukvaruprodukter med öppen källkod, att förhindra de flesta fel som är förknippade med dokumentflöde, snabbt och noggrant klassificera problem och reagera snabbt på eventuella incidenter. Den innehåller två delsystem:

  • för övervakning av IT-infrastrukturen för systemtjänster;
  • för att övervaka förekomsten av fel i driften av LMS.

Allt började med en enda gratis övervakningsapp. Efter att ha gått igenom flera alternativ bestämde vi oss för Zabbix - gratis programvara som ursprungligen skrevs för banktjänster och utrustning. Detta PHP webbaserade system, som kan lagra data i MySQL, PostgreSQL, SQLite eller Oracle Database, passade perfekt för våra behov.

Zabbix kör sina agenter på varje server och samlar in information om mätvärden av intresse i realtid till en enda databas. Med applikationen är det bekvämt att samla in data om belastningen på processorer och RAM, om användningen av nätverket och andra komponenter, kontrollera tillgängligheten och svaret på standardtjänster (SMTP eller HTTP), köra externa program och stödja övervakning via SNMP.

Efter att ha distribuerat Zabbix konfigurerade vi standard hårdvarumått, och till en början räckte detta. Men VTB SDO utvecklas och växer ständigt: 2016 ökade antalet servrar märkbart, migreringsprocesser dök upp, Bank of Moscow, VTB Capital och VTB24 gick med i systemet. Det finns inte längre tillräckligt med standardmått, och vi lärde Zabbix att spåra information om förekomsten av köer på var och en av de volymer som är anslutna till servern (utanför lådan återspeglar Zabbix endast den allmänna diskkön), såväl som den tid det tar för att slutföra en viss procedur.

Programvara med öppen källkod för LMS: hur gratis soft hjälper till att administrera kritiska affärssystem på VTB

Dessutom utrustade vi systemet med flera triggers - villkor under vilka ett meddelande skickas till administratören (ett meddelande i Telegram, ett SMS till ett telefonnummer eller ett e-postmeddelande). Utlösare kan konfigureras för alla parametrar. Du kan till exempel ange en viss procentandel ledigt diskutrymme, och systemet kommer att varna administratören när den angivna tröskeln nås, eller informera dig om en bakgrundsprocedur pågår längre än vanligt.

Java-anslutning och datavisualisering

Vi utökade utbudet av analyserade data avsevärt, men snart var detta inte tillräckligt för effektiv övervakning. Genom att dra nytta av att CompanyMedias LMS är en Java-applikation kopplade vi till Java Virtual Machine via JMX-gränssnittet och kunde ta Java-mått direkt. Och inte bara standardparametrar för vital aktivitet i Java, såsom GC-arbetsintensitet eller Heap-förbrukning, utan även specifika tester relaterade direkt till den körbara applikationskoden.

Programvara med öppen källkod för LMS: hur gratis soft hjälper till att administrera kritiska affärssystem på VTB

2017, ungefär ett år efter implementeringen av övervakningssystemet, stod det klart att för att kunna arbeta normalt med den kolossala mängden data som samlats in i Zabbix fanns det inte tillräckligt med visualisering – komplexa skärmar. Den bästa lösningen på detta problem var återigen fri programvara - Grafana, en bekväm instrumentpanel för mätvärden som låter dig samla all data på en skärm.

Programvara med öppen källkod för LMS: hur gratis soft hjälper till att administrera kritiska affärssystem på VTB

Grafana-gränssnittet är interaktivt och påminner om ett OLAP-system. Delsystemet visar data som tas emot av Zabbix på en enda skärm och presenterar informationen i form av grafer och diagram som är lätta att analysera. Administratören kan enkelt anpassa de skivor han behöver.

Programvara med öppen källkod för LMS: hur gratis soft hjälper till att administrera kritiska affärssystem på VTB

Övervakning och förebyggande eliminering av fel i LMS-systemet

ELK mjukvaruplattform med öppen källkod hjälper dig att filtrera och analysera informationen som tas emot under övervakningen. Denna opensource-produkt består av tre kraftfulla verktyg för att samla in, lagra och analysera data: Elasticsearch, Logstash och Kibana. Implementeringen av detta delsystem gör det i synnerhet möjligt att se i realtid hur många fel som uppstod i systemet, på vilka servrar och om dessa fel upprepas.

Programvara med öppen källkod för LMS: hur gratis soft hjälper till att administrera kritiska affärssystem på VTB

Nu kan administratören upptäcka ett problem i ett tidigt skede, redan innan användaren stöter på det. Sådan proaktiv övervakning låter dig förhindra systemfel genom att eliminera fel i tid. Dessutom kan vi förstå hur systemets beteende har förändrats efter uppdateringen, samt upptäcka nya problem om de dyker upp.

Programvara med öppen källkod för LMS: hur gratis soft hjälper till att administrera kritiska affärssystem på VTB

Övervakning av affärsverksamhet

Förutom de grundläggande funktionerna för att övervaka resursförbrukningen har systemet förmågan att analysera och kontrollera affärsverksamheten.

Programvara med öppen källkod för LMS: hur gratis soft hjälper till att administrera kritiska affärssystem på VTB

Genom att övervaka den totala genomförandetiden för affärsverksamheten kan du identifiera nya faktorer och förstå vilken inverkan de har på driften av systemet.

Programvara med öppen källkod för LMS: hur gratis soft hjälper till att administrera kritiska affärssystem på VTB

Övervakning av exekveringstiden för förfrågningar för varje företagstjänst gör det möjligt att upptäcka verksamheter som avviker från normen.

Programvara med öppen källkod för LMS: hur gratis soft hjälper till att administrera kritiska affärssystem på VTB

Skärmdumpen ovan är ett exempel på att övervaka en bakgrundsuppgift när det gäller dess avvikelse från normen.

Programvara med öppen källkod för LMS: hur gratis soft hjälper till att administrera kritiska affärssystem på VTB

Listan över kontrollerade uppgifter när det gäller deras aktivitet på en specifik server låter dig identifiera fel - inklusive dubblering av uppgiftskörning - på alla servrar.

Programvara med öppen källkod för LMS: hur gratis soft hjälper till att administrera kritiska affärssystem på VTB

Trender i exekveringstiden för bakgrundsprocedurer övervakas också.

Systemet växer, utvecklas och hjälper till att hantera problem

Med implementeringen av det beskrivna systemet har övervakningen av driften av LMS-servrar blivit avsevärt förenklad. Ändå uppstår olika typer av konflikter då och då, som påverkar hastigheten i dokumentflödet och orsakar klagomål från användare. Så vi insåg att det var nödvändigt att kontrollera beteendet för själva applikationen, och inte bara servrarna.

För att lösa detta problem kopplades en balancer till övervakningssystemet via API, som fungerar med ett kluster av applikationsservrar. Tack vare detta kan administratören se hur lång tid det tar för servern att svara på varje användarförfrågan.

Data om serverns svarstider blev tillgängliga för analys, vilket gjorde det möjligt att koppla nedbromsningen av LMS med de processer som sker på servern. I synnerhet uppstod en intressant situation: servern körs långsamt, även om den för närvarande inte är laddad. När vi analyserade anomalien upptäckte vi avvikelser i driften av Garbage Collector Java. Till slut visade det sig att det var den felaktiga driften av denna tjänst som ledde till denna situation. Genom att ta kontroll över Garbage Collector Java eliminerade vi problemet helt.

Det är så fri programvara hjälper dokumenthanteringssystemet i bankbranschen att utvecklas och växa. Vi har endast berört de viktigaste frågorna relaterade till VTB SDO-övervakningssystemet. Om du är intresserad av detaljer, fråga i kommentarerna, vi delar gärna vår erfarenhet med dig.

Källa: will.com

Lägg en kommentar