LSI RAID-massiivide inventuur GLPI-s

LSI RAID-massiivide inventuur GLPI-s
Oma töös tunnen sageli muret infrastruktuuri teabe puudumise ĂŒle ja kui serverite arv suureneb, muutub see tĂ”eliseks piinamiseks. I even when I administered in small organizations, I always wanted to know where everything was placed, where it was plugged in, who was responsible for which hardware or service, and most importantly — to keep track of all these changes. When you arrive at a new place and encounter some incident, a lot of time is spent just searching for this information. Next, I will share what I've encountered at RuVDS and how I resolved the issue mentioned in the title.

Eelalugu

Olles ettevĂ”tte administraator, oli mul vĂ€he kogemusi andmekeskustes, kuid nurga pealt nĂ€gin RackTables'i. Seal oli selgelt esitatud rack koos kĂ”igi serverite, UPS'ide, lĂŒlititega ja kĂ”ikide ĂŒhendustega nende vahel. RuVDS-is ei olnud sarnast sĂŒsteemi, vaid ainult Exceli/paberifailid serverite, nende osade, rack-numbrite ja muu sarnase teabega. Sellise lĂ€henemisega on vĂ€ga raske jĂ€lgida muudatusi ja vĂ€iksemaid komponente. LĂ”ppude lĂ”puks on serverite kĂ”ige olulisem ja sageli vahetatav tarvik — kettad. On ÀÀrmiselt oluline hoida ajakohast teavet kettaste seisundi ja strateegilise varu kohta. Kui ketas kaob RAID-massiivis ja sellele ei ole kiiret asendust, vĂ”ib see lĂ”puks pĂ”hjustada tĂ”siseid tagajĂ€rgi. SeetĂ”ttu on meil vĂ€ga vajalik sĂŒsteem, mis jĂ€lgib kettaste asukohta ja seisundit, et mĂ”ista, millest vĂ”ib puudust tunda ja milliseid konkreetseid mudeleid on vaja osta.

GLPI, avatud lĂ€htekoodiga toode, on loodud IT-osakondade töö parandamiseks ja ITILi ideaalide saavutamiseks. See sisaldab varase inventeerimist ja teenuse juhtimist, samuti teadmusbaasi, teenusekeskust, dokumentide haldust ja palju muud. GLPI-l on palju pluginaid, sealhulgas FusionInventory ja OCS Inventory, mis vĂ”imaldavad automaatselt koguda teavet arvutite ja muude seadmete kohta agentide ja SNMP kaudu. TĂ€iendavaid juhiseid GLPI ja pluginade installimiseks leiate teistest artiklitest, parim on — ametlikus dokumentatsioonis. Saate selle meie hostimises installida valmis ĆĄabloonile LAMP.

Kuid pÀrast agendi juurutamist avame GLPI-s arvuti komponendid ja nÀeme jÀrgmist:

LSI RAID-massiivide inventuur GLPI-s
Probleem on selles, et ĂŒkski pluginitest ei saa nĂ€ha fĂŒĂŒsiliste ketaste teavet LSI RAID-massiivides. NĂ€gin, kuidas see probleem on lahendatud Zabbixis PowerShelli skripti abil lsi-raid.ps1 otsustasin kirjutada analoogse skripti info edastamiseks GLPI-sse.
Andmete diskide kohta RAID-massiivis saab hankida tootja tööriistade abil, LSI puhul on see StorCLI. Sealt saab andmed JSON-formaadis, mida saab töötlema panna ja edastada GLPI API-le. Diskid seotakse arvutitega, mille on juba loonud FusionInventory. Uuesti skripti kÀivitamisel vÀrskendab see andmeid diskide kohta ja lisab uusi. Skript Send-RAIDtoGLPI.ps1 asub siin GitHubis. JÀrgmisena selgitan, kuidas seda kasutada.

Mida on vaja

  1. GLPI versioon 9.5.1 (sellel testiti)
  2. Plugin FusionInventory ja agent Windowsi all
  3. Windows 2012 R2 (ja uuem) kĂŒlalissĂŒsteemina vĂ”i management-VM, millesse on ĂŒhendatud kontroller, PowerShell versioon 4 vĂ”i uuem
  4. Paigaldatud MegaRAID draiver
  5. PowerShelli moodul — PSGLPI
  6. GLPI-s konto Admin profiiliga API kaudu autentimiseks, genereeritud UserToken ja AppToken

Oluline tĂ€helepanek. GLPI-s on mingil pĂ”hjusel kaks erinevat ĂŒksust ketta mudeli jaoks, kuid ei ole omadust „andmekandja tĂŒĂŒp”. SeetĂ”ttu otsustasin HDD ja SSD omaduse salvestamiseks kasutada rippmenĂŒĂŒd „Ketasemud” (front/devicemodel.php?itemtype=DeviceHardDriveModel). Skripti toimimiseks on vajalik, et GLPI andmebaasis oleks need vÀÀrtused, vastasel juhul ei saa see ketasmudelist andmeid salvestada. SeetĂ”ttu tuleb kĂ”igepealt lisada see tĂŒhi loend HDD ja seejĂ€rel SSD, et nende elementide ID-d andmebaasis oleksid 1 ja 2. Kui tuleb teisi, siis asendage selle skripti Read-RAIDtoGLPI.ps1 pĂ€rast HDD ja SSD kohaliku ID-iga: 1 ja 2.

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

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

Samuti tuleb lisada ketaste olekud „Elemendi olekud” (/front/state.php). Olen lisanud olekud „MediaError” (kui esines vĂ€hemalt ĂŒks ketta juurde pÀÀsemise viga) ja „OK”, rida skripti, kus nende ID-d edastatakse, „2” „OK” jaoks ja „1” „MediaError” jaoks:

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

Needless statuses are for convenience; if you don't need these properties, you can remove this line entirely.

Don't forget to specify your variables in the script. $GlpiCreds must contain the URL to the GLPI API server, UserToken, and AppToken.

What’s in the script

Due to bulky JSON parsing and a multitude of if statements, the script is hard to read, so I will describe its logic here.

During the first run on the host, the script scans all controllers and searches for disks in the GLPI database by serial numbers; if it doesn't find any, it searches for the model. If it doesn't find the model either, it adds the new disk model to GLPI and records this disk in the database.

With each new pass, the script will attempt to detect new disks, but it cannot remove those that are missing, so this will have to be done manually.

Deployment example

In the script repository, there is a script Deploy-Send-RAIDtoGLPI.ps1, which will download a ZIP archive with the necessary files from our GLPI server and deploy them on each host.

Failide kopeerimise jĂ€rel installib skript FusionInventory agendi, mis kĂ€ivitub igapĂ€evase ĂŒlesandena, ning loob sellele ĂŒlesande ka meie skripti jaoks. PĂ€rast eduka juurutamise lĂ”petamist nĂ€eme lĂ”puks kompuutri «Komponendid» osas kettaid GLPI-s.

Tulemus

NĂŒĂŒd, kui sisse logime GLPI-sse menĂŒĂŒs «Seaded» -> «Komponendid» -> «Ketas», saame klĂ”psata ketaste mudelitel ja vaadata nende arvu, et mĂ”ista, mida meil on vaja osta.

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

Allikas: habr.com

Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster