Ho beha leihlo polokelo ea IBM Storwize ka Zabbix

Sengoliloeng sena, re tla bua hanyane ka ho beha leihlo litsamaiso tsa polokelo tsa IBM Storwize le lits'ebetso tse ling tsa polokelo tse tšehetsang liprothokholo tsa CIM / WBEM. Tlhokahalo ea tlhahlobo e joalo e siiloe kantle ho masakaneng; re tla nka sena e le axiom. Re tla sebelisa Zabbix joalo ka mokhoa oa ho beha leihlo.

Liphetolelong tsa morao-rao tsa Zabbix, k'hamphani e ile ea qala ho ela hloko haholo litempele - li-templates li ile tsa qala ho hlaha bakeng sa lits'ebeletso tsa ho shebella, DBMS, hardware hardware (IMM / iBMC) ka IPMI. Tlhokomelo ea polokelo e ntse e le ka ntle ho lebokose, kahoo ho kopanya tlhahisoleseding e mabapi le boemo le ts'ebetso ea likarolo tsa polokelo ho Zabbix, o hloka ho sebelisa li-templates tse tloaelehileng. Ke u hlokomelisa e 'ngoe ea litempele tsena.

Pele, khopolo e nyenyane.

Ho fihlella boemo le lipalo-palo tsa polokelo ea IBM Storwize, o ka sebelisa:

  1. Mekhoa ea CIM / WBEM;
  2. API E RATLE (e tšehetsoa ke IBM Storwize ho qala ka software version 8.1.3);
  3. Lifi tsa SNMP (sete e lekanyelitsoeng ea maraba, ha ho lipalo-palo);
  4. Khokahano ea SSH e lateloa ke remoutu e loketse bakeng sa ho itlosa bolutu bash scripting.

Ba nang le thahasello ba ka ithuta haholoanyane ka mekhoa e fapaneng ea ho beha leihlo likarolong tse amehang tsa litokomane tsa barekisi, hammoho le tokomaneng. IBM Spectrum Virtualize scripting.

Re tla sebelisa liprothokholo tsa CIM / WBEM, tse re lumellang ho fumana litekanyo tsa sistimi ea polokelo ntle le liphetoho tse kholo ho software bakeng sa lits'ebetso tse fapaneng tsa polokelo. Li-protocol tsa CIM/WBEM li sebetsa ho latela Specifications Initiative Management Initiative (SMI-S). The Storage Management Initiative - Tlhaloso e ipapisitse le maemo a bulehileng CIM (Mohlala oa Boitsebiso bo Tloaelehileng) и WBEM (Taolo ea Khoebo e Thehiloeng Inthaneteng)hlalositsoe Sehlopha sa Mosebetsi oa Tsamaiso e Ajoang.

WBEM e sebetsa ka holim'a protocol ea HTTP. Ka WBEM, u ka sebetsa eseng feela ka litsamaiso tsa polokelo, empa hape le li-HBA, li-switches, le lilaeborari tsa litheipi.

Ho ea ka SMI Architecture и Etsa qeto ea Infrastructure, karolo ea mantlha ea ts'ebetsong ea SMI ke seva ea WBEM e sebetsanang le likopo tsa CIM-XML ho tsoa ho bareki ba WBEM (tabeng ea rona, ho tsoa ho lingoliloeng tsa ho beha leihlo):

Ho beha leihlo polokelo ea IBM Storwize ka Zabbix

CIM ke mohlala o shebaneng le ntho e thehiloeng ho Unified Modeling Language (UML).
Lintho tse laoloang li hlalosoa e le lihlopha tsa CIM tse nang le thepa le mekhoa ea ho emela lintlha tse laoloang le ts'ebetso.

Ho ea ka www.snia.org/pywbem, ho fihlella polokelo ka CIM / WBEM, o ka sebelisa PyWBEM, laebrari ea mohloli o bulehileng o ngotsoeng ka Python e fanang ka bahlahisi le batsamaisi ba tsamaiso ka ts'ebetsong ea protocol ea CIM ho fihlella lintho tsa CIM le ho etsa mesebetsi e sa tšoaneng ka seva sa WBEM se sebetsang ho latela SMI. -S kapa litlhaloso tse ling tsa CIM.

Ho hokela ho seva sa WBEM, sebelisa sehahi sa sehlopha WBEMConnection:

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

Ena ke khokahanyo ea sebele, hobane CIM-XML/WBEM e matha holim'a HTTP, khokahanyo ea sebele e etsahala ha mekhoa e bitsoa mohlala oa sehlopha sa WBEMConnection. Ho latela IBM System Storage SAN Volume Controller le Storwize V7000 Best Practices and Performance Guidelines (Mohlala C-8, leq. 412), re tla sebelisa "root/ibm" e le sebaka sa mabitso sa CIM bakeng sa polokelo ea IBM Storwize.

Ka kopo hlokomela hore molemong oa ho bokella lipalo-palo ho protocol ea CIM-XML/WBEM, u tlameha ho kenyelletsa mosebelisi sehlopheng se loketseng sa ts'ireletso. Ho seng joalo, ha u etsa lipotso tsa WBEM, tlhahiso ea litšoaneleho tsa mohlala tsa sehlopha e tla be e se na letho.

