LSI RAID-massiivide inventuur GLPI-s

LSI RAID-massiivide inventuur GLPI-s
Oma töös kogen tihti jĂ€rjepidevat muret teabe puudumise ĂŒle infrastruktuuri osas ning suureneva serverite arvu korral muutub see tĂ”eliseks piinaks. Isegi kui ma töötasin vĂ€ikestes organisatsioonides, soovis ma alati teada, mis kus asub, kuhu on midagi ĂŒhendatud, kes vastutab millise riistvara vĂ”i teenuse eest ning mis kĂ”ige tĂ€htsam - fikseerida kĂ”ik muudatused selles osas. Uude kohta tulles ja silmitsi seistes mĂ”ne probleemiga, kulub tohutult aega just selle teabe leidmiseks. JĂ€rgnevalt rÀÀgin, millega ma RuVDS-is silmitsi seisma pidin ja kuidas ma lahendasin artikli pealkirjas vĂ€ljendatud probleemi.

Eellugu

Olles ettevĂ”tte tasemel administraator, oli mul vĂ€he kogemusi andmekeskustes, kuid nĂ€gin korra silmanurgast RackTables'i. Seal oli selgelt esitatud kapp koos kĂ”igi serverite, UPS-ide, lĂŒlitite ja nende vaheliste ĂŒhendustega. RuVDS-is sellist sĂŒsteemi ei olnud, vaid ainult Exceli/paberifailid serverite, nende osade, rackide numbrite jne kohta. Sellise lĂ€henemisega on vĂ€ga raske jĂ€lgida muudatusi ja töötada vĂ€ikeste komponentidega. Ning peamine ja tihti vahetatav tarvik serverite puhul on kettad. VĂ€ga oluline on hoida ajakohast teavet ketaste oleku ja nende strateegilise varu kohta. Kui ketas kaob RAID-massiivist ja ei ole kiiret asendust, vĂ”ib see lĂ”ppkokkuvĂ”ttes pĂ”hjustada katastroofilisi tagajĂ€rgi. SeetĂ”ttu on meil hĂ€dasti vaja sĂŒsteemi, mis jĂ€lgib ketaste asukohta ja nende seisundit, et mĂ”ista, millest vĂ”ib puudust tunda ja milliseid mudeleid tuleb soetada.

Abiks tuli GLPI, avatud lÀhtekoodiga toode, mis on loodud IT-osakondade töö parandamiseks ja viimiseks ITIL-i ideaalidesse. Lisaks seadmete inventuurimisele ja rackide haldamisele on seal teadmusbaas, teeninduslaud, dokumentide haldamine ja palju muud. GLPI-l on palju pluginaid, sealhulgas FusionInventory ja OCS Inventory, mis vÔimaldavad automaatselt koguda teavet arvutite ja teiste seadmete kohta agentide ja SNMP kaudu. GLPI ja pluginate paigaldamise kohta saate rohkem lugeda teistes artiklites, kÔige parem on - ametlikust dokumentatsioonist. Saame selle paigaldada meie hostingus juba valmis ƥabloonile LAMP.

Kuid pÀrast agendi deployimist avame GLPI-s arvuti komponendid ja nÀeme sellist pilti:

LSI RAID-massiivide inventuur GLPI-s
Probleem on selles, et ĂŒkski pistikprogramm ei saa LSI RAID-massiivide fĂŒĂŒsiliste ketaste teavet nĂ€ha. Olen nĂ€inud, kuidas see kĂŒsimus Zabbixis PowerShelli skripti abil lahendatakse. lsi-raid.ps1 otsustasin kirjutada sarnase, et edastada teavet GLPI-le.
Massiivi ketaste teavet saab tootja kontrolleri utiliitide abil, LSI puhul on see StorCLI. Sellega saab andmed JSON-formaadis, tÔlgendada ja saata GLPI API-sse. Ketast seome arvutitega, mille on juba loonud FusionInventory. Skripti korduva kÀivitamise korral uuendab see ketaste andmeid ja lisab uusi. Ise skript Send-RAIDtoGLPI.ps1 asub siin GitHubis. JÀtkan edasise kasutamise Ôpetamisega.

