В этой статье мы рассмотрим пошаговую установку и настройку 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
max_execution_time = 120 memory_limit = 512M post_max_size = 80M upload_max_filesize = 80M
Создайте файл виртуал хоста:
touch /etc/apache2/sites-available/glpi.conf
И вставляем следующую конфигурацию Virtual Host:
<VirtualHost *:80> ServerName glpi.local DocumentRoot /var/www/glpi <Directory /var/www/glpi> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny allow from all AuthType Basic </Directory> LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-agent}i\"" combined CustomLog ${APACHE_LOG_DIR}/glpi_access.log combined ErrorLog ${APACHE_LOG_DIR}/glpi_error.log </VirtualHost>
Активируйте виртуалхост:
a2ensite glpi
service apache2 reload
Проверьте, что виртуалхост активен.
Откройте браузер и переходим по 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
Не забудьте отредактировать параметры под свои нужды. Полный список параметров можно найти тут https://documentation.fusioninventory.org/FusionInventory_agent/installation/windows/windows-installer-2.3.x-command-line/
Перейдите в 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
Скачиваем пакет
wget https://github.com/fusioninventory/fusioninventory-agent/releases/download/2.5.2/fusioninventory-agent_2.5.2-1_all.deb
Установите пакет:
dpkg -i fusioninventory-agent_2.5.2-1_all.deb
В конфигурационном файле агента (/etc/fusioninventory/agent.cfg) измените следующие параметры:
delaytime = 5 server = _http://glpi.local/plugins/fusioninventory/
Перезапустите агент:
systemctl restart fusioninventory-agent
Если всё сделано правильно, вы увидите ваш Ubuntu компьютер/сервер в Assets-> Computers.
Статистика и отчеты в GLPI
В GLPI есть встроенные отчеты.
Но скорее всего вам потребуются отчеты по собственным параметрам. Для этого в GLPI есть плагины:
- https://plugins.glpi-project.org/#/plugin/reports — довольно просто позволяет создавать свои отчеты через PHP
- https://plugins.glpi-project.org/#/plugin/metabase — плагин для интеграции с https://www.metabase.com/
Пример встроенного отчета из плагина Reports:
GLPI развивается более 15 лет и содержит в себе огромное количество возможностей для управления ИТ инфраструктуры, а сообщество развивает и поддерживает плагины для различных интеграций и функционала. Система имеет огромные возможности модификации своих элементов, поэтому каждая компания настраивает GLPI под себя.
Спасибо, очень интересно и подробно. Только недавно нашел ваш ресурс, читаю уже месяц, все очень толково написано.
+
Поправил
Скажите будет ли продолжение по настройке и эксплуатации GLPI?
Пока не планируется. Цель этой статьи — рассказать об инструменте.
Тонкие детали и настройки обычно мало интересны широкой аудитории. А полный пор GLPI гайд от и до писать оочень трудоемко.
Понял, благодарю за ответ.
Добрый день.
Интересует развертывание агентов в сети и их обновление, посредством GLPI. Везде пишут, что это все просто, а вот как нету.
Вы это реализовывали?
Добрый день,
Ни возникло ни у кого проблем с установкой GLPI?
Мне при установке выдало ошибку
None or Invalid host in HTTP_REFERER. Reload previous page before doing action again.
На этапе когда вбивал данные для подключения к базе нажал Дальше, а потом сразу ошибка.
Причем эта ошибка выскакивает если ставить на удаленный сервер.
Если ставить локально на компьютер используя XAMPP, то все норм.
chown nginx:nginx /var/www/glpi
ну или где на что он у вас установлен.chto-to ne podnimaetsa glpi.local (((
na etape:
» sudo a2ensite glpi
sudo service apache2 reload
Проверьте, что виртуалхост активен.
настройка apache для glpi
Откройте браузер и переходим по URL адресу, который вы указали в виртуал хосте. В моём случае это glpi.local»
Такая же фигня.
Апач запущен, виртуальный хост активен, но ни на glpi.local ни на 127.0.0.1/glpi никого
Сам спросил, сам отвечаю.
После того как положил GLPI в /var/www/html/glpi (а не в /var/www/glpi) стал заходить по ip.
С glpi.local интереснее. У меня машина на которой ставлю glpi в доменной сети, соответственно DNS-серверы у неё прописаны доменные. А они знать не знают кто-такой этот glpi.local. Поэтому дописал в /etc/hosts
127.0.0.1 glpi.local
И заработало)
жаль нет темы с snmp обнаружением и как это все настроить, ну а в общем статья годная. Спасибо автору!
ls /etc/apace2/sites-enabled/
ls: cannot access ‘/etc/apace2/sites-enabled/’: No such file or directory
Не работает
При попытке открыть url xxx.xxx.xx.xx/glpi
The requested URL was not found on this server.
Установка Fusion Inventory
выполнил 2 пункта инструкции
перехожу к пункту 3
На сайте GLPI перейдите в Setup -> Plugins и нажмите на иконку установки плагина
но плагин для установки не появляется.
Точно такая же проблема, как-то удалось решить ?
добрый день!
1) cd /var/www/glpi/plugins
2) wget https://github.com/fusioninventory/fusioninventory-for-glpi/releases/download/glpi9.4%2B2.4/fusioninventory-9.4+2.4.tar.bz2
3) tar xvf fusioninventory-9.4+2.4.tar.bz2
После этого плагин появится и появится иконка установки (добавления)
Добавил установку в docker:
https://hub.docker.com/r/mrlioncub/glpi
При попытке установки агента на виндовс, появляется ошибка
---------------------------
FusionInventory Agent 2.6 (x64 edition) Setup
---------------------------
Command line error: The value '_http:' is not allowed for /server= option
---------------------------
ОК
---------------------------
Хотя сервер указан: /server=»_http://glpi/plugins/fusioninventory»
В чем можеть быть проблема?
Вроде как ругается на синтаксис для версии 2.6 (не нашел мануала на нее), но даже если выставлять одинарные кавычки, то все равно будет ошибка
fusioninventory-agent_windows-x64_2.6.exe /S /acceptlicense /add-firewall-exception /execmode=Service /installtasks=Full /timeout=30 /delaytime=5 /server='http://glpi/plugins/fusioninventory' /runnow
Разобрался с проблемой. Скрипт запускал в powershell, а там видать есть разница в синтаксисе. Через CMD все заработало.
Подскажите, в чем может быть проблема. Устанавливаю пока агента только на компы с вин10, и есть часть компов на которые агент поставился, но комп не инвентаризуется (в итоге нет связанного компа). А еще есть компы, на которые агент поставился, но в самом glpi не появились эти агенты.
Все компы в одном домене.
После установки агента, желательно вручную запускать сбор. Или ждать пока сам отправит. В настройках GLPI есть время сбора, можно менять.
Так на таких машинах уже прошло по несколько дней и несколько ребутов. Так что не думаю, что тут дело в сборе.
Такое бывает, если образ винды заливается одинаковый (с акрониса, например). Решение: убрать сбор ПК с id windows, идентифицировать по mac
https://avg-it.ru/info/articles/chto-delat-kogda-glpi-rabotaet-ne-korrektno/
Появилась еще более интересная проблема. У меня не устанавливается больше 16 агентов инвентаризации. Устанавливаю 17 агент на другой компьютер и у меня стирается в списке другой компьютер. Это еще что за ерунда?
Оказалось, что при добавлении одного «особого» компа, он удаляет часть других компов. С количеством это не связано. Осталось понять, почему из-за этого особенного компа, удаляются другие агенты.
Администрирование — Fusioninventory — Правила импорта и связей оборудования
В правилах
Update only mac address (mac on switch port) Нет
Import only mac address (mac on switch port) Нет
Computer constraint (name) Да
Computer update (by serial + uuid) Нет
Computer update (by serial) Нет
Computer update (by uuid) Нет
Computer update (by mac) Да
Computer update (by name) Да
Computer import (by serial + uuid) Нет
Computer import (by serial) Нет
Computer import (by uuid) Нет
Computer import (by mac) Да
Computer import (by name) Да
Computer import denied Нет
Спасибо, пока полет нормальный! Эти настройки вызывали конфликт по каким-то uuid и серийникам?
Да, по серийникам проблемы. Я из-за этого мониторы вручную решил заносить, так проще и отслеживать и контролировать, и мусора меньше. Принтеры тоже вручную, так как много дублей собирает если драйвера на один принтер стоят на нескольких компах. А у меня немногим больше 800 компов.
День добрый. У меня на некоторых АРМах проблемы со службой Fusioninventory. Переинсталлировала, результата нет. И в автоматическом режиме, и в ручном режиме служба Windows не запускается. Начинает и сразу останавливается с сообщением, что запуск прекращен. В чем может быть проблема и как ее исправить?
Думаю, для начала, посмотреть логи агента
C:\Program Files\FusionInventory-Agent\logs
Вчера ставил glpi GLPI 9.5.5 + FusionInventory 9.5+3.0
при установке через браузер, ругался, что не хватает php bz2, zip, intl
Решение было такое:
sudo apt-get update
apt-get install php7.4-intl
apt-get install php7.4-bz2
По zip не помню, вроде раскоментировал строку с zip c php.ini
Но можно попробовать команду
apt-get install php7.4-zip
Добрый день.
А как настроить https:// доступ? В каких файлах, если по этой статье мне сключить ssl ?
добавьте вот это:
sudo a2dissite 000-default.conf
Иначе новый конфиг не заработает, а будет грузиться конфиг по-умолчанию (/var/www/html)
свежая версия 10.х так же бесплатная и on-premised?
заметил что моя папка
/var/www/html/glpi/files/_sessions/
увеличивается напостой, мож кто знает почему?
Кто ставил 10 GLPI. В нем вроде своя инвентаризация появилась. Кто разбирался в ней?
Нужен совет, в glpi пропал super admin, как восстановить?
При входе в админскую уз, нет необходимых вкладок.
У меня LAMP по какой то причине накатил php 8.2, и долго искал решение по установке отсутствующих расширений, особенно bz2. Вдруг кому то помогу:
sudo add-apt-repository ppa:ondrej/php
sudo apt update
sudo apt install php8.2-bz2
Очень помогло осталось понять как прикрутить принтеры)))