Debian программа для инвентаризации компьютеров
Пришло время и в нашей компании провести учет компьютерной техники. Компания растет, расширяется, и памяти IT отдела плюс нескольких XLS-файлов уже не хватает для быстрого и достоверного ответа что у нас и где находится.
Что имеем:
1) каждому пользователю выдано необходимое оборудование (несколько мониторов, планшет, принтер, сканер, бесперебойник etc);
2) каждому на компьютер установлен набор бесплатного софта, плюс платные программы;
3) есть несколько датацентров, в каждом из которых есть несколько стоек, заполненных серверами и активным оборудованием;
Чего хотелось достичь:
1) вести учет комплектующих в каждом компьютере, возможность видеть проделанные апгрейды и ремонты;
2) иметь полный список купленного софта, с серийниками и дистрибутивами;
3) видеть какие лицензии кому выданы, и на каких машинах они установлены;
4) возможность строить любые отчеты, например у Петра Иванова находится — системный блок в такой-то конфигурации, 2 монитора, ноутбук, рабочее место на 99 этаже, в комнате 9901, пользуется лицензиями Windows XP, Office 2007, WinRar, Total Commander; или сколько у нас осталось лицензий на Photoshop и кому выданы занятые; или сколько и каких серверов (серийники и инвентарники такие-то) занято под такой то проект, какой на них установлен софт, во сколько обходится стоимость проекта (внесена стоимость серверов и лицензий); и так далее и тому подобное.
P.S. Также GLPI может использоваться как система подачи заявок в HelpDesk, но мы уже используем JIRA, если будет интересно расскажу, но пока не планировал.
Итак, я бы хотел рассказать о том, как я выполнил поставленные задачи. Было бы интересно рассказать сколько я продуктов перепробовал, перед тем как остановится на этом, но может в следующий раз. В данном посте приступлю конкретно к необходимым действиям, с помощью которых любой сможет установить такой же сервис у себя (это будет пошаговое руководство для начинающих с примерами команд и их выводом в консоль, не считая кучи картинок). Сейчас рассмотрим только установку и необходимую настройку, в дальнейшем хочу еще немного практики (связка с OCS Inventory), а уж после наверно теория. В нашей компании среди Linux-систем выбран Debian, на его примере и будем настраивать.
Часть 1: Установка
1. Установка ОС
У меня это debian-504-i386-netinst.iso Нам будет достаточно сетевой установки, остальное мы будем доставлять сами. После установки установим следующие компоненты:
2.Настраиваем MySQL
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
2.2 Создаем базу данных для нашей программы:
mysql> create database glpidb;
Query OK, 1 row affected (0.00 sec)
2.3 Создаем пользователя, и выдаем ему права от созданной базы:
grant all privileges on glpidb.* to glpiuser@localhost identified by 'Здесь укажите ваш пароль для него';
mysql> grant all privileges on glpidb.* to glpiuser@localhost
-> identified by 'password';
Query OK, 0 rows affected (0.00 sec)
2. Установка GLPI
3. Конфигурируем GLPI
Заходим по адресу:
3.1 Выбираем язык
3.2 Принимаем лицензионное соглашение
3.3 Выбираем установку
3.4 Проверяем окружение
3.5 Вот так например выглядит ошибка, если не хватает прав на запись в папки
3.6 Вводим данные для коннекта к MySQL
3.7 Выбираем свою базу данных GLPIDB
3.8 База успешно подключена
3.9 Все готово, здесь перечислены дефолтные логины и пароли.
3.10 Можем проверить и зайти под супер-админом (glpi:glpi)
3.11 чтобы поменять пользователю интерфейс на русский, необходимо выбрать справа вверху «Setting» и на страничке выбрать язык. Причем можно выбрать как глобальный для всех новых пользователей, так и для текущего аккаунта.
И так, на этом установка окончена. Можно логиниться используя дефолтные пароли и заносить данные.
Часть 2.Настройка
1. Настройка LDAP
Теперь нам было бы удобнее привязать LDAP к нашей системе инвентаризации. Мы сможем импортировать пользователей к нам в систему, ну а после раздавать им права и привязывать к ним технику.
1.1 Выбираем в меню Setup -> Authentication
1.2 Далее нам нужен LDAP
1.3 И тут же видим ошибку
1.4 Рестартим Apache
1.5 Обновляем страницу и добавляем сервер LDAP
1.5.1 Теперь подробнее по полям, которые необходимо заполнить
(В версии 0.72.4 добавили кнопку Active Directory, нажимая которую, подставятся значения специфичные для AD)
Группы я не использую.
GLPI/LDAP Links — Здесь заполняем привязку полей AD к полям пользователей в GLPI, так у нас импортируются в GLPI пользователи AD с полями имя, фамилия, емайл.
Surname — sn
Firstname — givenname
E-Mail — mail
1.6 Здесь же можем протестировать соединение. Если все ок — получим ответ:
1.7 Также можем добавить второй сервер LDAP, на случай если откажет первый, и также можем его протестировать:
2.Настройка бекапа
2.1 Создадим файл backup.sh следующего содержания
user="-uroot"
pass="-pПарольотMySQL"
path="/var/www/glpi/files/_dumps"
date="`date +%Y-%m-%d`"
mysqldump $user $pass glpidb > $path/$date.glpidb.backup.sql
2.2 Выставляем планировщик на запуск нашего бекапа, например ежедневно в 23 часа:
Теперь в меню Administration — Data видим сделанный нами бекап, и можем его оттуда же восстановить.
23.09.2020
insci
CentOS, Linux, Ubuntu
комментария 34
В этой статье мы рассмотрим пошаговую установку и настройку GLPI. GLPI (Gestionnaire Libre de Parc Informatique — франц.) – это полноценная open-source ITSM система для управления процессами, инвентаризации оборудования и софта, а также для управления заявками и инцидентами. GLPI это большой комбайн, в котором заложено большое количество функционала по управлению ИТ на предприятии. Некоторые из возможностей GLPI:
- Инвентаризация компьютеров, серверов, оргтехники (принтеры, мониторы, МФУ, картриджи и прочее)
- Инвентаризация установленных на компьютерах программ и лицензий
- Управление заявками и инцидентами (регистрация обращений пользоватетелей, HelpDesk)
Установка и настройка стека LAMP в Linux
GLPI это обычное веб приложение с базой данных, поэтому на сервере нужно развернуть LAMP стек (в данной статье GLPI будет установлен на apache, но возможна также установка на nginx).
Совет. В этом примере мы покажем, как установить GLPI на Ubuntu. Однако инструкция полностью подходит для развертывания GLPI на любом другом дистрибутиве Linux. Например, для CentOS используйте пакетный менеджер yum, вместо apt (или dnf в CentOS 8).
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:
Скопируйте GLPI в веб директорию:
mkdir /var/www/glpi
cp -R glpi/* /var/www/glpi
chown -R www-data:www-data /var/www/glpi
Совет. Довольно часто при развертывании GLPI встречаются ошибки, связанные со стандартными настройками PHP, поэтому рекомендуем сразу увеличчить лимиты для PHP. Вставьте следующие параметры в конец файла /etc/php/7.2/apache2/php.ini:
Создайте файл виртуал хоста:
И вставляем следующую конфигурацию Virtual Host:
Проверьте, что виртуалхост активен.
Откройте браузер и переходим по URL адресу, который вы указали в виртуал хосте. В моём случае это glpi.local .
Перед вами должно появится окно веб-установщика GLPI.
Установка GLPI
Сначала нужно выбрать язык интерфейса GLPI и принять лицензионное соглашение. На следующем шаге нажмите Install и убедитесь, чтобы все тесты прошли успешно.
Укажите данные для подключения к базе данных.
Выберите ранее созданную базу данных:
Нажмите Continue и дождитесь импорта данных. База данных может наполняться продолжительное время (несколько минут). Это можно проверить командой show processlist; в mysql.
После этого установка GLPI практически завершена. Зайдите в панель управления (по-умолчанию, логин и пароль – glpi).
Базовая настройка GLPI
Для начала необходимо изменить пароли для встроенных пользователей, это можно сделать на вкладке Administration -> Users.
Если вы не хотите использовать встроенных пользователей, можно их разом отключить.
Примечание. GLPI рекомендует удалить файл install/install.php в целях безопасности. Сделайте командой: rm /var/www/glpi/install/install.php
Обзор интерфейса GLPI
Пробежимся по интерфейсу GLPI и рассмотрим некоторые из возможностей системы.
Вкладка Assets
Эта вкладка отвечает за инвентаризацию оборудования и софта. В GLPI есть возможность создавать шаблоны. Вы можете создавать различные шаблоны для разных устройств (компьютеров, роутеров, мониторов и т.д). Удобство в том, что при создании новых объектов вам не нужно заново заполнять статические данные (например, расположение или тип объекта).
Механизм шаблонов поддерживается и другими функциями, не только инвентаризацией.
Вкладка Assistance
Вкладка отвечает за управление задачами, инцидентами и проектами. Если вы знакомы с Jira, то здесь такой же принцип.
Есть возможность кастомизировать некоторые поля тикетов и создавать шаблоны для них (в Setup -> Dropdowns).
Вкладка Management
Также относится к инвентаризации – можно вести бюджет, учитывать лицензии, поставщиков и т.д.
Вкладка Tools
Эта вкладка содержит в себе разные инструменты – проекты, напоминания, отчеты и базу знаний (wiki).
Управление базой знаний:
Вкладка Administration
Здесь вы можете управлять пользователями, группами и сущностями GLPI, также есть лог действий пользователей GLPi.
Вкладка Setup
Также отвечает за управление GLPI – настройка пунктов меню, изменение различных форм и полей.
Плагин FusionInventory — автоматическая инвентаризация серверов и компьютеров
Рассмотрим одно из применений GLPI в реальной жизни – обнаружение устройств в сети и автоматическое заполнение инвентаризационных данных по оборудованию и установленным программам.
В GLPI не предусмотрено автоматическое обнаружение, но с этим может помочь плагин FusionInventory.
Установка Fusion Inventory
Теперь во вкладке Administration появился пункт FusionInventory.
Перед установкой агентов на компьютеры и сервера нужно сразу включить нужные модули агентов.
Перейдите в Administration -> FusionInventory -> General -> General Configuration
- Computer Inventory
- Network inventory (SNMP)
- Network discovery
- Package deployment
- Collect data
Установка Fusion Agent в Windows
Установить Fusion Agent можно либо через графический интерфейс (инсталлятор), либо через командную строку. Мы будем рассматривать второй вариант, так как он легко масштабируется для разворачивания через групповые политики или SCCM.
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
Совет. После установки, в случае возникновения проблем, можно посмотреть лог агента по пути C:\Program Files\FusionInventory-Agent\logs. Параметры агента хранятся в реестре, по пути Computer\HKEY_LOCAL_MACHINE\SOFTWARE\FusionInventory-Agent.
Перейдите в Administration -> FusionInventory -> General -> Agent Management, здесь вы можете управлять агентами
Убедитесь, что данные с данного компьютера появились в GLPI. Перейдите в Assets -> Computers.
Здесь отображаются все компьютеры, на которые вы установили агенты FusionInventory с модулем Collect Data. Откройте один из компьютеров и посмотрите на собранные данные. Как вы видите, в базе данных GLPI появилась информация об версии и билде Windows с сервера с агентом.
Вся информация заполняется автоматически из данных, которые приходят с агента. Также эта информация сортируется по категориям. Например, при установке агента на обычный ПК, можно получить информацию о периферийных устройствах. На скриншоте ниже информация о мониторах, подключенных к компьютеру где установлен агент.
Также вы видит список установленного на компьютере ПО.
Установка Fusion Agent на Linux
Рассмотрим установку из пакета на Ubuntu Server 18.04. Установите необходимые зависимости
dpkg -i fusioninventory-agent_2.5.2-1_all.deb
В конфигурационном файле агента (/etc/fusioninventory/agent.cfg) измените следующие параметры:
systemctl restart fusioninventory-agent
Если всё сделано правильно, вы увидите ваш Ubuntu компьютер/сервер в Assets-> Computers.
Статистика и отчеты в GLPI
В GLPI есть встроенные отчеты.
Но скорее всего вам потребуются отчеты по собственным параметрам. Для этого в GLPI есть плагины:
Пример встроенного отчета из плагина Reports:
GLPI развивается более 15 лет и содержит в себе огромное количество возможностей для управления ИТ инфраструктуры, а сообщество развивает и поддерживает плагины для различных интеграций и функционала. Система имеет огромные возможности модификации своих элементов, поэтому каждая компания настраивает GLPI под себя.
Во время установки введем пароль для Mysql базы данных (доступ root).
Зашли в базу mysql
Создали бд glpi (обязательно с таким именем);
Просмотрим список баз
Далее создадим пользователя и назначим ему привилегии на нашу базу
Всё наша база готова для дальнейшего использования совместно с glpi.
Отредактируем my.cnf для доступа к бд(если надо, если бд на внешем сервере). Идем далее.
Все готово. Перейдем к настройке apache2. Да да. На nginx не работает.
Перенесем дефолтный конфиг
Отредактируем его. Поправим одну строку с путем к glpi
Сейвимся и запускаемся:
dГотово далее перейдем к настройка glpi
Перейдем в браузер и введем ip нашего сервера.
Выбираем русский и отвечаем на полученные вопросы. Особое внимание необходимо уделить параметрам подключения к базе данных.
Пользователь glpi
Пароль ваш пароль
Сервер бд – localhost
После этого выйдет окно с выбором бд
Нажимаем продолжить(выбираем glpi). Далее выйдет окно со входом в glpi. Пользователь – glpi, пароль – glpi.
Всё мы попали в web-морду. Нам необходимо удалить файл установки(для безопасности)
Теперь нам необходимо поменять пароли у существующих пользователей. Переходим в администрирование > пользователи. Меняем пароли
Переходим на сайт и в расширения сначала устанавливаем а затем активируем данный плагин. Также необходимо будет зайти в администрирование > организации > root entry > fusion invenroty > вбиваем ip нашего сервера(самого себя).
Установка самого агента:
The content of the dists pages can help you do identify support operating system.
Установка дополнительных пакетов:
ESX inventory задания
Расскоментим и отредактируем строку
Соответcвенно меняем на свой сервер.
Или есть вариант использовать мой скрипт автоматической установки и настройки агента
Ip поменяйте на свой.
5 thoughts on “ Установка GLPI на ubuntu/debian. Инвентаризация и управление парком пк ”
Добрый день, спасибо за статью. Продолжайте писать! А у вас получилось сделать Network inventory (SNMP) или Network discovery? Было бы здорово узнать ваш опыт.
Все сделанно строго ману
Забыл добавить, что это при запуске агента.
На 16.04 не работает. Там php 7-й версии
для php 7 установите дополнительные пакеты
sudo apt-get install php7.0-xml php7.0-singlexml php7.0-xmlrpc
Добавить комментарий
Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.
Добрый День. Подскажите софт для инвентаризации?! Задача стоит такая выявить все компьютеры в сети, узнать какое у них железа на борту, ну и желательно возможность вести сопроводиловку. Спасибо!
Башка и блокнот.
Для серверных Racktables можно использовать.
Ocs inventory. Разворачиваешь сервак, разбрасываешь клиенты, смотришь в отчеты.
Если линукс машины, можно каким-нибудь ансиблом.
Слышь чо, иди проектируй давай )
OCS Inventory и GLPI
А может кто подсказать как с этим справляется zabbix?
ocs-inventory в качестве агента, чтобы не возиться с perl'ом на венде, fusioninventory в качестве агента для линуксов.
glpi + тот же fusioninventory в качестве сервера данных и вебморды.
Кто ж без флуда проектирует? ;)
У нас (>6000 linux хостов по всей Германии) это скрипт отрабатывающий при загрузке и отправлющий данные на xml-rpc сервер, а оттуда на LDAP в таком виде, а из LDAP каждый день делается экспорт в HP SM9. На виндовых машинах, что-то похожее.
AttachedDevices: Omnidirectional Control Technology, Inc. SanDisk Corp.
BandwidthInfo: eth0: 1000Mb/s Full Duplex, Link: yes, Wake-on-lan: pumbg
BiosVersion: CMOS Battery: OK; Vendor: FUJITSU; Version: S26361-D3513-A1 ; Date: 06/12/2017
CpuInfo: cpu vendor_id: GenuineIntel cpu family: 6 cpu model: 94 cpu model name: Intel(R) Core(TM) i3-6100T CPU @ 3.20GHz cpu stepping: 3 cpu MHz: 3200.00 cpu cache size: 3072 KB cpu bogomips: 6384.00 Unbekannt
MonitorInfo: ENC S1921 99873126
OperatingSystem: openSUSE Leap 42.2
Pcibus: 00:00.0 Host bridge: Intel Corporation Skylake Host Bridge/DRAM Registers (rev 07) 00:02.0 VGA compatible controller: Intel Corporation Skylake Integrated Graphics (rev 06) 00:14.0 USB controller: Intel Corporation Device a2af 00:14.2 Signal processing controller: Intel Corporation Device a2b1 00:16.0 Communication controller: Intel Corporation Device a2ba 00:17.0 SATA controller: Intel Corporation Device a282 00:1f.0 ISA bridge: Intel Corporation Device a2c6 00:1f.2 Memory controller: Intel Corporation Device a2a1 00:1f.3 Audio device: Intel Corporation Device a2f0 00:1f.4 SMBus: Intel Corporation Device a2a3 00:1f.6 Ethernet controller: Intel Corporation Ethernet Connection (2) I219-LM
Нужно срочно провести инвентаризацю компьютеров, оргтехники, IP-шников, маршрутизаторов.
Перед тем как я это начну делать в Excel/Calc хочу узнать, существуют ли человеческие программы такого класса в OpenSource?
Рыл интернет - нашел только всякие обрезанные программы под лицензией Free под Windows.
Перемещено mono из talks
Не, это акакой-то ад и содомия. Залез на демосайт, и понял что таким поделием пользоваться невозможно. Реально, люди не понимают что такое пользовательский интерфейс.
Невозможно сделать элементарного - вернуться к списку компьютеров после просмотра свойств компьютера.
Русификации нет, формы все кривые и косые, логика интерфейса отсутствует. Для запуска нужны апач, пхп, майэскуэль. Неюзабельно.
ну, «делай в экселе», чо.. в нём ведь тоже есть агенты для автоматической инвентаризации, да? ;)
ЕМНИП, более-менее годного ничего нет.
Инвентаризация относится к учёту собственных средств предприятия и естественно с обязательной увязкой с бухгалтерией для расчёта амортизации, списания и тп. Например в 1С (упомянута потому, что она самая распространённая в стране) это дело есть, нормы инвентаризации с обновлениями учитывают изменяющееся законодательство и прекрасно увязаны с остальными компонентами бухгалтерского учёта.
Но повторюсь, инвентаризация это учёт активов компании, и отвечают за активы - материально ответственные лица. Если дело запахнет проблемой с финансами компании, то спросят за активы с материально ответственных лиц. Если хочется что-то делать для себя любимого в порыве перфекционизма, или просто потому что на предприятии бардак и ты готов отвечать за активы (или просто быть крайним, как единственное лицо проведшее инвентаризацию) - используй что хочешь, начиная от пометок в блокнотике и заканчивая LO-calc и своей наколенной базой.
p.s. для собственного удобства пометок характеристик и характеров оборудования (например, выгорел порт N на свитче XX) многие используют штатные поля комментариев к оборудованию в системах мониторинга.
Да, это ответ, почему так мало подобных программ.
bass ★★★★★ ( 11.03.13 10:33:16 )
Последнее исправление: bass 11.03.13 10:38:47 (всего исправлений: 1)
Читайте также: