GLPI + Fusion Inventory
Создаём базу и пользователя (USER и PASSWORD заменить на свои):
Добавляем в настройки апача (httpd.conf или httpd-vhosts.conf):
Идем на созданный сайт(http://
Устанавливаем FusionInventory (сервер)
Скачиваем FusionInventory плагин и распаковываем в папку плагинов GLPI:
Проверяем структуру папок, она должна выглядеть так:
- FusionInventory
- FusionInventory INVENTORY
- FusionInventory SNMP
Устанавливаем FusionInventory (клиент)
Скачиваем и устанавливаем клиент:
forge.fusioninventory.org/projects/fusioninventory-agent/wiki/Agent_supportedplateforms
При установке указываем путь к серверу(у Win версии настройки задаются во время установки):
Если используется DNS, то:
Для Active Directory:
Возможно придётся указать дополнительные настройки (proxy, etc) — чекбокс «Advanced» при установке.
После установки клиента, заходим в веб интерфейс GLPI -> «Дополнения» -> «FusionInventory» -> «Управление агентами» и смотрим появился ли компьютер в списке.
Чтобы агент не висел постоянно в памяти, то после установки:
Windows
- Скопировать папку установленного Fusion-Inventory
- В ней создать файл save_net.cmd с таким содержанием:
Не забываем изменить «glpi.mydomain» на свое имя/ip.
Для инвентаризации/обновления запускать созданный скрипт, а для сохранения конфигурации компьютера(на котором нет сети)в файл, создаём в папке с Fusion-Inventory каталог «xml» и файл save_local.cmd с таким содержанием:
После запуска этого скрипта конфигурация сохранится в каталог «xml». Для импорта конфигурации в базу — заходим в glpi -> «Дополнения» -> «FusionInventory» -> «Import agent XML file» и выбираем нужный файл из папки xml.
В итоге получим portable версию Fusion Inventory, которую можно запускать с флешки. Главное быть уверенным, что ни у кого нет какой либо живности на компьютере.
FusionInventory Agent что это за программа?
FusionInventory представляет из себя шлюз или модуль сбора информации, которая была отправлена агентами. Сбор информации может производиться с таких устройств как ПК, Принтеры, Виртуальные машины, Android-устройства.
Также FusionInventory может быть использовано в установке, обновления или удаления ПО.
Агент FusionInventory может отправить пакет Wake On LAN в локальную сеть для удаленного включения ПК. При использовании плагина GLPI возможно запланировать отправку запроса Wake On LAN.
Wake On LAN — технология включения компьютера через локальную сеть путем отправки специального пакета данных (magic packet). Для работы технологии сетевая карта должна поддерживать Wake On LAN.
Служба FusionInventory Agent
На компьютере может быть установлена служба FusionInventory Agent. Отключать ее не рекомендуется — FusionInventory это служебная программа, при отключении которой может нарушиться стабильная работа сети или некоторых служебных процессов.

Реализации FusionInventory
Модуль FusionInventory может быть реализован в двух решениях:
- FusionInventory Agent — мультиплатформенный агент. Выполнение большого количества задач управления, таких как локальная инвентаризация, развертывание программного обеспечения, обнаружение сети. Может использоваться как автономно, так и в сочетании с совместимым сервером (OCS Inventory, GLPI, OTRS, Uranos и подобные), действующим как централизованная контрольная точка.
- FusionInventory GLPI Plugin — диспетчер информационных ресурсов с дополнительным интерфейсом администрирования. Применяется для создания базы данных с инвентарем вашей компании (компьютер, программное обеспечение, принтеры и другое). Имеет расширенные функции, облегчающие повседневную жизнь для администраторов, например систему отслеживания заданий с уведомлением по почте и методы для создания базы данных с информацией о вашей сетевой топологии. Присутствует интегрированное решение отслеживания запросов.
Некоторые плюсы FusionInventory — кодировка по умолчанию в UTF-8, нет необходимости в промежуточном сервере (сбор напрямую в плагине GLPI). Нет необходимости в отслеживании синхронизации баз OCSа и GLPI.
Установщик FusionInventory Agent





Программу FusionInventory не рекомендуется удалять без необходимости.
Name already in use
If nothing happens, download GitHub Desktop and try again.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching Xcode
If nothing happens, download Xcode and try again.
Launching Visual Studio Code
Your codespace will open once ready.
There was a problem preparing your codespace, please try again.
Latest commit
Git stats
Files
Failed to load latest commit information.
README.md
The FusionInventory agent is a generic management agent. It can perform a certain number of tasks, according to its own execution plan, or on behalf of a GLPI server with fusioninventory plugin, acting as a control point.
Minimum perl version: 5.8
Mandatory Perl modules:
- File::Which
- LWP::UserAgent
- Net::IP
- Text::Template
- UNIVERSAL::require
- XML::TreePP
Optional Perl modules:
- Compress::Zlib, for message compression
- HTTP::Daemon, for web interface
- IO::Socket::SSL, for HTTPS support
- LWP::Protocol::https, for HTTPS support
- Proc::Daemon, for daemon mode (Unix only)
- Proc::PID::File, for daemon mode (Unix only)
Optional Perl modules:
- Net::CUPS, for printers detection
- Parse::EDID, for EDID data parsing
- DateTime, for reliable timezone name extraction
- dmidecode, for DMI data retrieval
- lspci, for PCI bus scanning
- hdparm, for additional disk drive info retrieval
- monitor-get-edid-using-vbe, monitor-get-edid or get-edid, for EDID data access
- ssh-keyscan, for host SSH public key retrieval
Network discovery tasks
Mandatory Perl modules:
- Thread::Queue
Optional Perl modules:
- Net::NBName, for NetBios method support
- Net::SNMP, for SNMP method support
- arp, for arp table lookup method support
Network inventory tasks
Mandatory Perl modules:
- Net::SNMP
- Thread::Queue
Optional Perl modules:
- Crypt::DES, for SNMPv3 support
Wake on LAN task
Optional Perl modules:
- Net::Write::Layer2, for ethernet method support
Mandatory Perl modules:
- Archive::Extract
- Digest::SHA
- File::Copy::Recursive
- JSON::PP
- URI::Escape
Mandatory Perl modules for P2P Support:
- Net::Ping
- Parallel::ForkManager
See CONTRIB to find references to FusionInventory Agent related scritps/files
- main site: http://www.fusioninventory.org
- Github org: http://github.com/fusioninventory/
Project mailing lists:
Project IRC channel:
- #FusionInventory on FreeNode IRC Network
Please report any issues on Github.
This software is licensed under the terms of GPLv2+, see LICENSE file for details.
Additional pieces of software
The fusioninventory-injector script:
- author: Pascal Danek
- copyright: 2005 Pascal Danek
FusionInventory::Agent::Task::Inventory::Input::Virtualization::Vmsystem contains code from imvirt:
Установка и настройка GLPI и FusionInventory, инвентаризация ИТ инфраструктуры
23.09.2020
insci
CentOS, Linux, Ubuntu
комментариев 39
В этой статье мы рассмотрим пошаговую установку и настройку GLPI. GLPI (Gestionnaire Libre de Parc Informatique — франц.) – это полноценная open-source ITSM система для управления процессами, инвентаризации оборудования и софта, а также для управления заявками и инцидентами. GLPI это большой комбайн, в котором заложено большое количество функционала по управлению ИТ на предприятии. Некоторые из возможностей GLPI:
- Инвентаризация компьютеров, серверов, оргтехники (принтеры, мониторы, МФУ, картриджи и прочее)
- Инвентаризация установленных на компьютерах программ и лицензий
- Управление заявками и инцидентами (регистрация обращений пользоватетелей, HelpDesk)
- База знаний
- Ведение проектов
- Управление бюджетом
Установка и настройка стека LAMP в Linux
GLPI это обычное веб приложение с базой данных, поэтому на сервере нужно развернуть LAMP стек (в данной статье GLPI будет установлен на apache, но возможна также установка на nginx).
apt update
apt install mysql-server mysql-client apache2 php php-mysql libapache2-mod-php php-json php-gd php-curl php-mbstring php-cas php-xml php-cli php-imap php-ldap php-xmlrpc php-apcu
Создайте новую mysql базу данных (можно использовать и mariadb) и пользователя для GLPI:
mysql -u root -p
CREATE DATABASE glpi;
CREATE USER ‘glpi’@’localhost’ IDENTIFIED BY ‘password’;
GRANT ALL PRIVILEGES ON glpi.* TO ‘glpi’@’localhost’;
FLUSH PRIVILEGES;
exit;
Скачайте и распакуйте дистрибутив GLPI:
wget https://github.com/glpi-project/glpi/releases/download/9.4.5/glpi-9.4.5.tgz
tar xvf glpi-9.4.5.tgz
Скопируйте GLPI в веб директорию:
mkdir /var/www/glpi
cp -R glpi/* /var/www/glpi
chown -R www-data:www-data /var/www/glpi
Создайте файл виртуал хоста:
И вставляем следующую конфигурацию Virtual Host:
Проверьте, что виртуалхост активен.

Откройте браузер и переходим по URL адресу, который вы указали в виртуал хосте. В моём случае это glpi.local .

Перед вами должно появится окно веб-установщика GLPI.
Установка GLPI
Сначала нужно выбрать язык интерфейса GLPI и принять лицензионное соглашение. На следующем шаге нажмите Install и убедитесь, чтобы все тесты прошли успешно.

Укажите данные для подключения к базе данных.

Выберите ранее созданную базу данных:

Нажмите Continue и дождитесь импорта данных. База данных может наполняться продолжительное время (несколько минут). Это можно проверить командой show processlist; в mysql.

После этого установка GLPI практически завершена. Зайдите в панель управления (по-умолчанию, логин и пароль – glpi).

Базовая настройка GLPI
Для начала необходимо изменить пароли для встроенных пользователей, это можно сделать на вкладке Administration -> Users.


Если вы не хотите использовать встроенных пользователей, можно их разом отключить.

Обзор интерфейса GLPI
Пробежимся по интерфейсу GLPI и рассмотрим некоторые из возможностей системы.
Вкладка Assets

Эта вкладка отвечает за инвентаризацию оборудования и софта. В GLPI есть возможность создавать шаблоны. Вы можете создавать различные шаблоны для разных устройств (компьютеров, роутеров, мониторов и т.д). Удобство в том, что при создании новых объектов вам не нужно заново заполнять статические данные (например, расположение или тип объекта).

Механизм шаблонов поддерживается и другими функциями, не только инвентаризацией.


Вкладка Assistance
Вкладка отвечает за управление задачами, инцидентами и проектами. Если вы знакомы с Jira, то здесь такой же принцип.

Есть возможность кастомизировать некоторые поля тикетов и создавать шаблоны для них (в Setup -> Dropdowns).
Вкладка Management
Также относится к инвентаризации – можно вести бюджет, учитывать лицензии, поставщиков и т.д.

Вкладка Tools
Эта вкладка содержит в себе разные инструменты – проекты, напоминания, отчеты и базу знаний (wiki).

Управление базой знаний:

Вкладка Administration
Здесь вы можете управлять пользователями, группами и сущностями GLPI, также есть лог действий пользователей GLPi.

Вкладка Setup
Также отвечает за управление GLPI – настройка пунктов меню, изменение различных форм и полей.

Плагин FusionInventory — автоматическая инвентаризация серверов и компьютеров
Рассмотрим одно из применений GLPI в реальной жизни – обнаружение устройств в сети и автоматическое заполнение инвентаризационных данных по оборудованию и установленным программам.
В GLPI не предусмотрено автоматическое обнаружение, но с этим может помочь плагин FusionInventory.
Установка Fusion Inventory

- Скачайте плагин FusionInventory с GitHub https://github.com/fusioninventory/fusioninventory-for-glpi/releases . В моём случае это последняя версия fusioninventory-9.4+2.4.tar.bz2;
- Распакуйте архив ( tar xvf arch.tar.bz2 ) в директорию plugins (в моём случае это /var/www/glpi/plugins);
- На сайте GLPI перейдите в Setup -> Plugins и нажмите на иконку установки плагина;
- Активируйте плагин;

Теперь во вкладке Administration появился пункт FusionInventory.

Перед установкой агентов на компьютеры и сервера нужно сразу включить нужные модули агентов.
Перейдите в Administration -> FusionInventory -> General -> General Configuration

- Computer Inventory
- Network inventory (SNMP)
- Network discovery
- Package deployment
- Collect data
Установка Fusion Agent в Windows
Установить Fusion Agent можно либо через графический интерфейс (инсталлятор), либо через командную строку. Мы будем рассматривать второй вариант, так как он легко масштабируется для разворачивания через групповые политики или SCCM.
- Скачайте агент https://github.com/fusioninventory/fusioninventory-agent/releases. В моём случае я качаю Windows 64-bit OS: fusioninventory-agent_windows-x64_2.5.2.exe (не портейбл);
- Скопируйте установочный .ехе файл fusioninventory на компьютер, с которого вы хотите собирать данные;
- Откройте командную строку с правами администратора и выполните:
fusioninventory-agent_windows-x64_2.5.2.exe /S /acceptlicense /add-firewall-exception /debug=2 /execmode=Service /installtasks=Full /timeout=30 /delaytime=5 /server=»_http://glpi.local/plugins/fusioninventory/» /runnow
Рассмотрим основные параметры уставки
- /S – Silent установка, без графического интерфейса
- /debug=2 – для подробных логов. При боевых развертываниях убирайте этот ключ
- /execmode=Service – ставим агент как службу Windows
- /installtasks=Full – устанавливаем все возможные сборщики
- /delaytime=5 – Задержка перед первым обращения к серверу. Если разворачиваете на большое число компьютеров, ставьте число повыше
- /server – адрес сервера GLPI
Перейдите в Administration -> FusionInventory -> General -> Agent Management, здесь вы можете управлять агентами

Убедитесь, что данные с данного компьютера появились в GLPI. Перейдите в Assets -> Computers.

Здесь отображаются все компьютеры, на которые вы установили агенты FusionInventory с модулем Collect Data. Откройте один из компьютеров и посмотрите на собранные данные. Как вы видите, в базе данных GLPI появилась информация об версии и билде Windows с сервера с агентом.


Вся информация заполняется автоматически из данных, которые приходят с агента. Также эта информация сортируется по категориям. Например, при установке агента на обычный ПК, можно получить информацию о периферийных устройствах. На скриншоте ниже информация о мониторах, подключенных к компьютеру где установлен агент.

Также вы видит список установленного на компьютере ПО.

Установка Fusion Agent на Linux
Рассмотрим установку из пакета на Ubuntu Server 18.04. Установите необходимые зависимости
apt install dmidecode hwdata ucf hdparm perl libuniversal-require-perl libwww-perl libparse-edid-perl libproc-daemon-perl libfile-which-perl libhttp-daemon-perl libxml-treepp-perl libyaml-perl libnet-cups-perl libnet-ip-perl libdigest-sha-perl libsocket-getaddrinfo-perl libtext-template-perl libxml-xpath-perl libyaml-tiny-perl libnet-snmp-perl libcrypt-des-perl libnet-nbname-perl libdigest-hmac-perl libfile-copy-recursive-perl libparallel-forkmanager-perl
dpkg -i fusioninventory-agent_2.5.2-1_all.deb
В конфигурационном файле агента (/etc/fusioninventory/agent.cfg) измените следующие параметры:
systemctl restart fusioninventory-agent
Если всё сделано правильно, вы увидите ваш Ubuntu компьютер/сервер в Assets-> Computers.

Статистика и отчеты в GLPI
В GLPI есть встроенные отчеты.

Но скорее всего вам потребуются отчеты по собственным параметрам. Для этого в GLPI есть плагины:
-
— довольно просто позволяет создавать свои отчеты через PHP — плагин для интеграции с https://www.metabase.com/
Пример встроенного отчета из плагина Reports:

GLPI развивается более 15 лет и содержит в себе огромное количество возможностей для управления ИТ инфраструктуры, а сообщество развивает и поддерживает плагины для различных интеграций и функционала. Система имеет огромные возможности модификации своих элементов, поэтому каждая компания настраивает GLPI под себя.
Чтобы рассмотреть все возможности более подробно, вы можете воспользоваться официальной демо инсталяцией https://demo.glpi-project.org/
Предыдущая статья Следующая статья