LSI RAID készlet a GLPI-ben

LSI RAID készlet a GLPI-ben
Munkám során gyakran tapasztalok rögeszméket az infrastruktúrával kapcsolatos információhiány miatt, és a kiszolgált szerverek számának növekedésével ez valódi kínzássá válik. Már kis szervezetek rendszergazdájaként mindig tudni akartam, hogy mi hol van, hova van bedugva, melyik hardverért vagy szolgáltatásért kik a felelősek, és ami a legfontosabb, hogy mindezek változásait rögzítsem. Amikor új helyre érkezik, és egy incidenssel találkozik, sok időt tölt az információ keresése. Ezután elmondom, mivel kellett szembenéznem a RuVDS-ben, és hogyan oldottam meg a címben jelzett problémát.

őstörténet

Vállalati adminisztrátorként kevés tapasztalatom volt adatközpontban, de megpillantottam a RackTables-t. Világosan megmutatta a rack-et az összes szerverrel, UPS-sel, kapcsolókkal és a köztük lévő összes kapcsolattal. A RuVDS-ben nem volt ilyen rendszer, hanem csak Excel/papír állományok voltak a szerverekről, egyes összetevőikről, rack számokról stb. Ezzel a megközelítéssel nagyon nehéz nyomon követni a kis alkatrészek változásait. De a szerverek legfontosabb és leggyakrabban cserélt fogyóeszközei a lemezek. Nagyon fontos, hogy naprakész információkat tartsunk fenn a lemezek állapotáról és stratégiai tartalékáról. Ha egy meghajtó meghibásodik egy RAID-tömbből, és nem cserélik ki gyorsan, az végzetes következményekhez vezethet. Ezért valóban szükségünk van egy olyan rendszerre, amely nyomon követi a lemezek helyét és állapotát, hogy megértsük, mi hiányzik, és milyen modelleket kell megvásárolnunk.

Megmentésére jött a GLPI, egy nyílt forráskódú termék, amelyet az IT-részlegek teljesítményének javítására és az ITIL-ideálokhoz való igazításra terveztek. Az eszközleltáron és az állványkezelésen kívül tudásbázissal, szervizpulttal, dokumentumkezeléssel és még sok mással is rendelkezik. A GLPI számos beépülő modullal rendelkezik, beleértve a FusionInventory-t és az OCS Inventory-t, amelyek lehetővé teszik, hogy automatikusan gyűjtsön információkat a számítógépekről és más eszközökről az ügynöktelepítésen és az SNMP-n keresztül. A GLPI és a bővítmények telepítéséről további cikkekben olvashat, a legjobb az egészben - hivatalos dokumentáció. Telepítheti tárhelyünkön egy kész sablonra LAMP.

Az ügynök telepítése után azonban megnyitjuk a számítógép-összetevőket a GLPI-ben, és ezt látjuk:

LSI RAID készlet a GLPI-ben
A probléma az, hogy egyik beépülő modul sem lát információt az LSI RAID tömbökben lévő fizikai lemezekről. Miután látta, hogyan oldható meg ez a probléma a PowerShell-szkript használatával történő figyeléshez a Zabbix rendszerben lsi-raid.ps1 Úgy döntöttem, hogy írok egy hasonlót, hogy információkat vigyek át a GLPI-be.
A tömbben lévő lemezekre vonatkozó adatok a vezérlő gyártójának segédprogramjaival szerezhetők be, LSI esetén ez a StorCLI. Belőle JSON formátumú adatokat kaphat, elemzi és továbbíthatja a GLPI API-nak. A lemezeket összekapcsoljuk a FusionInventory által már létrehozott számítógépekkel. Amikor ismét végrehajtja, a szkript frissíti a lemezeken lévő adatokat, és újakat ad hozzá. Maga a szkript a Send-RAIDtoGLPI.ps1 itt a GitHubon. A következőkben elmondom, hogyan kell használni.

Mi lesz szükség

  1. teheted 9.5.1 verzió (ezen tesztelve)
  2. Csatlakoztat Fusion Inventory és ügynök a Windows számára
  3. Windows 2012 R2 (és újabb) gazdagépként, vagy felügyeleti virtuális gépként vezérlővel, PowerShell 4-es vagy újabb verziója
  4. Telepített MegaRAID illesztőprogram
  5. PowerShell modul - PSGLPI
  6. Fiók a GLPI-ben Admin profillal a UserToken és AppToken által generált API-n keresztüli engedélyezéshez

Fontos pont. Valamilyen oknál fogva a GLPI 2 különböző entitást tartalmaz a lemezmodellhez, de nincs „médiatípus” tulajdonság. Ezért a HDD és az SSD tulajdonságainak rögzítéséhez úgy döntöttem, hogy a „Hard Drive Models” legördülő listát használom (front/devicemodel.php?itemtype=DeviceHardDriveModel). A szkriptnek rendelkeznie kell ezekkel az értékekkel a GLPI adatbázisban, különben nem tud adatokat írni a lemezmodellről. Ezért ehhez az üres listához először a HDD-t, majd az SSD-t kell hozzáadni, hogy ezen elemek azonosítója az adatbázisban 1 és 2 legyen. Ha vannak mások, akkor cserélje ki a Send-RAIDtoGLPI.ps1 szkript ezen sorában, miután HDD és SSD 1 és 2 megfelelő azonosító helyett:

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

Ha nem szeretne ezzel foglalkozni, vagy másként használja ezt a legördülő listát, egyszerűen eltávolíthatja ezt a sort a szkriptből.

Ezenkívül hozzá kell adnia a lemezek állapotát az „Element Statuss” (/front/state.php) mappában. Hozzáadtam a „MediaError” (legalább egy lemezelérési hiba) és az „OK” állapotokat, egy sort a szkriptben, ahol az azonosítók továbbításra kerülnek, „2”-t az „OK”-hoz és „1”-et a „MediaError”-hoz:

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

Ezekre az állapotokra a kényelem miatt van szükség; ha nincs szüksége ezekre a tulajdonságokra, akkor ezt a sort teljesen törölheti.

Magában a szkriptben ne felejtse el a változókat a sajátjára mutatni. A $GlpiCreds-nek tartalmaznia kell a GLPI API-kiszolgáló, a UserToken és az AppToken URL-jét.

Mi van a forgatókönyvben

A nehézkes JSON-elemzés és az üres if-ek miatt a szkript nehezen olvasható, ezért itt leírom a logikáját.

Amikor először indítják el a gazdagépen, a szkript végigmegy az összes vezérlőn, és sorozatszámok alapján keres lemezeket a GLPI adatbázisban, ha nem találja, megkeresi a modellt. Ha nem találja a modellt, hozzáadja a az új lemez modelljét a GLPI-hez, és beírja ezt a lemezt az adatbázisba.

A szkript minden új lépésnél megpróbál új lemezeket észlelni, de nem tudja, hogyan távolítsa el a hiányzó lemezeket, ezért ezt manuálisan kell megtennie.

Telepítési példa

A szkripttár tartalmazza a Deploy-Send-RAIDtoGLPI.ps1 szkriptet, amely letölt egy ZIP-archívumot a szükséges fájlokkal a GLPI-kiszolgálónkról, és telepíti azokat minden gazdagépre.

A fájlok másolása után a szkript telepíti a FusionInventory ügynököt, hogy napi feladatként fusson, és ugyanazt a feladatot hozza létre a szkriptünkhöz. Sikeres implementáció után végre láthatjuk a meghajtókat a számítógép Összetevők részében GLPI-ben.

Eredmény

Most a „Beállítások” -> „Összetevők” -> „Merevlemezek” menüben a GLPI-re kattintva rákattinthatunk a meghajtómodellekre, és megtekinthetjük azok mennyiségét, hogy megértsük, mit kell vásárolnunk.

LSI RAID készlet a GLPI-ben
LSI RAID készlet a GLPI-ben

Forrás: will.com

Hozzászólás