ืืขืืืืชื ืื ื ืืืื ืื ืคืขื ืืืืกืกืืืช ืืืื ืืืกืจ ืืืืข ืขื ืืชืฉืชืืช, ืืขื ืขืืืื ืืืกืคืจ ืืฉืจืชืื ืืืืืฉืื ืื ืืืคื ืืขืื ืืืื ืฉื ืืืฉ. ืื ืืฉืืืืชื ืื ืื ืืืจืืื ืื ืงืื ืื, ืชืืื ืจืฆืืชื ืืืขืช ืื ืืืคื, ืืืคื ืื ืืืืืจ ืืืฉืื, ืืืื ืื ืฉืื ืืืจืืื ืืืืื ืืืืจื ืื ืฉืืจืืช, ืืืื ืืฉืื, ืืชืขื ืฉืื ืืืื ืืื ืื. ืืืฉืจ ืืชื ืืืืข ืืืงืื ืืืฉ ืื ืชืงื ืืืืจืืข, ืืื ืจื ืืืฉืงืข ืืืืคืืฉ ืืืจ ืืืืืข ืืื. ืืืืจ ืืื, ืื ื ืืืื ืื ืื ืืืืชื ืฆืจืื ืืืชืืืื ืขื RuVDS, ืืืื ืคืชืจืชื ืืช ืืืขืื ืืืฆืืื ืช ืืืืชืจืช.
ืคืจืืืกืืืจืื
ืืื ืื ืืจืืื ื, ืืื ืื ื ืืกืืื ืืืขื ืืขืืืื ืืืจืื ื ืชืื ืื, ืืื ืชืคืกืชื ืืืืฃ ื-RackTables. ืื ืืจืื ืืืืจืืจ ืืช ืืืชืื ืขื ืื ืืฉืจืชืื, UPS, ืืชืืื ืืื ืืืืืืจืื ืืื ืืื. ื-RuVDS ืื ืืืืชื ืืขืจืืช ืืื, ืืื ืจืง ืงืืฆื ืืงืกื/ื ืืืจ ืขื ืืืืข ืขื ืฉืจืชืื, ืืืง ืืืจืืืืื ืฉืืื, ืืกืคืจื rack ืืื'. ืขื ืืืฉื ืื, ืงืฉื ืืืื ืืขืงืื ืืืจ ืฉืื ืืืื ืืจืืืืื ืงืื ืื. ืืื ืืืืืจืื ืืืชืืืื ืืืฉืืืื ืืืืืืืคืื ืืืืชืจ ืขืืืจ ืฉืจืชืื ืื ืืืกืงืื. ืืฉืื ืืืื ืืฉืืืจ ืขื ืืืืข ืขืืื ื ืขื ืืฆื ืืืืกืงืื ืืืขืชืืื ืืืกืืจืืืืช ืฉืืื. ืื ืืื ื ื ืืฉื ืืืขืจื RAID ืืืื ื ืืืืืฃ ืืืืืจืืช, ืืืืจ ืขืืื ืืกืืคื ืฉื ืืืจ ืืืืืื ืืชืืฆืืืช ืงืืื ืืืช. ืืื ืื ืื ื ืืืืช ืฆืจืืืื ืืขืจืืช ืฉืขืืงืืช ืืืจ ืืืงืื ืืืืกืงืื ืืืฆืื ืขื ืื ืช ืืืืื ืื ืขืืื ืืืืืช ืืกืจ ืื ื ืืืืื ืืืืื ืขืืื ื ืืจืืืฉ.
ืืืฆืื ืืืืข GLPI, ืืืฆืจ ืงืื ืคืชืื ืฉื ืืขื ืืฉืคืจ ืืช ืืืืฆืืขืื ืฉื ืืืืงืืช ื-IT ืืืืืื ืืืชื ืืืืืืืืื ืฉื ITIL. ืื ืืกืฃ ืืืืื ืฆืืื ืื ืืืื ืืชืืื, ืืฉ ืื ืืกืืก ืืืข, ืืกืง ืฉืืจืืช, ื ืืืื ืืกืืืื ืืขืื. ื-GLPI ืืฉ ืชืืกืคืื ืจืืื, ืืืื FusionInventory ื-OCS Inventory, ืืืืคืฉืจืื ืื ืืืกืืฃ ืืืืืืืืช ืืืืข ืขื ืืืฉืืื ืืืชืงื ืื ืืืจืื ืืืืฆืขืืช ืืชืงื ืช ืกืืื ื-SNMP. ืืชื ืืืื ืืงืจืื ืขืื ืขื ืืชืงื ืช GLPI ืืชืืกืคืื ืืืืืจืื ืืืจืื, ืืืื ืืื -
ืขื ืืืช, ืืืืจ ืคืจืืกืช ืืกืืื, ื ืคืชื ืืช ืจืืืื ืืืืฉื ื-GLPI ืื ืจืื ืืืช:
ืืืขืื ืืื ืฉืืฃ ืืื ืืืคืืืืื ืื ืื ืืืื ืืจืืืช ืืืืข ืขื ืืืืกืงืื ืืคืืืืื ืืืขืจืืื ืฉื LSI RAID. ืืืืจ ืฉืจืืืชื ืืืฆื ืืขืื ืื ื ืคืชืจืช ืขืืืจ ื ืืืืจ ื- Zabbix ืืืืฆืขืืช ืกืงืจืืคื PowerShell
ื ืืชื ืืงืื ื ืชืื ืื ืขื ืืืืกืงืื ืืืขืจื ืืืืฆืขืืช ืืื ืขืืจ ืืืฆืจื ืืืงืจ; ืืืงืจื ืฉื LSI, ืืื StorCLI. ืืื ื ืืชื ืืืื ืืงืื ื ืชืื ืื ืืคืืจืื JSON, ืื ืชื ืืืชื ืืืืขืืืจ ืืืชื ื-GLPI API. ื ืงืฉืจ ืืช ืืืืกืงืื ืืืืฉืืื ืฉ-FusionInventory ืืืจ ืืฆืจื. ืืืฉืจ ืืื ืืืคืขื ืฉืื, ืืกืงืจืืคื ืืขืืื ืืช ืื ืชืื ืื ืขื ืืืืกืงืื ืืืืกืืฃ ืืืฉืื. ืืกืงืจืืคื ืขืฆืื Send-RAIDtoGLPI.ps1 ืืื
ืื ืืืื ืฆืืจื
GLPI ืืจืกื 9.5.1 (ื ืืืงื ืืืจืกื ืื)- ืชืืกืฃ
ืืืื ืคืืื'ื ืืกืืื ืขืืืจ Windows - Windows 2012 R2 (ืืืขืื) ืืืขืจืืช ืืืจืืช, ืื ื ืืืื-VM ืขื ืืงืจ ืืืื ืก ืืชืืื, PowerShell ืืจืกื 4 ืืืขืื
- ืืืชืงื ืืจืืืืจ MegaRAID
- ืืืืื ืขืืืจ PowerShell -
PSGLPI - ืืฉืืื ื-GLPI ืขื ืคืจืืคืื Admin ืืืจืฉืื ืืืืฆืขืืช API ืฉื ืืฆืจ ืขื ืืื UserToken ื-AppToken
ื ืงืืื ืืฉืืื. ืืกืืื ืืืฉืื, ื-GLPI ืืฉ 2 ืืฉืืืืช ืฉืื ืืช ืขืืืจ ืืื ืืืืกืง, ืื ืืื ืืืคืืื "ืกืื ืืืื". ืืื, ืืื ืืืงืืื ืืช ืืืคืืื ื HDD ื-SSD, ืืืืืชื ืืืฉืชืืฉ ืืจืฉืืื ืื ืคืชืืช "ืืืื ืืื ื ืื ืงืฉืืืื" (front/devicemodel.php?itemtype=DeviceHardDriveModel). ืืกืงืจืืคื ืืืื ืืืืื ืืช ืืขืจืืื ืืืื ืืืกื ืื ืชืื ืื ืฉื GLPI, ืืืจืช ืืื ืื ืืืื ืืืชืื ื ืชืื ืื ืขื ืืื ืืืืกืง. ืืื, ืขืืื ืืืืกืืฃ ืชืืืื HDD, ืืืืืจ ืืื SSD ืืจืฉืืื ืืจืืงื ืืื, ืื ืฉืืืืืช ืืืืื ืืื ืืืื ืืืกื ืื ืชืื ืื ืืืื 1 ื-2. ืื ืืฉ ืืืจืื, ืื ืืืืฃ ืืฉืืจื ืื ืฉื ืืกืงืจืืคื Send-RAIDtoGLPI.ps1 ืืืืจ HDD ื-SSD ืืืงืื 1 ื-2 ืืืืืื ืืชืืืืื ืฉืืื:
deviceharddrivemodels_id = switch ($MediaType) { "HDD" { "1" }; "SSD" { "2" }; default { "" } }
ืื ืืื ื ืจืืฆื ืืืชืขืกืง ืืื ืื ืฉืืชื ืืฉืชืืฉ ืืจืฉืืื ืื ืคืชืืช ืืื ืืืจืช, ืืชื ืืืื ืคืฉืื ืืืกืืจ ืืช ืืฉืืจื ืืื ืืืกืงืจืืคื.
ืืชื ืื ืฆืจืื ืืืืกืืฃ ืกืืืืกืื ืขืืืจ ืืืืกืงืื ื-"Element Statuses" (/front/state.php). ืืืกืคืชื ืืช ืืกืืืืกืื "MediaError" (ืืืืชื ืืคืืืช ืฉืืืืช ืืืฉื ืืืช ืืืืกืง) ื-"OK", ืฉืืจื ืืกืงืจืืคื ืฉืื ืืืขืืจืื ืืืืืื ืฉืืื, "2" ืขืืืจ "OK" ื-"1" ืขืืืจ "MediaError":
states_id = switch ($MediaError) { 0 { "2" }; { $_ -gt 0 } { "1" } }
ืกืืืืกืื ืืื ื ืืืฆืื ืืืขืื ื ืืืืช; ืื ืืื ื ืืงืืง ืืืืคืืื ืื ืืื, ืชืืื ืื ืืืืืง ืืช ืืฉืืจื ืืื ืืืืืืื.
ืืกืงืจืืคื ืขืฆืื, ืื ืชืฉืื ืืืคื ืืช ืืช ืืืฉืชื ืื ืืฉืื. $GlpiCreds ืืืื ืืืืื ืืช ืืชืืืช ืืืชืจ ืืฉืจืช ื-API ืฉื GLPI, UserToken ื-AppToken.
ืื ืืฉ ืืชืกืจืื
ืืืื ื ืืชืื JSON ืืกืืจืื ื-IFs ืจืืงืื, ืืชืกืจืื ืงืฉื ืืงืจืืื, ืื ืืชืืจ ืืช ืืืืืืื ืฉืื ืืื.
ืืืฉืจ ืืื ืืืคืขื ืืจืืฉืื ื ืขื ืืืืจื, ืืกืงืจืืคื ืขืืืจ ืขื ืื ืืืงืจืื ืืืืคืฉ ืืืกืงืื ืืืกื ืื ืชืื ืื ืฉื GLPI ืืคื ืืกืคืจืื ืกืืืืจืืื; ืื ืืื ืื ืืืฆื ืืืชื, ืืื ืืืคืฉ ืืช ืืืื. ืื ืืื ืื ืืืฆื ืืช ืืืื, ืืื ืืืกืืฃ ืืช ืืื ืืืืกืง ืืืืฉ ื-GLPI ืืืื ืืก ืืช ืืืืกืง ืืื ืืืกื ืื ืชืื ืื.
ืืื ืืขืืจ ืืืฉ, ืืกืงืจืืคื ืื ืกื ืืืืืช ืืืกืงืื ืืืฉืื, ืืื ืืื ืื ืืืืข ืืืฆื ืืืกืืจ ืืช ืืืกืจืื, ืื ืชืฆืืจื ืืขืฉืืช ืืืช ืืืืคื ืืื ื.
ืืืืื ืืคืจืืกื
ืืืืจ ืืกืงืจืืคืืื ืืืื ืืช ืืกืงืจืืคื Deploy-Send-RAIDtoGLPI.ps1, ืฉืืืจืื ืืจืืืื ZIP ืขื ืืงืืฆืื ืืืจืืฉืื ืืฉืจืช ื-GLPI ืฉืื ื ืืืคืจืืก ืืืชื ืืื ืืืจื.
ืืืืจ ืืขืชืงืช ืืงืืฆืื, ืืกืงืจืืคื ืืชืงืื ืืช ืกืืื FusionInventory ืฉืืคืขื ืืืฉืืื ืืืืืช ืืืืฆืืจ ืืช ืืืชื ืืฉืืื ืขืืืจ ืืกืงืจืืคื ืฉืื ื. ืืืืจ ืืืืขื ืืืฆืืืช, ื ืืื ืกืืฃ ืกืืฃ ืืจืืืช ืืช ืืืื ื ืื ืืืืง ืืจืืืืื ืฉื ืืืืฉื ื-GLPI.
ืชืืฆืื
ืืขืช, ืขื ืืื ืืขืืจ ื-GLPI ืืชืคืจืื "ืืืืจืืช" -> "ืจืืืืื" -> "ืืื ื ืื ืงืฉืืืื", ื ืืื ืืืืืฅ ืขื ืืืื ืืืื ื ืื ืืืจืืืช ืืช ืืืืืช ืฉืืื ืืื ืืืืื ืื ืื ืื ื ืฆืจืืืื ืืจืืืฉ.
ืืงืืจ: www.habr.com