Удовольствие от уборки способен получить далеко не каждый, но и жить в бардаке невозможно. Вот и CIO приходится проводить инвентаризацию нажитого за годы оборудования и софта, чтобы не столкнуться с Error Code: 418 I’m a teapot.
Да, наверное, есть компании, которые держат свои угодья в полном порядке, ведь они давно озаботились этим вопросом, изучили методологию управления активами и взяли под контроль весь жизненный цикл ИТ-инфраструктуры и всего программного обеспечения ( cout << «УТОПИЯ!» << endl;). Не будем сейчас об этих тружениках. Если вы не из их числа, предлагаем разобраться со способами оптимизации процессов управления ИТ-активами. Поговорим про SAM Services и различные методы инвентаризации, а закруглиться мы бы хотели на сводной таблице с наиболее часто используемыми нами тулами и их фичами.
Как должна была выглядеть сцена пыток Ковача. Кадр из сериала Altered Carbon / «Видоизмененный углерод»
Программа SAM Services в последнее время претерпела изменения (нынче не то, что прежде, folks). Оптимизация инфраструктуры и рабочих нагрузок, оценка рисков и угроз безопасности – теперь проекты стали более кастомизированными, с лицензионной оптимизацией или без нее. На выходе заказчик получит исчерпывающий персонализированный отчет, содержащий рекомендации и предложения по улучшению существующей инфраструктуры, а в качестве бонуса – лицензионный анализ, экономящий время и силы на то, чтобы привести активы к идеальному состоянию.
Проекты проходят в несколько этапов. Как корабль назовешь, так он и будет плавать, поэтому первостепенно определиться с целями и задачами, для чего жизненно необходимо выявить все «хотелки» и «болячки», чтобы уже со знанием дела перейти к последующему шагу – сбору данных и анализу (сюда же относится составление карты для оптимизированной среды на основе бизнес-задач). И вот мы подошли к финальному этапу, когда заказчик получает рекомендации по оптимизации инфраструктуры с юридическим, экономическим и, безусловно, техническим обоснованием.
Для обследования инфраструктуры рекомендуется использовать нижеперечисленные инструменты – если вы pro, можно несколько сразу, поскольку они отлично дополняют друг друга:

Все эти инструменты нацелены на одну ключевую задачу – обнаружить ресурс, отследить его жизненный цикл от момента приобретения и до выхода в утиль. Руками все пересчитывать не приходится, соответственно, минимизируется количество ошибок вследствие человеческого фактора, сокращаются трудозатраты на ведение инвентаризации, в общем, это очень удобно.
Один из самых доступных инструментов (совсем free of charge) для обследования инфраструктуры – MAPT. В первую очередь рассмотрим именно этого нашего любимчика – регулярно используем его в проектах «ЛАНИТ-Интеграция». Когда нужно оперативно найти и минимизировать риски в области ИБ в инфраструктуре, перевести бизнес-процессы заказчика в облако и оптимизировать существующую инфраструктуру, именно с данного решения мы всегда начинаем работы. Он свободно распространяемый и, в отличие от остальных, не требует подготовки инфраструктуры перед использованием. К сожалению, функционал MAPT позволяет только обнаруживать и собирать данные, поэтому требует установки дополнительных tools.
Кадр из сериала Altered Carbon / «Видоизмененный углерод»
В комплекте с МАРT устанавливается SQL 2008 R2 редакции Express. У Express редакции имеется ограничение в объеме БД: 10 Гб максимум. Так что если мы нацелены на исследование масштабной инфраструктуры заказчика, перед началом установки МАРT необходимо также установить SQL Server редакции Standard.
МАРT помогает нам в сборе информации об устройстве и его производительности, поддерживает Windows и некоторые версии Unix\Linux систем. Работает по типу сканера, в качестве диапазонов поиска можно задать подсеть IP-адресов, импортировать имена устройства из файла, использовать Active Directory, SCCM. Более наглядно:

