ನನ್ನ ಕೆಲಸದಲ್ಲಿ, ಮೂಲಸೌಕರ್ಯಗಳ ಬಗ್ಗೆ ಮಾಹಿತಿಯ ಕೊರತೆಯ ಬಗ್ಗೆ ನಾನು ಆಗಾಗ್ಗೆ ಗೀಳನ್ನು ಅನುಭವಿಸುತ್ತೇನೆ ಮತ್ತು ಸೇವೆ ಸಲ್ಲಿಸುವ ಸರ್ವರ್ಗಳ ಸಂಖ್ಯೆಯಲ್ಲಿನ ಹೆಚ್ಚಳದೊಂದಿಗೆ, ಇದು ನಿಜವಾದ ಚಿತ್ರಹಿಂಸೆಗೆ ತಿರುಗುತ್ತದೆ. ನಾನು ಸಣ್ಣ ಸಂಸ್ಥೆಗಳಲ್ಲಿ ನಿರ್ವಾಹಕನಾಗಿದ್ದಾಗಲೂ, ಎಲ್ಲಿದೆ, ಎಲ್ಲಿ ಪ್ಲಗ್ ಇನ್ ಮಾಡಲಾಗಿದೆ, ಯಾವ ಯಂತ್ರಾಂಶ ಅಥವಾ ಸೇವೆಗೆ ಯಾವ ಜನರು ಜವಾಬ್ದಾರರು ಮತ್ತು ಮುಖ್ಯವಾಗಿ, ಈ ಎಲ್ಲದರ ಬದಲಾವಣೆಗಳನ್ನು ದಾಖಲಿಸಲು ನಾನು ಯಾವಾಗಲೂ ಬಯಸುತ್ತೇನೆ. ನೀವು ಹೊಸ ಸ್ಥಳಕ್ಕೆ ಬಂದಾಗ ಮತ್ತು ಘಟನೆಯನ್ನು ಎದುರಿಸಿದಾಗ, ಈ ಮಾಹಿತಿಯನ್ನು ಹುಡುಕಲು ಸಾಕಷ್ಟು ಸಮಯವನ್ನು ಕಳೆಯಲಾಗುತ್ತದೆ. ಮುಂದೆ, ನಾನು RuVDS ನಲ್ಲಿ ಏನು ಎದುರಿಸಬೇಕಾಗಿತ್ತು ಮತ್ತು ಶೀರ್ಷಿಕೆಯಲ್ಲಿ ಸೂಚಿಸಲಾದ ಸಮಸ್ಯೆಯನ್ನು ನಾನು ಹೇಗೆ ಪರಿಹರಿಸಿದೆ ಎಂದು ನಾನು ನಿಮಗೆ ಹೇಳುತ್ತೇನೆ.
ಪೂರ್ವೇತಿಹಾಸದ
ಎಂಟರ್ಪ್ರೈಸ್ ನಿರ್ವಾಹಕನಾಗಿ, ಡೇಟಾ ಸೆಂಟರ್ನಲ್ಲಿ ಕೆಲಸ ಮಾಡುವ ಅನುಭವ ನನಗೆ ಕಡಿಮೆ ಇತ್ತು, ಆದರೆ ನಾನು ರಾಕ್ಟೇಬಲ್ಗಳ ಒಂದು ನೋಟವನ್ನು ಹಿಡಿದಿದ್ದೇನೆ. ಇದು ಎಲ್ಲಾ ಸರ್ವರ್ಗಳು, ಯುಪಿಎಸ್, ಸ್ವಿಚ್ಗಳು ಮತ್ತು ಅವುಗಳ ನಡುವಿನ ಎಲ್ಲಾ ಸಂಪರ್ಕಗಳೊಂದಿಗೆ ರ್ಯಾಕ್ ಅನ್ನು ಸ್ಪಷ್ಟವಾಗಿ ತೋರಿಸಿದೆ. RuVDS ಅಂತಹ ವ್ಯವಸ್ಥೆಯನ್ನು ಹೊಂದಿರಲಿಲ್ಲ, ಆದರೆ ಸರ್ವರ್ಗಳು, ಅವುಗಳ ಕೆಲವು ಘಟಕಗಳು, ರ್ಯಾಕ್ ಸಂಖ್ಯೆಗಳು ಇತ್ಯಾದಿಗಳ ಬಗ್ಗೆ ಮಾಹಿತಿಯನ್ನು ಹೊಂದಿರುವ ಎಕ್ಸೆಲ್ / ಪೇಪರ್ ಫೈಲ್ಗಳು ಮಾತ್ರ. ಈ ವಿಧಾನದಿಂದ, ಸಣ್ಣ ಘಟಕಗಳಲ್ಲಿನ ಬದಲಾವಣೆಗಳನ್ನು ಟ್ರ್ಯಾಕ್ ಮಾಡುವುದು ತುಂಬಾ ಕಷ್ಟ. ಆದರೆ ಸರ್ವರ್ಗಳಿಗೆ ಅತ್ಯಂತ ಮುಖ್ಯವಾದ ಮತ್ತು ಆಗಾಗ್ಗೆ ಬದಲಾಯಿಸಲಾದ ಉಪಭೋಗ್ಯಗಳು ಡಿಸ್ಕ್ಗಳಾಗಿವೆ. ಡಿಸ್ಕ್ಗಳ ಸ್ಥಿತಿ ಮತ್ತು ಅವುಗಳ ಕಾರ್ಯತಂತ್ರದ ಮೀಸಲು ಕುರಿತು ನವೀಕೃತ ಮಾಹಿತಿಯನ್ನು ನಿರ್ವಹಿಸುವುದು ಬಹಳ ಮುಖ್ಯ. RAID ಅರೇಯಿಂದ ಡ್ರೈವ್ ವಿಫಲವಾದರೆ ಮತ್ತು ಅದನ್ನು ತ್ವರಿತವಾಗಿ ಬದಲಾಯಿಸದಿದ್ದರೆ, ಇದು ಅಂತಿಮವಾಗಿ ಮಾರಕ ಪರಿಣಾಮಗಳಿಗೆ ಕಾರಣವಾಗಬಹುದು. ಆದ್ದರಿಂದ, ನಾವು ಏನು ಕಾಣೆಯಾಗಬಹುದು ಮತ್ತು ನಾವು ಯಾವ ಮಾದರಿಗಳನ್ನು ಖರೀದಿಸಬೇಕು ಎಂಬುದನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳಲು ನಮಗೆ ನಿಜವಾಗಿಯೂ ಡಿಸ್ಕ್ಗಳ ಸ್ಥಳ ಮತ್ತು ಅವುಗಳ ಸ್ಥಿತಿಯನ್ನು ಟ್ರ್ಯಾಕ್ ಮಾಡುವ ಸಿಸ್ಟಮ್ ಅಗತ್ಯವಿದೆ.
ಪಾರುಗಾಣಿಕಾಕ್ಕೆ GLPI ಬಂದಿತು, IT ಇಲಾಖೆಗಳ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಸುಧಾರಿಸಲು ಮತ್ತು ITIL ಆದರ್ಶಗಳಿಗೆ ತರಲು ವಿನ್ಯಾಸಗೊಳಿಸಲಾದ ಮುಕ್ತ ಮೂಲ ಉತ್ಪನ್ನವಾಗಿದೆ. ಸಲಕರಣೆಗಳ ದಾಸ್ತಾನು ಮತ್ತು ರ್ಯಾಕ್ ನಿರ್ವಹಣೆಯ ಜೊತೆಗೆ, ಇದು ಜ್ಞಾನದ ಮೂಲ, ಸೇವಾ ಮೇಜು, ಡಾಕ್ಯುಮೆಂಟ್ ನಿರ್ವಹಣೆ ಮತ್ತು ಹೆಚ್ಚಿನದನ್ನು ಹೊಂದಿದೆ. GLPI FusionInventory ಮತ್ತು OCS ಇನ್ವೆಂಟರಿ ಸೇರಿದಂತೆ ಹಲವು ಪ್ಲಗಿನ್ಗಳನ್ನು ಹೊಂದಿದೆ, ಇದು ಏಜೆಂಟ್ ಸ್ಥಾಪನೆ ಮತ್ತು SNMP ಮೂಲಕ ಕಂಪ್ಯೂಟರ್ಗಳು ಮತ್ತು ಇತರ ಸಾಧನಗಳ ಕುರಿತು ಮಾಹಿತಿಯನ್ನು ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಸಂಗ್ರಹಿಸಲು ನಿಮಗೆ ಅನುಮತಿಸುತ್ತದೆ. ನೀವು ಇತರ ಲೇಖನಗಳಲ್ಲಿ GLPI ಮತ್ತು ಪ್ಲಗಿನ್ಗಳನ್ನು ಸ್ಥಾಪಿಸುವುದರ ಕುರಿತು ಇನ್ನಷ್ಟು ಓದಬಹುದು, ಎಲ್ಲಕ್ಕಿಂತ ಉತ್ತಮ - ಅಧಿಕೃತ ದಸ್ತಾವೇಜನ್ನು. ರೆಡಿಮೇಡ್ ಟೆಂಪ್ಲೇಟ್ನಲ್ಲಿ ನಮ್ಮ ಹೋಸ್ಟಿಂಗ್ನಲ್ಲಿ ನೀವು ಅದನ್ನು ಸ್ಥಾಪಿಸಬಹುದು ದೀಪ.
ಆದಾಗ್ಯೂ, ಏಜೆಂಟ್ ಅನ್ನು ನಿಯೋಜಿಸಿದ ನಂತರ, ನಾವು GLPI ನಲ್ಲಿ ಕಂಪ್ಯೂಟರ್ ಘಟಕಗಳನ್ನು ತೆರೆಯುತ್ತೇವೆ ಮತ್ತು ಇದನ್ನು ನೋಡುತ್ತೇವೆ:
ಸಮಸ್ಯೆಯೆಂದರೆ ಯಾವುದೇ ಪ್ಲಗಿನ್ಗಳು LSI RAID ಅರೇಗಳಲ್ಲಿನ ಭೌತಿಕ ಡಿಸ್ಕ್ಗಳ ಬಗ್ಗೆ ಮಾಹಿತಿಯನ್ನು ನೋಡುವುದಿಲ್ಲ. ಪವರ್ಶೆಲ್ ಸ್ಕ್ರಿಪ್ಟ್ ಅನ್ನು ಬಳಸಿಕೊಂಡು Zabbix ನಲ್ಲಿ ಮೇಲ್ವಿಚಾರಣೆಗಾಗಿ ಈ ಸಮಸ್ಯೆಯನ್ನು ಹೇಗೆ ಪರಿಹರಿಸಲಾಗಿದೆ ಎಂಬುದನ್ನು ನೋಡಿದ ನಂತರ lsi-raid.ps1 GLPI ಗೆ ಮಾಹಿತಿಯನ್ನು ವರ್ಗಾಯಿಸಲು ನಾನು ಇದೇ ರೀತಿಯದನ್ನು ಬರೆಯಲು ನಿರ್ಧರಿಸಿದೆ.
ನಿಯಂತ್ರಕ ತಯಾರಕರಿಂದ ಉಪಯುಕ್ತತೆಗಳನ್ನು ಬಳಸಿಕೊಂಡು ರಚನೆಯಲ್ಲಿನ ಡಿಸ್ಕ್ಗಳ ಬಗ್ಗೆ ಡೇಟಾವನ್ನು ಪಡೆಯಬಹುದು; LSI ಸಂದರ್ಭದಲ್ಲಿ, ಇದು StorCLI ಆಗಿದೆ. ಅದರಿಂದ ನೀವು JSON ಸ್ವರೂಪದಲ್ಲಿ ಡೇಟಾವನ್ನು ಪಡೆಯಬಹುದು, ಅದನ್ನು ಪಾರ್ಸ್ ಮಾಡಿ ಮತ್ತು ಅದನ್ನು GLPI API ಗೆ ರವಾನಿಸಬಹುದು. FusionInventory ಈಗಾಗಲೇ ರಚಿಸಿದ ಕಂಪ್ಯೂಟರ್ಗಳಿಗೆ ನಾವು ಡಿಸ್ಕ್ಗಳನ್ನು ಲಿಂಕ್ ಮಾಡುತ್ತೇವೆ. ಮತ್ತೊಮ್ಮೆ ಕಾರ್ಯಗತಗೊಳಿಸಿದಾಗ, ಸ್ಕ್ರಿಪ್ಟ್ ಡಿಸ್ಕ್ಗಳಲ್ಲಿನ ಡೇಟಾವನ್ನು ನವೀಕರಿಸುತ್ತದೆ ಮತ್ತು ಹೊಸದನ್ನು ಸೇರಿಸುತ್ತದೆ. ಸ್ಕ್ರಿಪ್ಟ್ ಸ್ವತಃ Send-RAIDtoGLPI.ps1 ಆಗಿದೆ ಇಲ್ಲಿ GitHub ನಲ್ಲಿ. ಅದನ್ನು ಹೇಗೆ ಬಳಸುವುದು ಎಂದು ಮುಂದೆ ನಾನು ನಿಮಗೆ ಹೇಳುತ್ತೇನೆ.
UserToken ಮತ್ತು AppToken ಮೂಲಕ ರಚಿಸಲಾದ API ಮೂಲಕ ದೃಢೀಕರಣಕ್ಕಾಗಿ ನಿರ್ವಾಹಕ ಪ್ರೊಫೈಲ್ನೊಂದಿಗೆ GLPI ನಲ್ಲಿ ಖಾತೆ
ಪ್ರಮುಖ ಅಂಶ. ಕೆಲವು ಕಾರಣಕ್ಕಾಗಿ, GLPI ಡಿಸ್ಕ್ ಮಾದರಿಗಾಗಿ 2 ವಿಭಿನ್ನ ಘಟಕಗಳನ್ನು ಹೊಂದಿದೆ, ಆದರೆ ಯಾವುದೇ "ಮಾಧ್ಯಮ ಪ್ರಕಾರ" ಆಸ್ತಿ ಇಲ್ಲ. ಆದ್ದರಿಂದ, HDD ಮತ್ತು SSD ಗುಣಲಕ್ಷಣಗಳನ್ನು ರೆಕಾರ್ಡ್ ಮಾಡಲು, ನಾನು "ಹಾರ್ಡ್ ಡ್ರೈವ್ ಮಾದರಿಗಳು" ಡ್ರಾಪ್-ಡೌನ್ ಪಟ್ಟಿಯನ್ನು ಬಳಸಲು ನಿರ್ಧರಿಸಿದೆ (front/devicemodel.php?itemtype=DeviceHardDriveModel). ಸ್ಕ್ರಿಪ್ಟ್ GLPI ಡೇಟಾಬೇಸ್ನಲ್ಲಿ ಈ ಮೌಲ್ಯಗಳನ್ನು ಹೊಂದಿರಬೇಕು, ಇಲ್ಲದಿದ್ದರೆ ಅದು ಡಿಸ್ಕ್ ಮಾದರಿಯ ಬಗ್ಗೆ ಡೇಟಾವನ್ನು ಬರೆಯಲು ಸಾಧ್ಯವಾಗುವುದಿಲ್ಲ. ಆದ್ದರಿಂದ, ನೀವು ಮೊದಲು HDD, ನಂತರ SSD ಅನ್ನು ಈ ಖಾಲಿ ಪಟ್ಟಿಗೆ ಸೇರಿಸುವ ಅಗತ್ಯವಿದೆ, ಆದ್ದರಿಂದ ಡೇಟಾಬೇಸ್ನಲ್ಲಿನ ಈ ಅಂಶಗಳ ID ಗಳು 1 ಮತ್ತು 2 ಆಗಿರುತ್ತದೆ. ಇತರವುಗಳಿದ್ದರೆ, ನಂತರ Send-RAIDtoGLPI.ps1 ಸ್ಕ್ರಿಪ್ಟ್ನ ಈ ಸಾಲಿನಲ್ಲಿ ಬದಲಾಯಿಸಿ 1 ಮತ್ತು 2 ರ ಬದಲಿಗೆ HDD ಮತ್ತು SSD ಅವುಗಳ ಅನುಗುಣವಾದ ID ಗಳು:
ನೀವು ಇದರೊಂದಿಗೆ ತಲೆಕೆಡಿಸಿಕೊಳ್ಳಲು ಬಯಸದಿದ್ದರೆ ಅಥವಾ ನೀವು ಈ ಡ್ರಾಪ್-ಡೌನ್ ಪಟ್ಟಿಯನ್ನು ವಿಭಿನ್ನವಾಗಿ ಬಳಸಿದರೆ, ನೀವು ಈ ಸಾಲನ್ನು ಸ್ಕ್ರಿಪ್ಟ್ನಿಂದ ಸರಳವಾಗಿ ತೆಗೆದುಹಾಕಬಹುದು.
ನೀವು "ಎಲಿಮೆಂಟ್ ಸ್ಥಿತಿಗಳು" (/front/state.php) ನಲ್ಲಿ ಡಿಸ್ಕ್ಗಳಿಗೆ ಸ್ಥಿತಿಗಳನ್ನು ಸೇರಿಸಬೇಕಾಗಿದೆ. ನಾನು "MediaError" (ಕನಿಷ್ಠ ಒಂದು ಡಿಸ್ಕ್ ಪ್ರವೇಶ ದೋಷವಿದೆ) ಮತ್ತು "OK" ಎಂಬ ಸ್ಥಿತಿಗಳನ್ನು ಸೇರಿಸಿದ್ದೇನೆ, ಅವರ ID ಗಳನ್ನು ರವಾನಿಸುವ ಸ್ಕ್ರಿಪ್ಟ್ನಲ್ಲಿ ಒಂದು ಸಾಲು, "OK" ಗಾಗಿ "2" ಮತ್ತು "MediaError" ಗಾಗಿ "1":
ಅನುಕೂಲಕ್ಕಾಗಿ ಈ ಸ್ಥಿತಿಗಳು ಅಗತ್ಯವಿದೆ; ನಿಮಗೆ ಈ ಗುಣಲಕ್ಷಣಗಳು ಅಗತ್ಯವಿಲ್ಲದಿದ್ದರೆ, ನೀವು ಈ ಸಾಲನ್ನು ಸಂಪೂರ್ಣವಾಗಿ ಅಳಿಸಬಹುದು.
ಸ್ಕ್ರಿಪ್ಟ್ನಲ್ಲಿಯೇ, ವೇರಿಯೇಬಲ್ಗಳನ್ನು ನಿಮ್ಮದಕ್ಕೆ ಸೂಚಿಸಲು ಮರೆಯಬೇಡಿ. $GlpiCreds GLPI API ಸರ್ವರ್, UserToken ಮತ್ತು AppToken ಗೆ URL ಅನ್ನು ಹೊಂದಿರಬೇಕು.
ಸ್ಕ್ರಿಪ್ಟ್ನಲ್ಲಿ ಏನಿದೆ
ತೊಡಕಿನ JSON ಪಾರ್ಸಿಂಗ್ ಮತ್ತು ಖಾಲಿ ifs ಕಾರಣ, ಸ್ಕ್ರಿಪ್ಟ್ ಓದಲು ಕಷ್ಟ, ಆದ್ದರಿಂದ ನಾನು ಅದರ ತರ್ಕವನ್ನು ಇಲ್ಲಿ ವಿವರಿಸುತ್ತೇನೆ.
ಹೋಸ್ಟ್ನಲ್ಲಿ ಮೊದಲು ಪ್ರಾರಂಭಿಸಿದಾಗ, ಸ್ಕ್ರಿಪ್ಟ್ ಎಲ್ಲಾ ನಿಯಂತ್ರಕಗಳ ಮೂಲಕ ಹೋಗುತ್ತದೆ ಮತ್ತು GLPI ಡೇಟಾಬೇಸ್ನಲ್ಲಿ ಸರಣಿ ಸಂಖ್ಯೆಗಳ ಮೂಲಕ ಡಿಸ್ಕ್ಗಳನ್ನು ಹುಡುಕುತ್ತದೆ; ಅದು ಅದನ್ನು ಕಂಡುಹಿಡಿಯದಿದ್ದರೆ, ಅದು ಮಾದರಿಯನ್ನು ಹುಡುಕುತ್ತದೆ. ಅದು ಮಾದರಿಯನ್ನು ಕಂಡುಹಿಡಿಯದಿದ್ದರೆ, ಅದು ಸೇರಿಸುತ್ತದೆ GLPI ಗೆ ಹೊಸ ಡಿಸ್ಕ್ನ ಮಾದರಿ ಮತ್ತು ಈ ಡಿಸ್ಕ್ ಅನ್ನು ಡೇಟಾಬೇಸ್ಗೆ ಪ್ರವೇಶಿಸುತ್ತದೆ.
ಪ್ರತಿ ಹೊಸ ಪಾಸ್ ಸ್ಕ್ರಿಪ್ಟ್ ಹೊಸ ಡಿಸ್ಕ್ಗಳನ್ನು ಪತ್ತೆಹಚ್ಚಲು ಪ್ರಯತ್ನಿಸುತ್ತದೆ, ಆದರೆ ಕಾಣೆಯಾದವುಗಳನ್ನು ಹೇಗೆ ತೆಗೆದುಹಾಕಬೇಕು ಎಂದು ತಿಳಿದಿಲ್ಲ, ಆದ್ದರಿಂದ ನೀವು ಅದನ್ನು ಹಸ್ತಚಾಲಿತವಾಗಿ ಮಾಡಬೇಕಾಗುತ್ತದೆ.
ನಿಯೋಜನೆ ಉದಾಹರಣೆ
ಸ್ಕ್ರಿಪ್ಟ್ ರೆಪೊಸಿಟರಿಯು Deploy-Send-RAIDtoGLPI.ps1 ಸ್ಕ್ರಿಪ್ಟ್ ಅನ್ನು ಒಳಗೊಂಡಿದೆ, ಇದು ನಮ್ಮ GLPI ಸರ್ವರ್ನಿಂದ ಅಗತ್ಯ ಫೈಲ್ಗಳೊಂದಿಗೆ ZIP ಆರ್ಕೈವ್ ಅನ್ನು ಡೌನ್ಲೋಡ್ ಮಾಡುತ್ತದೆ ಮತ್ತು ಅವುಗಳನ್ನು ಪ್ರತಿ ಹೋಸ್ಟ್ಗೆ ನಿಯೋಜಿಸುತ್ತದೆ.
ಫೈಲ್ಗಳನ್ನು ನಕಲಿಸಿದ ನಂತರ, ಸ್ಕ್ರಿಪ್ಟ್ ಫ್ಯೂಷನ್ಇನ್ವೆಂಟರಿ ಏಜೆಂಟ್ ಅನ್ನು ದೈನಂದಿನ ಕಾರ್ಯವಾಗಿ ರನ್ ಮಾಡಲು ಸ್ಥಾಪಿಸುತ್ತದೆ ಮತ್ತು ನಮ್ಮ ಸ್ಕ್ರಿಪ್ಟ್ಗೆ ಅದೇ ಕೆಲಸವನ್ನು ರಚಿಸುತ್ತದೆ. ಯಶಸ್ವಿ ಅನುಷ್ಠಾನದ ನಂತರ, ನಾವು ಅಂತಿಮವಾಗಿ GLPI ನಲ್ಲಿ ಕಂಪ್ಯೂಟರ್ನ ಘಟಕಗಳ ವಿಭಾಗದಲ್ಲಿ ಡ್ರೈವ್ಗಳನ್ನು ನೋಡಲು ಸಾಧ್ಯವಾಗುತ್ತದೆ.
ಪರಿಣಾಮವಾಗಿ
ಈಗ, "ಸೆಟ್ಟಿಂಗ್ಗಳು" -> "ಕಾಂಪೊನೆಂಟ್ಗಳು" -> "ಹಾರ್ಡ್ ಡ್ರೈವ್ಗಳು" ಮೆನುವಿನಲ್ಲಿ GLPI ಗೆ ಹೋಗುವುದರ ಮೂಲಕ, ನಾವು ಡ್ರೈವ್ ಮಾಡೆಲ್ಗಳ ಮೇಲೆ ಕ್ಲಿಕ್ ಮಾಡಬಹುದು ಮತ್ತು ನಾವು ಏನನ್ನು ಖರೀದಿಸಬೇಕು ಎಂಬುದನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳಲು ಅವುಗಳ ಪ್ರಮಾಣವನ್ನು ನೋಡಬಹುದು.