Perangkat lunak open source untuk LMS: bagaimana soft soft membantu mengelola sistem bisnis penting di VTB

Sistem pendukung dokumentasi di bank kami terus berkembang dan diskalakan, sementara persyaratan untuk kecepatan dan toleransi kesalahan hanya meningkat. Pada titik tertentu, melayani LMS tanpa pemantauan terpusat yang efektif menjadi terlalu berisiko. Untuk mengamankan proses bisnis di VTB dan menyederhanakan pekerjaan administrator, kami telah menerapkan solusi berdasarkan tumpukan teknologi terbuka. Dengan itu, kita dapat secara proaktif menanggapi insiden, mencegah potensi masalah. Di bawah potongan - cerita tentang pengalaman kami dalam menggunakan perangkat lunak gratis untuk memantau sistem bisnis skala besar.



Mengapa memonitor sistem alur kerja


Sejak 2005, sistem dokumentasi di VTB Bank telah β€œdikelola” oleh sistem CompanyMedia. SDO mempekerjakan lebih dari 60 ribu pengguna yang setiap bulan membuat lebih dari satu juta dokumen baru. Server kami harus berfungsi 24 jam sehari: hampir setiap saat, ada 2500-3000 orang dalam sistem yang terhubung di seluruh negeri, dari Petropavlovsk-Kamchatsky ke Kaliningrad. Setiap detik pengoperasian LMS adalah 10-15 perubahan.

Agar sistem memenuhi tugas-tugas yang ditetapkan dengan jelas, kami telah menggunakan infrastruktur toleran kesalahan menggunakan server proxy, penyeimbangan kueri, perlindungan informasi, pencarian teks lengkap, rute integrasi, dan cadangan. Sumber daya yang sangat besar dibutuhkan untuk mendukung dan mengelola proyek sebesar ini. Administrator sekitar jam memantau informasi dasar tentang operasi server, memuat RAM, waktu prosesor, subsistem I / O, dan sebagainya. Namun, di samping itu, analitik yang lebih halus diperlukan:

  • Perhitungan waktu yang dihabiskan untuk menjalankan skenario bisnis;
  • melacak dinamika kinerja sistem dan memuatnya;
  • Cari penyimpangan dalam komponen sistem dari persyaratan non-fungsional yang disetujui.

11 tahun setelah pengenalan LMS, masalah tanggapan proaktif untuk berbagai jenis kesalahan muncul terutama secara tajam. Manajemen bank menyadari bahwa bekerja tanpa monitor dan konsol kehidupan sistem adalah bermain dengan api: kegagalan sekecil apa pun dalam sistem bisnis tingkat ini dipenuhi dengan jutaan kerugian.

Pada 2016, kami mulai memperkenalkan alat untuk identifikasi cepat masalah dalam fungsi LMS, termasuk untuk memantau parameter waktu nyata yang menarik bagi kami. Sebelumnya, sistem pemantauan aplikasi dikerahkan dan diuji dalam kerangka infrastruktur perusahaan InterTrust.

Bagaimana semuanya dimulai


Saat ini, sistem pemantauan aplikasi terpusat untuk VTB SDO berdasarkan perangkat lunak open source membantu mencegah sebagian besar kesalahan yang terkait dengan manajemen dokumen, dengan cepat dan akurat mengklasifikasikan masalah, dan dengan cepat menanggapi setiap insiden. Ini mencakup dua subsistem:

  • untuk memantau infrastruktur TI dari layanan sistem;
  • untuk memantau terjadinya kesalahan dalam pekerjaan LMS.

Semuanya dimulai dengan satu-satunya aplikasi pemantauan gratis. Setelah melalui beberapa opsi, kami memilih perangkat lunak bebas Zabbix, yang semula ditulis untuk layanan dan peralatan perbankan. Sistem berbasis web PHP ini, yang dapat menyimpan data dalam MySQL, PostgreSQL, SQLite, atau Oracle Database, sangat sesuai dengan kebutuhan kita.

Zabbix menjalankan agennya di setiap server dan mengumpulkan informasi tentang metrik minat secara real time dalam satu basis data. Dengan menggunakan aplikasi ini, akan lebih mudah untuk mengumpulkan data tentang beban pada prosesor dan RAM, pada penggunaan jaringan dan komponen lainnya, memeriksa ketersediaan dan reaksi layanan standar (SMTP atau HTTP), menjalankan program eksternal, dan mendukung pemantauan melalui SNMP.

Dengan menggunakan Zabbix, kami menyiapkan metrik perangkat keras standar, dan pada awalnya itu sudah cukup. Tapi VTB SDO terus berkembang dan berkembang: pada tahun 2016 jumlah server meningkat secara nyata, proses migrasi muncul, Bank Moskow, VTB Capital, VTB24 yang terhubung ke sistem. Ada lebih sedikit metrik standar, dan kami mengajar Zabbix untuk melacak informasi tentang keberadaan antrian pada setiap volume yang terhubung ke server (dari kotak Zabbix hanya mencerminkan antrian disk umum), serta tentang waktu yang diperlukan untuk memproses prosedur tertentu.



Selain itu, kami melengkapi sistem dengan beberapa pemicu - kondisi di mana pemberitahuan dikirim ke administrator (pesan ke Telegram, SMS ke nomor telepon atau email). Pemicu dapat disesuaikan untuk set parameter apa pun. Misalnya, Anda dapat menentukan persentase ruang disk kosong tertentu, dan sistem akan memberi tahu administrator ketika ambang yang ditentukan tercapai, atau menginformasikan jika prosedur latar belakang lebih lama dari biasanya.

Konektivitas Java dan visualisasi data


Kami memperluas jangkauan data yang dianalisis secara signifikan, tetapi segera ini tidak cukup untuk pemantauan yang efektif. Mengambil keuntungan dari fakta bahwa CompanyMedia DLS adalah aplikasi Java, kami terhubung ke Java Virtual Machine melalui antarmuka JMX dan dapat mengambil metrik Java secara langsung. Selain itu, tidak hanya fungsi vital Java standar, seperti intensitas konsumsi GC atau Heap, tetapi juga sampel spesifik yang terkait langsung dengan kode aplikasi yang dapat dieksekusi.



Pada tahun 2017, sekitar satu tahun setelah pengenalan sistem pemantauan, menjadi jelas bahwa untuk pekerjaan normal dengan susunan data kolosal yang dikumpulkan di Zabbix, tidak ada cukup visualisasi - layar yang kompleks. Solusi terbaik untuk masalah ini adalah lagi perangkat lunak gratis - Grafana, dasbor yang nyaman untuk metrik yang memungkinkan Anda untuk mengumpulkan semua data pada satu layar.



Antarmuka interaktif Grafana mengingatkan kita pada sistem OLAP. Subsistem menampilkan data yang diterima Zabbix pada satu layar, menyajikan informasi dalam bentuk grafik dan grafik yang nyaman untuk dianalisis. Administrator dapat dengan mudah menyesuaikan irisan yang dia butuhkan.



Pemantauan dan pemecahan masalah preventif dalam sistem LMS


Memfilter dan menganalisis informasi yang diterima selama pemantauan membantu platform perangkat lunak sumber terbuka ELK. Produk sumber terbuka ini terdiri dari tiga alat yang ampuh untuk mengumpulkan, menyimpan, dan menganalisis data: Elasticsearch, Logstash dan Kibana. Implementasi subsistem ini memungkinkan, khususnya, untuk melihat secara real time berapa banyak kesalahan telah terjadi dalam sistem, di server mana dan apakah kesalahan ini diulang.



Sekarang administrator dapat mendeteksi masalah pada tahap awal, bahkan sebelum pengguna menemukannya. Pemantauan proaktif semacam itu membantu mencegah kerusakan sistem dengan menghilangkan kesalahan secara tepat waktu. Selain itu, kita dapat memahami bagaimana perilaku sistem telah berubah setelah pembaruan, serta mendeteksi masalah baru jika muncul.



Pemantauan Operasi Bisnis


Selain fungsi dasar pemantauan konsumsi sumber daya, sistem memiliki kemampuan untuk menganalisis dan mengendalikan operasi bisnis.



Memantau total waktu operasi bisnis memungkinkan Anda mengidentifikasi faktor-faktor baru dan memahami apa dampaknya terhadap sistem.



Memantau waktu pelaksanaan permintaan dalam konteks setiap layanan bisnis memungkinkan untuk mendeteksi operasi yang memiliki penyimpangan dari norma.



Tangkapan layar di atas menunjukkan contoh pemantauan tugas latar belakang dalam hal penyimpangan dari norma.



Daftar tugas yang dipantau dalam hal aktivitasnya di server tertentu memungkinkan Anda mengidentifikasi kesalahan - termasuk duplikasi pelaksanaan tugas - di semua server.



Ini juga memantau tren dalam waktu pelaksanaan prosedur latar belakang.

Sistem tumbuh, berkembang, dan membantu mengatasi masalah.


Dengan implementasi sistem yang dijelaskan, pemantauan operasi server DLS telah sangat disederhanakan. Meskipun demikian, berbagai konflik muncul secara berkala yang mempengaruhi kecepatan alur kerja dan menyebabkan keluhan pengguna. Jadi kami menyadari bahwa perlu untuk mengontrol perilaku aplikasi itu sendiri, dan bukan hanya server.

Untuk mengatasi masalah ini, penyeimbang terhubung ke sistem pemantauan melalui API, yang berfungsi dengan sekelompok server aplikasi. Berkat ini, administrator dapat melihat berapa lama server bertanggung jawab untuk setiap permintaan pengguna.

Data pada waktu respons server menjadi tersedia untuk analisis, yang memungkinkan untuk mengaitkan pelambatan DLS dengan proses yang terjadi di server. Situasi menarik terungkap, khususnya: server lambat, meskipun saat ini tidak dimuat. Dengan menganalisis anomali tersebut, kami menemukan penyimpangan dalam pengoperasian Kolektor Sampah Jawa. Pada akhirnya, ternyata operasi yang salah dari layanan ini yang menyebabkan situasi ini. Mengambil kendali Jawa Pengumpul Sampah, kami benar-benar memperbaiki masalahnya.

Inilah cara perangkat lunak bebas membantu mengembangkan dan menumbuhkan sistem manajemen dokumen di sektor perbankan. Kami menyentuh hanya pada isu-isu utama mengenai sistem pemantauan LMS VTB. Jika Anda tertarik pada detailnya - tanyakan komentarnya, kami akan dengan senang hati membagikan pengalaman kami kepada Anda.

Source: https://habr.com/ru/post/id475572/


All Articles