በዚህ ጽሑፍ ውስጥ ስለ IBM Storwize ማከማቻ ስርዓቶች እና የ CIM/WBEM ፕሮቶኮሎችን የሚደግፉ ሌሎች የማከማቻ ስርዓቶችን ስለመቆጣጠር ትንሽ እንነጋገራለን. የእንደዚህ አይነት ክትትል አስፈላጊነት ከስሌቱ ውጭ ነው፣ ይህንን እንደ አክሲየም እንቆጥረዋለን። ዛቢቢክስን እንደ የክትትል ስርዓት እንጠቀማለን።
በ Zabbix የቅርብ ጊዜ ስሪቶች ውስጥ ኩባንያው ለአብነት የበለጠ ትኩረት መስጠት ጀመረ - አብነቶች ለክትትል አገልግሎቶች ፣ DBMS ፣ Servers hardware (IMM/iBMC) በ IPMI በኩል መታየት ጀመሩ። የማጠራቀሚያ ስርዓት ቁጥጥር አሁንም ከቅንብርቦቹ ውጭ ነው, ስለዚህ ስለ ማከማቻ ክፍሎች ሁኔታ እና አፈጻጸም መረጃ ወደ Zabbix ለማዋሃድ, ብጁ አብነቶችን መጠቀም ያስፈልግዎታል. ከእነዚህ አብነቶች ውስጥ አንዱን ወደ እርስዎ ትኩረት አመጣለሁ።
በመጀመሪያ, ትንሽ ንድፈ ሐሳብ.
የIBM Storwize ማከማቻ ስርዓቶችን ሁኔታ እና ስታቲስቲክስን ለመድረስ የሚከተሉትን መጠቀም ይችላሉ፡-
- CIM/ደብሊውቢኤም ፕሮቶኮሎች;
- (ከሶፍትዌር ስሪት 8.1.3 ጀምሮ በ IBM Storwize ውስጥ የተደገፈ);
- SNMP ወጥመዶች (የተገደበ ወጥመዶች ስብስብ ፣ ምንም ስታቲስቲክስ የለም);
- በኤስኤስኤች እና ከዚያ በርቀት ይገናኙ .
ፍላጎት ያላቸው ስለ ተለያዩ የክትትል ዘዴዎች በሚመለከታቸው የአቅራቢ ሰነዶች ክፍሎች እና እንዲሁም በሰነዱ ውስጥ የበለጠ ማወቅ ይችላሉ .
ለተለያዩ የማከማቻ ስርዓቶች ጉልህ የሶፍትዌር ለውጦች ሳያደርጉ የማከማቻ ስርዓት ኦፕሬቲንግ መለኪያዎችን ለማግኘት የሚያስችለንን የCIM/WBEM ፕሮቶኮሎችን እንጠቀማለን። የCIM/ደብሊውቢኤም ፕሮቶኮሎች የሚሠሩት በዚህ መሠረት ነው። . የማከማቻ አስተዳደር ተነሳሽነት - ዝርዝር መግለጫ በክፍት ደረጃዎች ላይ የተመሰረተ ነው и ፣ ተወስኗል .
WBEM በኤችቲቲፒ ፕሮቶኮል ላይ ይሰራል። በWBEM በኩል ከማከማቻ ስርዓቶች ጋር ብቻ ሳይሆን ከHBAs፣ switches እና የቴፕ ቤተ-መጻሕፍት ጋር መስራት ይችላሉ።
እንደ እና የኤስኤምአይ አተገባበር ዋናው አካል የWBEM አገልጋይ ሲሆን ከደብሊውቢኤም ደንበኞች CIM-XML ጥያቄዎችን (በእኛ ሁኔታ ከክትትል ስክሪፕቶች) ያስኬዳል፡