На выходе МАРT позволяет сформировать нам отчеты о текущей инфраструктуре, которые также можно использовать для лицензионного анализа. Однако последнее сделать труднее, т.к. МАРT генерирует множество различных отчетов с разрозненной информацией и для сведения их в нечто удобоваримое нужно время. Для автоматизации процесса можно воспользоваться скриптом (в приложении) или выполнить SQL запрос.
В таблицах AllDevices_Assessment.HardwareInventoryCore, AllDevices_Assessment.HardwareInventoryEx, Core_Inventory.AdDiscoveredDevices, Core_Inventory.Devices, SqlServer_Assessment.SqlInstances и представлениях MAP_External_Access.InstalledProductsView собрана основная часть необходимого.
Второе место по доступности и функциональности делят SCCM, Altiris, LANDESK, которые мы решили не столько разобрать по косточкам, сколько продемонстрировать разнообразие инструментов, поэтому с нетерпением ждем ваши правки и комментарии:

Как вы можете видеть, существует целый ряд тул с огромным количеством разнообразных возможностей, но и нюансов предостаточно: одни ни в какую не работают на Debian или Oracle, другие не вполне поддерживают удаленное управление и т.д. Но, если брать среднюю температуру по больнице, то охват преимущественно одинаковый, а сами производители стараются идти в ногу со временем, перманентно дорабатывая свои решения.
Кадр из сериала Altered Carbon / «Видоизмененный углерод»
SAM-проекты с течением времени приобрели совершенно иной размах, по концепции приблизившись к всестороннему консалтингу по части оптимизации и поддержки инфраструктуры, совершенствования ИБ. Составление соотношения всего используемого ПО с фактически закупленным (лицензионный анализ) — бонус проекта. Основная цель заключается в том, чтобы заказчик по окончании проекта мог сам поддерживать идеальный порядок. В конечном итоге, ничто не идет в сравнение с чувством удовлетворения при виде идеально прибранных и управляемых угодий, где минимизированы риски всевозможных угроз и оптимизирована поддержка инфраструктуры заказчика. Welcome to the Brave New World с кастомизированностью и закрытыми IT-гештальтами.
Всем КАРМЫ, а мы с моим дорогим соавтором dnmnk пока будем ждать ваши комментарии и замечания.
Да, наверное, есть компании, которые держат свои угодья в полном порядке, ведь они давно озаботились этим вопросом, изучили методологию управления активами и взяли под контроль весь жизненный цикл ИТ-инфраструктуры и всего программного обеспечения ( cout << «УТОПИЯ!» << endl;). Не будем сейчас об этих тружениках. Если вы не из их числа, предлагаем разобраться со способами оптимизации процессов управления ИТ-активами. Поговорим про SAM Services и различные методы инвентаризации, а закруглиться мы бы хотели на сводной таблице с наиболее часто используемыми нами тулами и их фичами.

Программа SAM Services в последнее время претерпела изменения (нынче не то, что прежде, folks). Оптимизация инфраструктуры и рабочих нагрузок, оценка рисков и угроз безопасности – теперь проекты стали более кастомизированными, с лицензионной оптимизацией или без нее. На выходе заказчик получит исчерпывающий персонализированный отчет, содержащий рекомендации и предложения по улучшению существующей инфраструктуры, а в качестве бонуса – лицензионный анализ, экономящий время и силы на то, чтобы привести активы к идеальному состоянию.
Проекты проходят в несколько этапов. Как корабль назовешь, так он и будет плавать, поэтому первостепенно определиться с целями и задачами, для чего жизненно необходимо выявить все «хотелки» и «болячки», чтобы уже со знанием дела перейти к последующему шагу – сбору данных и анализу (сюда же относится составление карты для оптимизированной среды на основе бизнес-задач). И вот мы подошли к финальному этапу, когда заказчик получает рекомендации по оптимизации инфраструктуры с юридическим, экономическим и, безусловно, техническим обоснованием.
Для обследования инфраструктуры рекомендуется использовать нижеперечисленные инструменты – если вы pro, можно несколько сразу, поскольку они отлично дополняют друг друга:

