fusion inventory для чего

Небольшие полезности для связки GLPI+FusionInventory

Сколько копий было сломано об эту связку — не счесть. Форум обоих продуктов ломится от вопросов. Но вот ответов, как и вопросов, подобным моим, я там не нашел. Ну или по крайней мере внятных ответов на них.

Все дальнейшие телодвижения осуществлялись на следующей конфигурации: виртуальная машина KVM, 1Gb ОЗУ, 10 GB HDD, Debian 7, GLPI 0.85.4, FusionInventory Plugin 1.2

С первым вопросом все оказалось достаточно просто. Все значения хранятся в MySQL, так что оставалось лишь найти все зависимости и проверить, не ломает ли прямая запись в базу какой либо учет внутри GLPI.

По итогу, получился вот такой вот скрипт (Осторожно: Быдлокод!):

Неделя тестов показала, что учет ведется верно, ничего не ломается и скрипт был натравлен на рабочий GLPI. Результатом явиласть вот такая картина:

Странно, что картридж повышенной емкости отпечатал на 100 страниц больше. А я думал, мне только казалось, что меняются они с приблизительно одинаковым интервалом. Но это уже вопросы к тем, кто их заправляет.

Второй же вопрос поставил мою лень в тупик. Либо пересобирать thinstation, что тянет за собой очередные головные боли с rdesktop, freerdp, звуком и модулями, либо максимально кастрировать perl, ибо fusioninventory-agent написан целиком и полностью на нем, и собирать свой модуль.

Собственно, победил второй вариант, так как лишний раз утяжелять сборку не хотелось, а инвентаризация — дело не требующее повседневности, раз в неделю запустил и нормально.

За пару дней неспешного копания агента, были выянены необходимые (ну и собственно штатные) утилиты для инвентаризации железа: lspci, lsusb, fdisk, arch, dmidecode, get-edid, ifconfig, parse-edid и прочие. Вот тут был выявлен первый подводный камень: lspci, fdisk и многие другие утилиты в Thinstation — всего лишь алиасы к busybox и с необходимыми ключами, естественно, не работают.

Вторым подводным камнем было определение архитектуры. Почему-то агент получал значение linux-thread-multi и дальше все стопорилось, поскольку обработка такой архитектуры не предусмотрена. Пришлось ставить костыль в Agent/Task/Inventory/Linux/i386.pm:

Остальные камни были из серии «нужная утилита работает не так, значения не возвращает, поэтому инвентаризировать не будем». Для исправления пришлось заталкивать в сборку lspci, lsusb, fdisk, arch, dmidecode, get-edid, parse-edid и менять в скриптах агента пути к этим утилитам. Странно, но почти все пути были прописаны как абсолютные. Ну да это уже дело разработчиков.

Исполняемый скрипт, запускающий агента, получился вот таким:

Скрипт запускается кроном, два раза в день инвентаризации. День инвентаризации выбирается самостоятельно. У меня — каждый понедельник.
Первая рабочая сборка модуля родилась большой по размеру — 13 мб. Но зато работала. И работала на ура.




В результате «доработки напильником» размер модуля уменьшился до 5.1 мб. Больше выкидывать просто нечего.

Источник

Инвентаризация серверов без отвращения

Хочу поделиться история одного успешного проекта по созданию системы инвентаризации серверов. История будет полезна тем кто хочет наконец то навести порядок в своём серверном хозяйстве и ищет реальные примеры с ответами на вопросы.

Предистория

Наверное не нужно объяснять как важно иметь в оперативном доступе актуальную информацию про подопечный зоопарк техники. Особенно это становится важно когда количество начинает переваливает за сотню. Наверняка все проходят через exel файлик с необходимыми полями. С такой же вероятностью у всех возникало чувство отвращения от этого метода при забивании или модифицировании десятка строк.

Проработав в одном сотовом операторе где количество серверов исчислялось 4-х значными числами и оценив прелести используемой там самописной системы для инвентаризации, я озадачился поиском подобного для моего нового работодателя. Подсказку кинул блог Badoo на хабре.

Читайте также:  радио маруся какая волна в липецке

В одной статье было упоминание про использования связки FusionInventory + GLPI для сбора информации по устанавливаемым серверам. В связи с большим уважением к остальным применяемым в статье технологиям я решил опробовать эту в нашей среде.

Реализация
Поверхностный тюнинг

Суровое наследство GLPI как helpdesk инструмента придётся вырезать залезая в код. Моих навыков в PHP на котором написана система хватает на интуитивное пониманием кода, но несмотря на это можно сделать достаточно много. Сперва рекомендую поправить локализацию для того чтобы элементы инвентаризации назывались не компьютерами, а серверами. Вроде не особо значимый пункт, но помогает в правильном позиционировании продукта внутри компании.

Файл с русской локализации по умолчанию хранится здесь: /usr/share/glpi/locales/ru_RU.php. Сделайте бэкап и смело правьте названия.

Следом рекомендую сменить страницу по умолчанию на список серверов. Это сократит на пару кликов доступ к самой востребованной информации и уберёт лишние вопросы:

При удачной компановке переносами оставшихся полей получаем подобную форму:

Советую создать шаблоны с предварительно заданными полями для уменьшения отвращения от заполнения инвентаризации.

Hint 1: Добавив пару строк в эту же функцию можно получить удобную ссылку на элемент в системе мониторинга nagios в котором есть обратная ссылка в инвентаризацию (см скриншот выше):

Hint 2: Переименовав неиспользуемое нашей командой поле «инвентарный номер» в «адрес консоли» и сменив тип на url получили возможность прямо из списка серверов перейти на SP консоль. Помогает оперативно решать проблемы со сбойным сервером.

Так же дабы не отвлекать наших администраторов лишними элементами рекомендую закомментировать данные вкладки в том же файле (часть из них может быть убрана зарезанием прав через профиль):

Сбор данных

Для того чтобы не вбивать информацию по компонентам воспользовались плагином FusionInventory. Очень хорошая статья по его установке уже есть на хабре. Могу лишь добавить от себя что было изменено в нашем случае.

В настройках плагина FusionInventory отключаем сбор той информации которая вам не нужна.

Hint: результат работы агента можно выгрузить в файл, а потом импортировать в GLPI. Данный механизм создаёт идиальный API для автоматической загрузки любых данных. Мы реализовали на этой возможности импорт данных по виртуальным машинам из нашей фермы VMware.
У плагина FusionInventory для данных задач есть свой инструмент, но он добавляет компоненты к серверу, вместо создания полноценного элементы списка серверов. Что не так удобно. В последней версии вышедшей пару месяцев назад появился выбор, создавать элемент для виртуалок или компонент к ESXi серверу.

Отслеживаем внешние заявки

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

Решение заложено в GLPI — заявки, но в данном случае они подразумевают заявку наружу, а не внутрь ИТ команды. Для упрощения процедуры заявок было сделано аналогичное урезание функционала:

Получаем список открытых или закрытых тикетов:

Дополнение

Собственно на этом всё. Если у читателей появится интерес к дополнениям и тому как мы их используем я напишу отдельную статью про имплементацию данных плагинов, но для понимания как это выглядит кидаю скриншоты:
Кастомные элементы — storages

ИТ сервисы

Стойки

Источник

Установка и настройка GLPI и FusionInventory, инвентаризация ИТ инфраструктуры

В этой статье мы рассмотрим пошаговую установку и настройку GLPI. GLPI (Gestionnaire Libre de Parc Informatique — франц.) – это полноценная open-source ITSM система для управления процессами, инвентаризации оборудования и софта, а также для управления заявками и инцидентами. GLPI это большой комбайн, в котором заложено большое количество функционала по управлению ИТ на предприятии. Некоторые из возможностей GLPI:

