Computer Asset Manager Program Documentation
From LinuxServerTech
CAMP, the Computer Asset Manager Program, is an open source project managed by [Daily Data, Inc.]. The goal of CAMP is to provide a framework where information required about equipment can be stored.
The basic program simply tracks clients, sites, and devices, allowing various attributes about each to be stored. The framework is open, however, and modules add functionality where needed. The modules currently under development are:
- Sysinfo - Integration with another Open Source project hosted at Daily Data that tracks systems information, similar to Munin, but requiring the client to send reports to the server, instead of the server initiating a report.
- Maintenance - Track required and performed maintenance on equipment
- Documentation - Allows storage of documents relating to a device, site or client
- Backup - Integration with rsbackup, another project hosted at Daily Data. This module will track the reports generated by rsbackup.
- Networking - Planned to set up an overview of a network instead of being oriented towards a single device.
- Trouble Tickets
While there are many projects to track Computer Assets, the decision to build this was made because of limitations found in other systems. The ability to rapidly add modules, the dedication to documentation of the database structure and the API, were all decision points in this.
Contents |
Problem Definition
Daily Data acts as the IT department for small to medium businesses. As such, we are responsible for tracking maintenance, trouble tickets, backup status and other things for our clients. As such, we needed a tracking system that would allow multiple clients, with each client having possibly multiple sites, and each site having multiple devices (a generic term used here for computers, virtual computers, printers, routers, etc...).
One need that is already addressed is the fact that many of our clients use virtualization. With virtual servers, the virtual is treated like a standard server, but it is made a "part of" another machine. This "part of" logic is extended to allow any device to be defined as a "part of" any other, giving rise to the components of a computer (pci cards, etc...) being a device also, but having a different type, and being a "part of" another device.
Current Status
CAMP is in production at our site, tracking our users. A major rewrite tightened things up a bit, but the code is currently in beta testing.
Main Program
The major failing with the main program is the UI, and the security concerns. The program is difficult to navigate, and the ability to limit a user to a particular group of devices is not implemented, though the framework is there. Work, in order of precedence, is
- Greatly enhanced CSS capabilities
- Implement per user access to devices
Modules
The modules are the important thing in this program, as the application is basically a way to track what equipment you have otherwise. Until/unless other people decide to contribute, the modules will be created in order of need by Daily Data.
Sysinfo
Sysinfo is working well so far, with no known bugs. The majority of the fixes in this release had to do with this module. There is no sysinfo client for either OSX or Windows to date. The sysinfo client for Linux is available as a Debian .deb file or source code.
Maintenance
Maintenance is working fairly well, but there are several user interface issues with it.
Documentation
This module has not been started yet, but it is next on the list.
Backup
Backup is not started yet, but its priority is such that it may take precedence over Documentation, as it should be a fairly rapid build.
Networking
This is planned, but will be done after the others are fully functional