- Active Directory стандартно используется для централизованного управления и хранит данные об объектах (ресурсах, службах, учетных записях пользователей и компьютеров).
- Altiris – комплексное решение для безопасного управления рабочими станциями, ноутбуками и серверами на всем протяжении их жизненного цикла, включая задачи развертывания, управления ресурсами, установки исправлений и устранения неполадок.
- Dell KACE – устройство управления высоконагруженными корпоративными системами, обеспечивает широкий функционал, сопровождение оборудования на протяжении всего жизненного цикла и масштабируемость в диапазоне от 100 до 20 000 конечных узлов.
- Intune – облачная служба для управления мобильными устройствами, мобильными приложениями и компьютерами в облачной среде.
- LANDESK – инструмент управления жизненным циклом аппаратного и программного обеспечения: от закупки до утилизации; проводит анализ инвентарной информации аппаратного и программного обеспечения на основе данных от производителей аппаратного и программного обеспечения о новых закупках, отслеживает использование программного обеспечения.
- Lansweeper – автоматизированная система инвентаризации, создания отчетов и управления парком компьютеров.
- Microsoft Assessment and Planning Toolkit (MAPT) – утилита для инвентаризации, оценки и составления отчетов о серверной инфраструктуре и рабочих станциях.
- System Center Configuration Manager (SCCM) – продукт для управления ИТ-инфраструктурой на основе Microsoft Windows и смежных устройств.
- System Center Virtual Machine Manager – централизованное управление виртуальной инфраструктурой.
- VMware vCenter – централизованное управление виртуальной инфраструктурой VMware.
Все эти инструменты нацелены на одну ключевую задачу – обнаружить ресурс, отследить его жизненный цикл от момента приобретения и до выхода в утиль. Руками все пересчитывать не приходится, соответственно, минимизируется количество ошибок вследствие человеческого фактора, сокращаются трудозатраты на ведение инвентаризации, в общем, это очень удобно.
Один из самых доступных инструментов (совсем free of charge) для обследования инфраструктуры – MAPT. В первую очередь рассмотрим именно этого нашего любимчика – регулярно используем его в проектах «ЛАНИТ-Интеграция». Когда нужно оперативно найти и минимизировать риски в области ИБ в инфраструктуре, перевести бизнес-процессы заказчика в облако и оптимизировать существующую инфраструктуру, именно с данного решения мы всегда начинаем работы. Он свободно распространяемый и, в отличие от остальных, не требует подготовки инфраструктуры перед использованием. К сожалению, функционал MAPT позволяет только обнаруживать и собирать данные, поэтому требует установки дополнительных tools.
Кадр из сериала Altered Carbon / «Видоизмененный углерод»В комплекте с МАРT устанавливается SQL 2008 R2 редакции Express. У Express редакции имеется ограничение в объеме БД: 10 Гб максимум. Так что если мы нацелены на исследование масштабной инфраструктуры заказчика, перед началом установки МАРT необходимо также установить SQL Server редакции Standard.
МАРT помогает нам в сборе информации об устройстве и его производительности, поддерживает Windows и некоторые версии Unix\Linux систем. Работает по типу сканера, в качестве диапазонов поиска можно задать подсеть IP-адресов, импортировать имена устройства из файла, использовать Active Directory, SCCM. Более наглядно:

На выходе МАРT позволяет сформировать нам отчеты о текущей инфраструктуре, которые также можно использовать для лицензионного анализа. Однако последнее сделать труднее, т.к. МАРT генерирует множество различных отчетов с разрозненной информацией и для сведения их в нечто удобоваримое нужно время. Для автоматизации процесса можно воспользоваться скриптом (в приложении) или выполнить SQL запрос.
Приложение
Данный скрипт создан для решения следующих задач:
Входные данные (отчеты из МАРТ формата xlsx):
Выходной файл содержит следующие таблицы:
Листинг:
- Подсчет процента инвентаризированных устройств;
- Подсчет количества развертываний клиентских ОС и офисных продуктов;
- Формирование таблицы с полученными данными в csv файл.
Входные данные (отчеты из МАРТ формата xlsx):
- По устройствам AD (ActiveDevicesUsageTracker);
- По офисным продуктам (Office)
Выходной файл содержит следующие таблицы:
- Клиентские операционные системы (ОС);
- Microsoft Office;
- Microsoft Visio;
- Microsoft Project;
Листинг:
$path = "C:\Users\Administrator\Desktop" ################# Общее ####################### $i = $null $j = $null $k = $null [array]$OutputInfoAboutInventMAPT = "Computer Name" + "`t" + "Operating System" + "`t" + "Type" + "`t" + "WMI Status" + "`t" + "Virtual (Y/N)" + "`t" + "Days Since Last Activity" #активные устройства собран МАРТ [array]$AllActive = "Computer Name" + "`t" + "Operating System" + "`t" + "Type" + "`t" + "WMI Status" + "`t" + "Virtual (Y/N)" + "`t" + "Days Since Last Activity" #активные устройства со всеми ОС [array]$AllActiveClient = $null #активные устройства с клиентской ОС [array]$InventPC_NoStatistik = $null $objExcel = New-Object -ComObject Excel.Application $WorkBook = $objExcel.Workbooks.Open($path + "\AD.xlsx") $objExcel.visible = $false $WorkSheetMapt = $WorkBook.sheets.item("Device Details") $MaptInventPC = $WorkSheetMapt.Range("A:A").value2 -ne $null $OS = $WorkSheetMapt.Range("C:C").value2 -ne $null $Type = $WorkSheetMapt.Range("D:D").value2 -ne $null $WMIStatus = $WorkSheetMapt.Range("F:F").value2 -ne $null $ActiveDay = $WorkSheetMapt.Range("J:J").value2 -ne $null for ($i = 0; $i -le $MaptInventPC.count; $i++) { if (($ActiveDay[$i] -le 90) -and ($WMIStatus[$i] -eq "Success")) { $OutputInfoAboutInventMAPT += $MaptInventPC[$i] + "`t" + $OS[$i] + "`t" + $Type[$i] + "`t" + $WMIStatus[$i] + "`t" + $ActiveDay[$i] } } $AllSuccess = $OutputInfoAboutInventMAPT[1..$OutputInfoAboutInventMAPT.Count] for ($i = 0; $i -le $MaptInventPC.count; $i++) { if ($ActiveDay[$i] -le 90) { $AllActive += $MaptInventPC[$i] + "`t" + $OS[$i] + "`t" + $Type[$i] + "`t" + $WMIStatus[$i] + "`t" + $ActiveDay[$i] } } $ProcentInventPC = $AllSuccess.count * 100 / $AllActive.count "Всего обнаружено активных устройст" + "`t" + $AllActive.count >> "C:\Users\Administrator\Desktop\Info.csv" "Всего инвентаризировано активных устройств" + "`t" + $AllSuccess.Count >> "C:\Users\Administrator\Desktop\Info.csv" "% инвентаризации" + "`t" + $ProcentInventPC >> "C:\Users\Administrator\Desktop\Info.csv" ################### Таблица с клиентскими ОС ################################### for ($i = 0; $i -le $MaptInventPC.count; $i++) { if (($ActiveDay[$i] -le 90) -and ($Type[$i] -eq "Client")) { $AllActiveClient += $OS[$i] } } $CountActiveClient = $AllActiveClient | Group-Object | Select-Object -Property Name, Count "Семейство продуктов" + "`t" + "Всего развертываний ПО" >> "C:\Users\Administrator\Desktop\Info.csv" for ($i=0; $i -le $CountActiveClient.count; $i++) { $CountActiveClient[$i].name + "`t" + $CountActiveClient[$i].count >> "C:\Users\Administrator\Desktop\Info.csv" } $WorkBook.Close() ################## MS Office ########################### [array]$visio = $null [array]$project = $null $WorkBookOffice = $objExcel.Workbooks.Open($path + "\Office.xlsx") $objExcel.visible = $false # на экране не отображается $WorkSheetOffice = $WorkBookOffice.sheets.item("Office2016Assessment") $WorkSheetApp = $WorkBookOffice.sheets.item("OfficeAppSummary") $NameOfficeSuite = $WorkSheetOffice.Range("G:G").value2 -ne $null $AppName = $WorkSheetApp.Range("A:A").value2 -ne $null $AppNumInstallCopie = $WorkSheetApp.Range("D:D").value2 -ne $null "`n" + "`n" + "`n" + "`n" + "MS Office" + "`n" + "Название" + "`t" + "Количество" >> "C:\Users\Administrator\Desktop\Info.csv" $CountOfficeSuite = $NameOfficeSuite| Group-Object | Select-Object -Property Name, Count for ($i=0; $i -le $CountOfficeSuite.count; $i++) { $CountOfficeSuite[$i].name + "`t" + $CountOfficeSuite[$i].count >> "C:\Users\Administrator\Desktop\Info.csv" } ################# Visio ############################# for ($i = 0; $i -le $AppName.count; $i++) { if (($AppName[$i] -like "*visio*" ) -and ($AppName[$i] -notlike "*viewer*")) { $visio += $AppName[$i] + "`t" + $AppNumInstallCopie[$i-1] } } "`n" + "`n" + "Visio" + "`n" + "Семейство продуктов" + "`t" + "Всего развертываний ПО" >> "C:\Users\Administrator\Desktop\Info.csv" for ($i=0; $i -le $visio.count; $i++) { $visio[$i] >> "C:\Users\Administrator\Desktop\Info.csv" } ###################### Project ###################### for ($i = 0; $i -le $AppName.count; $i++) { if (($AppName[$i] -like "*project*" ) -and ($AppName[$i] -notlike "*viewer*")) { $project += $AppName[$i] + "`t" + $AppNumInstallCopie[$i-1] } } "`n" + "`n" + "Project" + "`n" + "Семейство продуктов" + "`t" + "Всего развертываний ПО" >> "C:\Users\Administrator\Desktop\Info.csv" for ($i=0; $i -le $project.count; $i++) { $project[$i] >> "C:\Users\Administrator\Desktop\Info.csv" }
В таблицах AllDevices_Assessment.HardwareInventoryCore, AllDevices_Assessment.HardwareInventoryEx, Core_Inventory.AdDiscoveredDevices, Core_Inventory.Devices, SqlServer_Assessment.SqlInstances и представлениях MAP_External_Access.InstalledProductsView собрана основная часть необходимого.
Второе место по доступности и функциональности делят SCCM, Altiris, LANDESK, которые мы решили не столько разобрать по косточкам, сколько продемонстрировать разнообразие инструментов, поэтому с нетерпением ждем ваши правки и комментарии:

Как вы можете видеть, существует целый ряд тул с огромным количеством разнообразных возможностей, но и нюансов предостаточно: одни ни в какую не работают на Debian или Oracle, другие не вполне поддерживают удаленное управление и т.д. Но, если брать среднюю температуру по больнице, то охват преимущественно одинаковый, а сами производители стараются идти в ногу со временем, перманентно дорабатывая свои решения.

SAM-проекты с течением времени приобрели совершенно иной размах, по концепции приблизившись к всестороннему консалтингу по части оптимизации и поддержки инфраструктуры, совершенствования ИБ. Составление соотношения всего используемого ПО с фактически закупленным (лицензионный анализ) — бонус проекта. Основная цель заключается в том, чтобы заказчик по окончании проекта мог сам поддерживать идеальный порядок. В конечном итоге, ничто не идет в сравнение с чувством удовлетворения при виде идеально прибранных и управляемых угодий, где минимизированы риски всевозможных угроз и оптимизирована поддержка инфраструктуры заказчика. Welcome to the Brave New World с кастомизированностью и закрытыми IT-гештальтами.
Всем КАРМЫ, а мы с моим дорогим соавтором dnmnk пока будем ждать ваши комментарии и замечания.