Читайте также:  при какой температуре перевозят яблоки

Установка и настройка стека 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:

Скачайте и распакуйте дистрибутив 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 в веб директорию:

Создайте файл виртуал хоста:

И вставляем следующую конфигурацию Virtual Host:

a2ensite glpi
service apache2 reload

Проверьте, что виртуалхост активен.

Перед вами должно появится окно веб-установщика GLPI.

Установка GLPI

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

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

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

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

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

Базовая настройка GLPI

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

Обзор интерфейса GLPI

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

Вкладка Assets

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

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

Вкладка Assistance

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

Вкладка Management

Также относится к инвентаризации – можно вести бюджет, учитывать лицензии, поставщиков и т.д.

Вкладка Tools

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

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

Вкладка Administration

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

Вкладка Setup

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

Плагин FusionInventory — автоматическая инвентаризация серверов и компьютеров

Рассмотрим одно из применений GLPI в реальной жизни – обнаружение устройств в сети и автоматическое заполнение инвентаризационных данных по оборудованию и установленным программам.

В GLPI не предусмотрено автоматическое обнаружение, но с этим может помочь плагин FusionInventory.

Установка Fusion Inventory

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

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

Установка 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

Рассмотрим основные параметры уставки

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

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

Читайте также:  цвз дэп 2 степени что это такое

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

Установка 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

В конфигурационном файле агента (/etc/fusioninventory/agent.cfg) измените следующие параметры:

systemctl restart fusioninventory-agent

Если всё сделано правильно, вы увидите ваш Ubuntu компьютер/сервер в Assets-> Computers.

Статистика и отчеты в GLPI

В GLPI есть встроенные отчеты.

Но скорее всего вам потребуются отчеты по собственным параметрам. Для этого в GLPI есть плагины:

Пример встроенного отчета из плагина Reports:

GLPI развивается более 15 лет и содержит в себе огромное количество возможностей для управления ИТ инфраструктуры, а сообщество развивает и поддерживает плагины для различных интеграций и функционала. Система имеет огромные возможности модификации своих элементов, поэтому каждая компания настраивает GLPI под себя.

Источник

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 — кодировка по умолчанию в UTF-8, нет необходимости в промежуточном сервере (сбор напрямую в плагине GLPI). Нет необходимости в отслеживании синхронизации баз OCSа и GLPI.

Установщик FusionInventory Agent

Программу FusionInventory не рекомендуется удалять без необходимости.

Добавить комментарий Отменить ответ

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.

Источник

Fusioninventory

FusionInventory действует как шлюз и собирает информацию от агентов. Он создаёт и обновляет информацию в GLPI с минимальными усилиями администратора. На данный момент поддерживается такой список устройств:
компьютеры, сетевые устройства, принтеры, виртуальные машины, телефоны на Андроиде.

FusionInventory поддерживает различные механизмы виртуализации.

VMware VCENTER / ESX / ESXi
Virtualbox
Libvirt
Xen
OpenVZ / Virtuozzo
Parallels
LXC
FreeBSD Тюрьмы
HPVM
Vserver
Hyper-V

Вы можете использовать FusionInventory для установки, обновления или удаления программного обеспечения. Вы также можете нажать сценарии администрирования. FusionInventory предназначен, чтобы заботиться о пропускной способности сети.

Wake On LAN Агент может отправить Wake On LAN порядка в своей локальной сети. Используя плагин GLPI, вы можете планировать, когда компьютеры должны пробудиться и из которого агента.

Два из этих задач включены в распределение агента источника, локальной инвентаризации и Wake On LAN. Другие задачи распределены раздельно, за исключением для бинарных распределений, где они собраны вместе.

GLPI является информационным ресурс-менеджером с дополнительным интерфейсом администрирования.

Лицензия:
GPL2


Язык программирования:
Perl
Сайт проекта
Скачать Fusioninventory

Источник

Сказочный портал