Ho fihlella lipalo-palo tsa polokelo, mosebelisi eo moetsi a bitsoang tlas'a eona WBEMConnection(), e tlameha ho ba le bonyane RestrictedAdmin (e fumanehang bakeng sa code_level> 7.8.0) kapa Administrator (ha e khothalletsoe ka mabaka a tšireletso).

Re hokela ho sistimi ea polokelo ka SSH mme re sheba linomoro tsa sehlopha:

> 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    

Kenya mosebelisi oa zabbix sehlopheng seo u se batlang:

> chuser -usergrp 5 zabbix

Ho phaella moo, ho latela IBM System Storage SAN Volume Controller le Storwize V7000 Best Practices and Performance Guidelines (leq. 415), o tlameha ho nolofalletsa pokello ea lipalo-palo tsamaisong ea polokelo. Kahoo, ho bokella lipalo-palo motsotso o mong le o mong:

> startstats -interval 1 

Re hlahloba:

> lssystem | grep statistics
statistics_status on
statistics_frequency 1

Ho fumana litlelase tsohle tse teng tsa polokelo, o tlameha ho sebelisa mokhoa oa EnumerateClassNames().

Mohlala:

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

Ho fumana boleng ba liparamente tsa sistimi ea polokelo, mokhoa EnumerateInstances() Sehlopha sa WBEMConnection se khutlisa lethathamo la maemo CIMINstance().

Mohlala:

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))

Bakeng sa litlelase tse ling tse nang le liketsahalo tse ngata, joalo ka IBMTSSVC_StorageVolume, potso e felletseng ea maemo ohle e ka tsamaea butle. E ka hlahisa lintlha tse ngata tse lokelang ho lokisoa ke tsamaiso ea polokelo, e fetisetsoang holim'a marang-rang le ho sebetsoa ke script. Bakeng sa mokhoa o joalo, ho na le mokhoa ExecQuery(), e leng se u lumellang hore u fumane feela thepa ea mohlala oa sehlopha seo re se thahasellang. Mokhoa ona o kenyelletsa ho sebelisa puo ea potso e kang SQL, ebang ke CIM Query Language (DMTF:CQL) kapa WBEM Query Language (WQL), ho botsa lintho tsa polokelo ea CIM:

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

Ho fumana hore na ke lihlopha life tseo re li hlokang ho fumana litekanyo tsa lintho tsa polokelo, re bala litokomane, mohlala Mokhoa oa mekhoa ea tsamaiso ea 'mapa ho ea ho likhopolo tsa CIM.

Kahoo, ho fumana liparamente (eseng li-counter counters) tsa li-disk tsa 'mele (Disk Drives), re tla botsa Sehlopha sa IBMTSSVC_DiskDrive, ho fumana li-parameter tsa Volumes - Sehlopha sa IBMTSSVC_StorageVolume, ho fumana mekhahlelo e mengata - Sehlopha sa IBMTSSVC_Array, ho fumana li-parameter tsa MDisks - Sehlopha sa IBMTSSVo joalo-joalo.

U ka bala ka tshebetso Litšoantšo tse sebetsang tsa moemeli oa Common Information Model (haholo-holo - Thibela boemo bo tlase ba tšebetso ea seva) le IBM System Storage SAN Molaoli oa Volume le Storwize V7000 Mekhoa e Molemo ka ho Fetisisa le Tataiso ea Ts'ebetso (Mohlala C-11, leqepheng la 415).

Ho fumana lipalo-palo tsa polokelo ea Meqolo, u lokela ho hlakisa IBMTSSVC_StorageVolumeStatistics e le boleng ba paramethara ea ClassName. Thepa ea sehlopha sa IBMTSSVC_StorageVolumeStatistics e hlokahalang bakeng sa ho bokella lipalo-palo e ka fumanoa ho Lipalopalo tsa Node.

Hape, bakeng sa tlhahlobo ea ts'ebetso, u ka sebelisa lihlopha tsa IBMTSSVC_BackendVolumeStatistics, IBMTSSVC_DiskDriveStatistics, IBMTSSVC_NodeStatistics.

Ho ngola lintlha ho sistimi ea ho shebella, re tla sebelisa mochini maraba a zabbix, e kenngoa ts'ebetsong ka python ka module py-zabbix. Sebopeho sa lihlopha tsa polokelo le thepa ea tsona li tla kenngoa bukeng ea mantsoe ka mokhoa oa JSON.

Re kenya template ho seva sa Zabbix, etsa bonnete ba hore seva sa ho shebella se na le monyetla oa ho boloka polokelo ka protocol ea WEB (TCP / 5989), beha lifaele tsa tlhophiso, litokomane tsa ho lemoha le ho beha leihlo ho seva sa tlhokomelo. Ka mor'a moo, eketsa mangolo ho sehlophisi. Ka lebaka leo: re fumana lintho tsa polokelo (li-arrays, li-disks tsa 'mele le tsa sebele, li-enclosure, le tse ling tse ngata), re li fetisetsa ho tse sibollotsoeng ke Zabbix, bala boemo ba li-parameter tsa bona, bala lipalo-palo tsa ts'ebetso (li-perfomance counters), fetisetsa tsena tsohle ho tse lumellanang. Lintho tsa Zabbix tsa template ea rona.

Template ea Zabbix, python scripts, sebopeho sa lihlopha tsa polokelo le thepa ea tsona, hammoho le mehlala ea lifaele tsa tlhophiso, e ka ba teng. fumana mona.

Source: www.habr.com

Eketsa ka tlhaloso