CIM በተዋሃደ የሞዴሊንግ ቋንቋ (UML) ላይ የተመሰረተ ነገር-ተኮር ሞዴል ነው።
የሚተዳደሩ አካላት የሚተዳደር ውሂብ እና ተግባርን የሚወክሉ ንብረቶች እና ዘዴዎች ያላቸው እንደ CIM ክፍሎች ይገለጻሉ።
እንደ የማከማቻ ስርዓቶችን በCIM/WBEM በኩል ለመድረስ PyWBEMን መጠቀም ይችላሉ - በ Python ውስጥ የተጻፈ ክፍት ምንጭ ላይብረሪ ፣ ይህም ለገንቢዎች እና የስርዓት አስተዳዳሪዎች የሲአይኤም ዕቃዎችን ለመድረስ እና በ WBEM አገልጋይ ውስጥ በሚሰራው የ CIM ፕሮቶኮል ትግበራ ይሰጣል ። በ SMI-S ወይም በሌላ የ CIM ዝርዝሮች መሠረት.
ከWBEM አገልጋይ ጋር ለመገናኘት የክፍል ግንባታውን እንጠቀማለን። :
conn = pywbem.WBEMConnection(server_uri, (self.login, self.password),
namespace, no_verification=True)
ይህ ምናባዊ ግንኙነት ነው፣ CIM-XML/WBEM በኤችቲቲፒ ላይ ስለሚሰራ፣ ትክክለኛው ግንኙነት የሚከናወነው በWBEMኮኔክሽን ክፍል ምሳሌ ላይ ዘዴዎች ሲጠሩ ነው። በ IBM System Storage SAN Volume Controller እና Storwize V7000 ምርጥ ልምምዶች እና የአፈጻጸም መመሪያዎች (ምሳሌ C-8፣ገጽ 412) መሰረት "root/ibm" እንደ CIM የስም ቦታ ለ IBM Storwize ማከማቻ ስርዓት እንጠቀማለን።
እባክዎን በCIM-XML/WBEM ፕሮቶኮል በኩል ስታቲስቲክስን ለመሰብሰብ ተጠቃሚውን በተገቢው የጥበቃ ቡድን ውስጥ ማካተት አለብዎት። ያለበለዚያ የWBEM መጠይቆችን በሚፈጽምበት ጊዜ የክፍል ምሳሌ ባህሪዎች ውፅዓት ባዶ ይሆናል።.
የማከማቻ ስታቲስቲክስን ለመድረስ ገንቢው የተጠራበት ተጠቃሚ ቢያንስ RestrictedAdmin (ለ code_level> 7.8.0 የሚገኝ) ወይም የአስተዳዳሪ መብቶች (ለደህንነት ሲባል የማይመከር) ሊኖረው ይገባል።
ከማከማቻ ስርዓቱ ጋር በSSH በኩል እንገናኛለን እና የቡድን ቁጥሮችን እንይ፡-
> 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
የ zabbix ተጠቃሚን ወደሚፈለገው ቡድን ያክሉ፡
> chuser -usergrp 5 zabbix
በተጨማሪም፣ በ IBM System Storage SAN Volume Controller እና Storwize V7000 ምርጥ ልምዶች እና የአፈጻጸም መመሪያዎች (ገጽ 415) መሰረት በማከማቻ ስርዓቱ ላይ የስታቲስቲክስ ስብስብን ማንቃት አለቦት። ስለዚህ፣ በየደቂቃው ስታቲስቲክስን ለመሰብሰብ፡-
> startstats -interval 1
እንፈትሻለን
> lssystem | grep statistics
statistics_status on
statistics_frequency 1
ሁሉንም ነባር የማከማቻ ክፍሎችን ለማግኘት የEnumerateClassNames() ዘዴን መጠቀም አለቦት።
ለምሳሌ:
classnames = conn.EnumerateClassNames(namespace='root/ibm', DeepInheritance=True)
for classname in classnames:
print (classname)
ዘዴው የማጠራቀሚያ ስርዓት መለኪያዎችን ዋጋዎችን ለማግኘት ጥቅም ላይ ይውላል ክፍል WBEMCግንኙነት፣ የአጋጣሚዎች ዝርዝርን በመመለስ ላይ .
ለምሳሌ:
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))
እንደ IBMTSSVC_StorageVolume ያሉ ብዙ ቁጥር ያላቸውን አጋጣሚዎች ለያዙ አንዳንድ ክፍሎች የሁሉም አጋጣሚዎች ሙሉ መጠይቅ በጣም አዝጋሚ ሊሆን ይችላል። በማከማቻ ስርዓቱ ተዘጋጅቶ በኔትወርኩ ሊተላለፍ እና በስክሪፕቱ ሊሰራ የሚገባውን ትልቅ መጠን ያለው መረጃ ማመንጨት ይችላል። እንዲህ ላለው ጉዳይ አንድ ዘዴ አለ , ይህም እኛን የሚስቡን የክፍል ምሳሌ ባህሪያትን ብቻ እንድናገኝ ያስችለናል. ይህ ዘዴ የCIM ማከማቻ ዕቃዎችን ለመጠየቅ SQL-እንደ መጠይቅ ቋንቋ፣ CIM መጠይቅ ቋንቋ (DMTF:CQL) ወይም WBEM መጠይቅ ቋንቋ (WQL) መጠቀምን ያካትታል።
request = 'SELECT Name FROM IBMTSSVC_StorageVolumeStatistics'
objects_perfs_cim = wbem_connection.ExecQuery('DMTF:CQL', request)
የማከማቻ ዕቃዎችን መለኪያዎች ለማግኘት የትኞቹን ክፍሎች እንደሚፈልጉ ለመወሰን, ሰነዶቹን ያንብቡ, ለምሳሌ .
ስለዚህ የአካላዊ ዲስኮች መለኪያዎችን (የአፈጻጸም ቆጣሪዎችን ሳይሆን) ለማግኘት የክፍል IBMTSSVC_DiskDriveን እንመርጣለን ፣የጥራዞች መለኪያዎችን ለማግኘት - ክፍል IBMTSSVC_StorageVolume ፣ የድርድር መለኪያዎችን ለማግኘት - ክፍል IBMTSSVC_Array ፣ MDisks መለኪያዎችን ለማግኘት - ክፍል IBMTSSVC_Backend.Volume ወዘተ
ለአፈጻጸም እርስዎ ማንበብ ይችላሉ (በተለይ - ) እና የ IBM ሲስተም ማከማቻ SAN ድምጽ መቆጣጠሪያ እና ስቶርዊዝ ቪ7000 ምርጥ ልምዶች እና የአፈጻጸም መመሪያዎች (ምሳሌ C-11፣ ገጽ 415)።
የጥራዞች ማከማቻ ስታቲስቲክስን ለማግኘት፣ IBMTSSVC_StorageVolumeStatistics እንደ የClassName መለኪያ እሴት መግለጽ አለቦት። ስታቲስቲክስን ለመሰብሰብ አስፈላጊ የሆነው የIBMTSSVC_StorageVolumeStatistics ክፍል ባህሪያት በ ውስጥ ሊታዩ ይችላሉ። .
እንዲሁም፣ ለአፈጻጸም ትንተና ክፍሎቹን IBMTSSVC_Backend VolumeStatistics፣ IBMTSSVC_DiskDriveStatistics፣ IBMTSSVC_NodeStatistics መጠቀም ይችላሉ።
በክትትል ስርዓቱ ውስጥ መረጃን ለመመዝገብ ዘዴውን እንጠቀማለን , በሞጁል ውስጥ በፓይቶን ውስጥ የተተገበረ . የማከማቻ ስርዓቶች ክፍሎችን እና ንብረቶቻቸውን መዋቅር በJSON ቅርጸት መዝገበ ቃላት ውስጥ እናስቀምጣለን።
አብነቱን ወደ ዛቢክስ አገልጋይ እንሰቅላለን፣ የክትትል አገልጋዩ የማከማቻ ስርዓቱን በWEB ፕሮቶኮል (TCP/5989) በኩል መድረስ እና የማዋቀሪያ ፋይሎችን፣ የማወቂያ እና የክትትል ስክሪፕቶችን በክትትል አገልጋዩ ላይ እናስቀምጣለን። በመቀጠል የስክሪፕት ማስጀመሪያውን ወደ መርሐግብር አውጪው ያክሉ። በውጤቱም: የማጠራቀሚያ ዕቃዎችን (ድርድሮች, አካላዊ እና ቨርቹዋል ዲስኮች, ማቀፊያዎች እና ብዙ ተጨማሪ) እናገኛለን, ወደ ዛቢቢክስ ግኝቶች ያስተላልፉ, የመለኪያዎቻቸውን ሁኔታ ያንብቡ, የአፈፃፀም ስታቲስቲክስን (የአፈፃፀም ቆጣሪዎችን) ያንብቡ, ይህን ሁሉ ወደ ተጓዳኝ Zabbix ያስተላልፉ. የእኛ አብነት ዕቃዎች።
የዛቢክስ አብነት ፣ የፓይቶን ስክሪፕቶች ፣ የማከማቻ ክፍሎች አወቃቀር እና ባህሪያቸው ፣ እንዲሁም የማዋቀሪያ ፋይሎች ምሳሌዎች ፣ ይችላሉ .
ምንጭ: hab.com
