PDSF Host Database Shane Canon HEPiX Fall 2003
Objective Wanted a simple database framework to… Maintain total inventory Consolidate all information about nodes Track Hardware problems and repairs Routine processes (cfengine) Financial aspects Web and CLI based access
Components Backend database uses mysql Liberal uses of perl scripts for populating, maintaining and querying the database Used perl modules to simplify new scripts PHP based web frontend Make heavy use of other libraries and tools (Php-templates, phpMyEdit, Ezpdf)
What does it do today? Tracks various hardware components (disk, NICs, processors, chassis) Rudimentary ticket system and remarks Event logs Purchasing related data (vendor, purchase order, payment sources) Rudimentary integration with nagios Groups and host attributes
Web Interface
CLI Interface Update commands Query/Update tool updateSystemBasics updateDiskDb updateNicDb systemLogger Query/Update tool PdsfDbUtil Data gathering version (no-db access) dumps data in XML format which can be read only central node with access to db
TODO Build framework for supporting multiple platforms Make system easily extensible Continue to polish package Documentation Add tables for other components (for example motherboard info) or come up with generic structure to extend the system
Other Possibilities Postgres - View would be handy Python Interface
Conclusion Already being used heavily for various day to day operations Looking for outside interest Needs a few LBL specific items removed Already fairly well packages (RPMs)