Monitorimi i SCHED IBM Storwize me Zabbix

Në këtë artikull, do të flasim pak për monitorimin e RUHIBM Storwize dhe të tjerë RUH që mbështesin protokollet CIM/WBEM. Nevoja për një monitorim të tillë mbetet në hije, le të e shqyrtojmë këtë si një aksiomë. Si sistem monitorimi do të përdorim Zabbix.

NĂ« versionet e fundit tĂ« Zabbix, kompania ka filluar t'i kushtojĂ« shumĂ« mĂ« tepĂ«r vĂ«mendje template-ve — janĂ« shfaqur template pĂ«r monitorimin e shĂ«rbimeve, DBMS, hardware tĂ« serverĂ«ve (IMM/iBMC) pĂ«rmes IPMI. Monitorimi i RUH-ve ende mbetet jashtĂ« template-ve nga fabrika, prandaj pĂ«r integrimin nĂ« Zabbix tĂ« informacionit mbi statusin dhe performancĂ«n e komponentĂ«ve tĂ« RUH-ve duhet tĂ« pĂ«rdoren template tĂ« personalizuara. NjĂ« nga kĂ«to template e propozoj pĂ«r vĂ«mendjen tuaj.

Fillimisht pak teori.

Për të aksesuar statusin dhe statistikën e RUHIBM Storwize, mund të përdoren:

  1. Protokollet CIM/WBEM;
  2. RESTful API (në IBM Storwize mbështetet nga versioni i softuerit 8.1.3);
  3. SNMP Traps (grup i kufizuar trap-esh, nuk ka statistikë);
  4. Lidhja përmes SSH me ndihmën e ndihmon për skriptim të ngadaltë bash.

Atë që janë të interesuar mund të njihet më në detaje me metodat e ndryshme të monitorimit në seksionet përkatëse të dokumentacionit të prodhuesit, si dhe në dokumentin IBM Spectrum Virtualize scripting.

Do tĂ« pĂ«rdorim protokollet CIM/WBEM, qĂ« lejojnĂ« marrjen e parametrave tĂ« funksionimit tĂ« RUH-ve pa ndryshime tĂ« mĂ«dha tĂ« softuerit pĂ«r RUH tĂ« ndryshĂ«m. Protokollet CIM/WBEM punojnĂ« nĂ« pĂ«rputhje me Storage Management Initiative Specification (SMI-S). Storage Management Initiative – Specifikimi Ă«shtĂ« i bazuar nĂ« standarde tĂ« hapura CIM (Modeli i Informacionit tĂ« PĂ«rbashkĂ«t) dhe WBEM (Menaxhimi i NdĂ«rmarrjeve tĂ« Bazuara nĂ« Web), tĂ« pĂ«rcaktuar nga Grupi i Detyrave pĂ«r Menaxhimin e ShpĂ«rndarĂ«.

WBEM punon mbi protokollin HTTP. Përmes WBEM mund të punoni jo vetëm me RUH, por edhe me HBA, switch dhe biblioteka shiritash.

Sipas SMI Arkitektura dhe PĂ«rcaktoni InfrastrukturĂ«n, komponenti kryesor i implementimit tĂ« SMI Ă«shtĂ« WBEM-serveri, qĂ« pĂ«rpunon kĂ«rkesat CIM-XML nga klientĂ«t WBEM (nĂ« rastin tonĂ« — nga skriptet e monitorimit):

Monitorimi i SCHED IBM Storwize me Zabbix

CIM është një model orientuar në objekte, e bazuar në Gjuhën e Modelimit të Bashkuar (UML).
Elementët e menaxhuar përcaktohen në formën e CIM-klasave, të cilat kanë prona dhe metoda për të përfaqësuar të dhënat dhe funksionet e menaxhuara.

Sipas www.snia.org/pywbem, pĂ«r qasje nĂ« SHD pĂ«rmes CIM/WBEM mund tĂ« pĂ«rdorni PyWBEM — njĂ« bibliotekĂ« open source e shkruar nĂ« Python, e cila ofron zhvilluesve dhe administratorĂ«ve tĂ« sistemeve implementimin e protokollit CIM pĂ«r qasje nĂ« objektet CIM dhe kryerjen e operacioneve tĂ« ndryshme me serverin WBEM qĂ« funksionon sipas SMI-S ose specifikimeve tĂ« tjera CIM.

Për t'u lidhur me serverin WBEM përdorim konstruktorin e klasës WBEMConnection:

conn = pywbem.WBEMConnection(server_uri, (self.login, self.password),
            namespace, no_verification=True)

Kjo është një lidhje virtuale, pasi CIM-XML/WBEM punon mbi HTTP, lidhja reale ndodh në momentin e thirrjes së metodave për instancën e klasës WBEMConnection. Sipas IBM System Storage SAN Volume Controller and Storwize V7000 Best Practices and Performance Guidelines (Shembulli C-8, fq. 412), si CIM namespace për SHD-në IBM Storwize do të përdorim «root/ibm».

Kushtoni vëmendje se për të mbledhur statistika për protokollin CIM-XML/WBEM, është e nevojshme të përfshini përdoruesin në grupin e sigurisë përkatës. Ndryshe, gjatë ekzekutimit të kërkesave WBEM, rezultati i atributeve të instancës së klasës do të jetë bosh..

Për qasje në statistikat e SHD-së, përdoruesi me të cilin ekzekutohet thirrja e konstruktorit WBEMConnection(), duhet të ketë të drejta të paktën RestrictedAdmin (existon për code_level > 7.8.0) ose Administrator (nuk e rekomandoj për arsye sigurie).

Lidheni me SHD-në përmes SSH dhe shikoni numrat e grupeve:

