Managing resource information in GLPI
At Your Fingertips
Anyone working in information technology knows how hard it is to keep track of inventory, maintenance history, and user support requests. GLPI puts the details in reach.
IT departments manage endless tidbits of important information, such as device inventories, contracts, help tickets, and vendor support details. At the frenetic pace of the average network, this information is often filed inefficiently or even lost. Wouldn't it be nice to store all this data in a single database with a unified, user-friendly graphic interface?
Recently, I installed an application called GLPI  to assist in IT management for my employer. GLPI, which stands for Gestion Libre De Parc Informatique, is a web-based LAMP stack application for inventory management, job tracking, equipment reservations, and basic network topology information. Unlike many equivalent proprietary tools, GLPI does not require a local client application; instead, it operates through a simple and flexible web interface.
Installing GLPI is quite easy. The first step is to make sure the necessary components and services are running on your system. For this, you need to install an Apache web server , MySQL (4.23+) , and PHP . After installing MySQL, set up a database for GLPI and create a user with read and write access. Then you need to go to GLPI's website and download the latest version. Either download and unpack GLPI directly on your server or download it locally, decompress, and then upload to the server. (The directory structure referenced in this article are for openSUSE . For your own preferred Linux distribution, adapt the directory structure as necessary.)
Now you need to move the unpacked files in Apache's web root at the /srv/www/htdocs/ directory. One last step before installing is to give Apache write access for the /files and /config directories by making sure they have the correct ownership.
To begin the installation, point your browser to http://<your_host>/. A web-based installation wizard will guide you through the short installation procedure. The first thing you have to choose is the default language. When you click on OK, you are presented with the software license. GLPI is licensed under GNU General Public License version 2 (GPLv2). Just accept the license and click Continue.
To begin the installation procedure, click Installation on the next screen. The installation wizard will verify all required components, as shown in Figure 1. If something is not right, you will be notified accordingly, and you will need to fix the problem to proceed.
Choosing Continue leads to the database information form, where you will input the necessary username, password, and hostname for your MySQL database. If you created a database for GLPI before running the installer, you can choose to populate this database, or you can create a new one, as shown in Figure 2.
Now click on Continue to populate the database, then click Continue again to see a list of the four default accounts (Table 1). Click the button labeled Use GLPI for the GLPI the login screen. It is a good idea to test all four accounts and compare the rights assigned to each account. Afterwards, you can create other accounts or edit existing accounts to modify access levels as necessary. Each user account has its own user interface. At the University of Cyprus (UCy) Library , we have three user levels: Administrator, Technician, and an ordinary user account.
Getting Acquainted with GLPI
GLPI is a multipurpose tool that manages both users and their equipment.
The purpose of GLPI is to store information. This information is divided into categories, and the categories have sub-categories. Each sub-category has entries. Each entry has details. Entries from different categories can interrelate, forming bonds between hardware, software, users, suppliers, documents, contracts, support tickets, and more.
To get started with GLPI, log in as the system administrator to see the administrator's user interface (Figure 3). Here, you will notice six main categories: Inventory, Assistance, Management, Tools, Administration, and Setup. The Inventory menu provides information on computers and devices running on your network. The first sub-category, Computers, presents a list of your computer equipment, as seen in Figure 4. With the use of search filters, you can search this list.
GLPI lets you set up pre-configured templates to add similar systems to the inventory. To create the entry, use a template, then edit the settings for the serial number, host name, and IP address as necessary. Also, you can enter a full entry manually. Figure 5 shows the screen that lets you add a computer to the inventory. The green hexagon with a magnifying lens on the right of a field indicates that you can add/edit/delete an entry for that field.
The other side of GLPI is its role in providing help desk support. The GLPI user interface makes it easy to create and manage help tickets. An ordinary user can create a new ticket to request support. Admins and technicians can add tickets manually or assign a user's ticket to the appropriate technician.
The Assistance option has the sub-categories Tracking, Helpdesk, Planning, and Statistics.
Tracking allows the admin to view a list of all tickets submitted by users. By default, the list shows the tickets currently open. A search tool offers simple and advanced search filters to narrow down the list of tickets according to your criteria, sort the list, and perform actions on multiple items. Also, you can export the resulting items in PDF, Excel, and other formats. A system administrator can perform actions on all tickets, but ordinary users can only access information on their own tickets.
Active tickets are summarized for the user in a list. The list includes several data fields, such as the creation date, the last update date, the requester, and the technician in charge of the ticket. Click on a ticket in the list to view, edit, or close the ticket (Figure 6).
After and Before
GLPI's Planning feature lets you schedule upcoming interventions and events in a calendar view. Also, you can export the calendar data in iCalendar format to synchronize with other calendar tools, such as the tools of Mozilla's Calendar Project .
GLPI also lets you view statistics on tickets submitted by users, including details on each item (location, operating system, graphics card, etc.), as well as reports on overall parameters, such as the total number of tickets, the number of unresolved tickets, the average and maximum ticket resolution delays, and more. Results appear in either table or chart format.
GLPI's Management features let you keep tabs on contacts, suppliers, contracts, and documents. A supplier is similar to a contact, although the term has a special meaning. A supplier is a person you buy equipment from, so an entry in the supplier list can link directly to an item in the inventory. This way, when you view the details of an item in the inventory, you automatically know who you bought it from and how to contact the supplier.
Contract entries can refer to actual contract documents, as well as details on the warranty, expiration date, renewal costs, and so on. Contracts are also linked to items in your inventory and to the supplier that issued the contract. Also, you can attach a scanned document so that you can generate the actual contract anytime in electronic form.
The Documents module is a universal module with many uses. A document can reference a support ticket or a contract, or it can simply be an important paper you want to preserve. In my case, I find it very useful to scan all documents about contracts, maintenance, and invoices. Another useful characteristic of documents is the ability to attach files, such as screen captures and spreadsheets, to support tickets.
The Tools feature provides access to a variety of support information. GLPI divides the Tools section into the categories Notes, Knowledge base, Reservations, and Reports. An optional fifth category called OCSNG  lets you import data from another application. Notes can be either personal (viewed only by the author) or public. Only super-admin users can add public notes.
A knowledge base is a FAQ (Frequently asked Question) list, and you can create your own FAQ on any topic. My strategy is to add FAQs after observation of support tickets. If a question is asked repeatedly, either by the same group of people again and again or by different users, I add it as a new FAQ.
A reservation is a request for loanable material. At the library of UCy, we use reservations to share loanable laptops and DLP projectors among our staff. Each staff member can reserve equipment and access a calendar to view the current set of reservations.
All users, regardless of access level, get to define some personal settings. To access personal settings, click the Settings link in the upper right corner of the application. In addition to your name, phone, email, and mobile phone number, you can define a preferred display language and set other parameters governing the way GLPI displays ticket information. Additionally, you can change your account password, as long as your account is not authenticated by an external source such as an LDAP directory.
GLPI offers seven types of reports. The default report is a list of the amount of items per category (e.g., 100 computers, 40 printers, etc.). A contracts report allows you to view equipment organized according to contract details, like date of purchase, warranty expiration date, begin and end dates, and more. A yearly report is an annual report on materials for one or more years. Hardware financial information is a summary for computers, printers, screens, peripherals, and networks. Other financial information is a summary for cartridges, consumables, and software licenses. The network report offers information about the network. Finally, a loan report summarizes past and future reservations for a specified user.
Administration and Setup
The Administration and Setup sections of the main menu help you configure and manage your GLPI system. The Administration menu lets you configure users and groups for GLPI. Also, you can implement logging and create snapshots of the database. The Setup menu lets you configure global settings for notifications, authentication, mail gateways, document types, external links, and and other features.
This short tour has only touched the surface of the many features you'll find within the GLPI open source asset management and helpdesk system. In addition to a wide range of GLPI built-in features, additional options are available through external plugins. GLPI provides online documentation in many languages, and you can always ask for help in an active community forum.
GLPI is easy to implement and has a short learning curve for the end user. On the other hand, system administrators will find more than enough options for customizing the system.
- GLPI Project: http://www.glpi-project.org/spip.php?lang=en
- Apache Foundation: http://www.apache.org/
- MySQL: http://www.mysql.org/
- PHP: http://www.php.net/
- openSuse Linux: http://www.opensuse.org/
- University of Cyprus Library: http://library.ucy.ac.cy/ENGLISH/index_en.htm
- Mozilla Calendar Project: http://www.mozilla.org/projects/calendar/
- OCSNG: http://www.ocsinventory-ng.org/