Mida on vaja

  1. GLPI versioon 9.5.1 (testimiseks kasutatakse seda versiooni)
  2. Pistikprogramm FusionInventory ja agent Windowsi jaoks
  3. Windows 2012 R2 (ja uuem) hostimisoperatsioonisĂŒsteemina vĂ”i management-VM, millel on kontroller ĂŒhendatud, PowerShelli versioon 4 vĂ”i uuem
  4. Installeeritud MegaRAID draiver
  5. PowerShelli moodul — PSGLPI
  6. GLPIs peab olema Admini profiiliga konto liidese kaudu autentimiseks, genereeritud UserToken ja AppToken

Oluline punkt. GLPIs on mingil pĂ”hjusel 2 erinevat moodulit ketaste jaoks, kuid pole omadust „kandja tĂŒĂŒp”. SeetĂ”ttu otsustasin ketaste omaduste HDD ja SSD registreerimiseks kasutada rippmenĂŒĂŒd „Ketta mudelid” (front/devicemodel.php?itemtype=DeviceHardDriveModel). Skripti jaoks on vajalik, et GLPIs oleks need vÀÀrtused olemas, vastasel juhul ei saa ta ketta mudeli andmeid salvestada. SeetĂ”ttu tuleb esmalt sisestada HDD ja seejĂ€rel SSD tĂŒhjasse nimekirja, et nende elementide ID-d oleksid andmebaasis 1 ja 2. Kui on teisi, asendage see rida skriptis Send-RAIDtoGLPI.ps1 pĂ€rast HDD ja SSD vastavate ID-idega 1 ja 2.

deviceharddrivemodels_id = switch ($MediaType) { "HDD" { "1" }; "SSD" { "2" }; default { "" } }

Kui te ei soovi sellega vaeva nĂ€ha vĂ”i kasutate seda rippmenĂŒĂŒd muul viisil, vĂ”ite selle rea skriptist lihtsalt kustutada.

Peate ka lisama ketaste staatuseid „Elemendi staatused” (front/state.php). Olen lisanud staatuse „MediaError” (kui on olnud vĂ€hemalt ĂŒks ketta ligipÀÀsu tĂ”rge) ja „OK”, ridu skriptis, kus edastatakse nende ID-d, „2” „OK” jaoks ja „1” „MediaError” jaoks:

states_id = switch ($MediaError) { 0 { "2" }; { $_ -gt 0 } { "1" } }

Need staatuseid on mugavuse huvides, kui need omadused pole vajalikud, vÔite ka selle rea tÀielikult kustutada.

Ärge unustage skriptis oma muutujaid mĂ€rkida. $GlpiCreds peab sisaldama GLPI API serveri URL-i, UserToken'i ja AppToken'i.

Mis on skriptis

Skripti suur JSON-parsimine ja pikk if-ute sisemine struktuur muudavad selle lugemise keerukaks, seetÔttu kirjeldan selle loogikat siin.

Esimese kÀivitamise ajal lÀbib skript kÔik kontrollerid ja otsib GLPI andmebaasist kettaid seerianumbrite pÔhjal. Kui seerianumbrit ei leita, otsitakse mudelit. Kui ka mudelit ei leita, lisatakse uue ketta mudel GLPI-sse ja ketas kantakse andmebaasi.

Iga jĂ€rgmise kĂ€ivitusega ĂŒritab skript avastada uusi kettaid, kuid puuduvate eemaldamine ei ole tema vĂ”imekuses, seega tuleb see teha kĂ€sitsi.

NĂ€idis rakendusest

Skripti reposse on lisatud skript Deploy-Send-RAIDtoGLPI.ps1, mis tÔmbab vajalikud failid ZIP-arhivina meie GLPI serverist ja paigaldab need igale hostile.

Failide kopeerimise jĂ€rel installib skript FusionInventory agenti, mis seadistatakse igapĂ€evaseks ĂŒlesandeks, ja loob sarnase ĂŒlesande meie skripti jaoks. PĂ€rast edukat rakendamist saame lĂ”puks nĂ€ha kettaid GLPI-s arvuti 'Komponendid' jaos.

Tulemus

NĂŒĂŒd, kui siseneme GLPI-sse ja valime menĂŒĂŒst 'Seaded' -> 'Komponendid' -> 'KĂ”vakettad', saame klĂ”psata ketaste mudelitel ja nĂ€ha nende arvu, et mĂ”ista, mida peame ostma.

LSI RAID-massiivide inventuur GLPI-s
LSI RAID-massiivide inventuur GLPI-s

Allikas: habr.com

Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid | ProHoster