> lsusergrp
id name            role            remote
0  SecurityAdmin   SecurityAdmin   no    
1  Administrator   Administrator   no    
2  CopyOperator    CopyOperator    no    
3  Service         Service         no    
4  Monitor         Monitor         no    
5  RestrictedAdmin RestrictedAdmin no    

Shtoni përdoruesin zabbix në grupin përkatës:

> chuser -usergrp 5 zabbix

Për më tepër, sipas IBM System Storage SAN Volume Controller and Storwize V7000 Best Practices and Performance Guidelines (fq. 415) është e nevojshme të aktivizoni mbledhjen e statistikave në SHD. Pra, për të mbledhur statistika çdo minutë:

> startstats -interval 1 

Po kontrollojmë:

> lssystem | grep statistics
statistics_status on
statistics_frequency 1

Për të marrë të gjitha klasat ekzistuese të SHD-së, është e nevojshme të përdoret metoda EnumerateClassNames().

Shembulli:

classnames = conn.EnumerateClassNames(namespace='root/ibm', DeepInheritance=True)
for classname in classnames:
     print (classname)

Për të marrë vlerat e parametrave të SHD-së, është e nevojshme metoda EnumerateInstances() e klasës WBEMConnection, e cila kthen një listë instancash CIMInstance().

Shembulli:

instances = conn.EnumerateInstances(classname,
                   namespace=nd_parameters['name_space'])
for instance in instances:
     for prop_name, prop_value in instance.items():
          print('  %s: %r' % (prop_name, prop_value))

PĂ«r disa klasa qĂ« pĂ«rmbajnĂ« njĂ« numĂ«r tĂ« madh instancash, si IBMTSSVC_StorageVolume, kĂ«rkesa e plotĂ« pĂ«r tĂ« gjitha instancat mund tĂ« jetĂ« mjaft e ngadaltĂ«. Ajo mund tĂ« gjenerojĂ« volume tĂ« mĂ«dha tĂ« dhĂ«nash qĂ« duhet tĂ« pĂ«rgatiten nga SAN, tĂ« kalojnĂ« pĂ«rmes rrjetit dhe tĂ« pĂ«rpunohen nga skenari. PĂ«r kĂ«tĂ« ekziston njĂ« metodĂ« ExecQuery(), e cila lejon tĂ« marrim vetĂ«m pronat qĂ« na interesojnĂ« tĂ« instancĂ«s sĂ« klasĂ«s. Kjo metodĂ« parashikon pĂ«rdorimin e njĂ« gjuhe pyetjesh, tĂ« ngjashme me SQL — ose CIM Query Language (DMTF:CQL), ose WBEM Query Language (WQL), pĂ«r t’i pyetur objektet CIM tĂ« SAN:

request = 'SELECT Name FROM IBMTSSVC_StorageVolumeStatistics'
objects_perfs_cim = wbem_connection.ExecQuery('DMTF:CQL', request)

Për të përcaktuar cilat klasa na duhen për të marrë parametrat e objekteve SAN, lexojmë dokumentacionin, për shembull How system concepts map to CIM concepts.

Tani, pĂ«r tĂ« marrĂ« parametrat (jo numrat e performancĂ«s) e disqeve fizike (Disk Drives) do tĂ« kĂ«rkojmĂ« KlasĂ«n IBMTSSVC_DiskDrive, pĂ«r tĂ« marrĂ« parametrat e Volume-ve — KlasĂ«n IBMTSSVC_StorageVolume, pĂ«r tĂ« marrĂ« parametrat e grupeve — KlasĂ«n IBMTSSVC_Array, pĂ«r tĂ« marrĂ« parametrat e MDiskeve — KlasĂ«n IBMTSSVC_BackendVolume, etj.

PĂ«r performancĂ«n mund tĂ« lexoni Functional diagrams of the Common Information Model agent (veçanĂ«risht — Block server performance subprofile) dhe IBM System Storage SAN Volume Controller and Storwize V7000 Best Practices and Performance Guidelines (Shembulli C-11, fq. 415).

Për të marrë statistikat e SAN për Volume, duhet të specifikohet si vlerë e parametrin ClassName IBMTSSVC_StorageVolumeStatistics. Pronat e nevojshme për mbledhjen e statistikave të klasës IBMTSSVC_StorageVolumeStatistics mund të shikohen në Node Statistics.

Po ashtu, për analizën e performancës, mund të përdoren klasat IBMTSSVC_BackendVolumeStatistics, IBMTSSVC_DiskDriveStatistics, IBMTSSVC_NodeStatistics.

Për të shkruar të dhëna në sistemin e monitorimit, do të përdorim mekanizmin zabbix traps, të realizuar në python në modul py-zabbix. Strukturën e klasave SAN dhe pronat e tyre do ta vendosim në një fjalor në formatin JSON.

Ngarko modelin në serverin Zabbix, sigurohemi që nga serveri i monitorimit ka akses në SAN përmes protokollit WEB (TCP/5989), vendosim skedarët e konfigurimit, skriptet e zbulimit dhe monitorimit në serverin e monitorimit. Më pas, shtojmë në planifikuesin ekzekutimin e skripteve. Si rezultat: zbulojmë objektet e SAN (grupet, disqet fizike dhe virtuale, enclosures dhe shumë të tjera), i dërgojmë ato në zbulimet e Zabbix, marrim statusin e parametrave të tyre, lexojmë statistikat e performancës (counters të performancës), dhe dërgojmë gjithçka në Items përkatëse të Zabbix të modelit tonë.

Modeli Zabbix, skriptet python, struktura e klasave të SAN dhe pronave të tyre, si dhe shembujt e skedarëve të konfigurimit, mund të gjejmë këtu.

Burimi: habr.com

Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster